Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Erstellen einer Tabelle mit expliziter create table-Anweisung im Vergleich zu select into

CREATE TABLE gibt Ihnen eine bessere Kontrolle über die Definition Ihrer Tabelle vor dem Einfügen der Daten, wie NOT NULL , Einschränkungen usw. Dinge, die Sie mit SELECT INTO nicht tun können .

SELECT INTO ist eine minimal protokollierte Operation, aber INSERT..SELECT kann unter bestimmten Bedingungen auch minimal protokolliert werden.
Siehe Leitfaden zur Leistung beim Laden von Daten , insbesondere der Abschnitt:Zusammenfassung der minimalen Protokollierungsbedingungen .

Kurz gesagt, wenn Sie sich nicht um die Einschränkungen usw. kümmern (z. B. wenn Sie schnell eine Kopie einer Tabelle erstellen möchten), ist der Vorteil von SELECT..INTO IMHO ist ein kürzerer Code.
Andernfalls sollten Sie den anderen Weg verwenden, und Sie könnten ihn immer noch minimal protokollieren lassen.