sql >> Database >  >> RDS >> Sqlserver

INSERT INTO vs SELECT INTO

  1. Ze doen verschillende dingen. Gebruik INSERT wanneer de tafel bestaat. Gebruik SELECT INTO wanneer dat niet het geval is.

  2. Ja. INSERT zonder tabelhints wordt normaal gelogd. SELECT INTO wordt minimaal gelogd, ervan uitgaande dat de juiste traceervlaggen zijn ingesteld.

  3. In mijn ervaring SELECT INTO wordt het meest gebruikt met tussenliggende datasets, zoals #temp tabellen, of om een ​​hele tabel te kopiëren, zoals voor een back-up. INSERT INTO wordt gebruikt wanneer u invoegt in een bestaande tabel met een bekende structuur.

BEWERKEN

Om uw bewerking aan te pakken, doen ze verschillende dingen. Als je een tabel aan het maken bent en de structuur wilt definiëren, gebruik dan CREATE TABLE en INSERT . Voorbeeld van een probleem dat kan worden gemaakt:U hebt een kleine tabel met een varchar-veld. De grootste string in je tabel is nu 12 bytes. Uw echte dataset heeft maximaal 200 bytes nodig. Als je SELECT INTO . doet van je kleine tafel om een ​​nieuwe te maken, de latere INSERT zal mislukken met een afkapfout omdat uw velden te klein zijn.



  1. PRINT-instructie in T-SQL

  2. Herstelmodel voor SQL Server-wijziging

  3. Hoe maak en bevraag ik gekoppelde databaseservers in SQL Server?

  4. Hoe ROUND() werkt in MariaDB