Udostępnij za pośrednictwem


Wstawianie wierszy za pomocą SELECT INTO

Instrukcja SELECT INTO tworzy nową tabela i zapełniany zestaw wyników instrukcji SELECT.SELECT INTO można łączyć dane z kilku tabel lub widoków w jednej tabela.Może również służyć za utworzyć nową tabela zawierającą dane z serwer połączony.

Atrybuty wyrażenia na liście wybierz określa strukturę nowej tabela.Poniższy przykład tworzy tabela dbo.EmployeeAddresses , wybierając siedem kolumn z różnych pracowników i związanych z adresem tabel.

USE AdventureWorks2008R2;
GO
SELECT c.FirstName, c.LastName, e.JobTitle, a.AddressLine1, a.City, 
    sp.Name AS [State/Province], a.PostalCode
INTO dbo.EmployeeAddresses
FROM Person.Person AS c
    JOIN HumanResources.Employee AS e 
    ON e.BusinessEntityID = c.BusinessEntityID
    JOIN Person.BusinessEntityAddress AS bea
    ON e.BusinessEntityID = bea.BusinessEntityID
    JOIN Person.Address AS a
    ON bea.AddressID = a.AddressID
    JOIN Person.StateProvince as sp 
    ON sp.StateProvinceID = a.StateProvinceID;
GO

Nie można używać do tworzenia tabela podzielonym na partycje SELECT INTO nawet wtedy, gdy źródło tabela jest podzielony na partycje.SELECT INTO nie używać partycji schematu źródło tabela.Zamiast tworzenia nowej tabela w domyślnym grupa plików.Aby wstawić wiersze do tabela partycjonowana, należy najpierw utworzyć tabela partycjonowana , a następnie użyć INSERT INTO...Wybierz z instrukcja.

Atrybut FILESTREAM nie przetransferuje podczas tworzenia nowej tabela przy użyciu instrukcja SELECT INTO.Liczba bloków BLOB FILESTREAM są kopiowane i przechowywane w nowej tabela jako varbinary(max) bloków BLOB.Jeśli FILESTREAM BLOB przekracza 2 GB, wywoływane jest następujący komunikat o błędzie i zatrzymane instrukcja: "Próba rosnąć LOB poza maksymalny dozwolony rozmiar 2147483647 bajtów."