Vezető betét tippeket és trükköket sql szerver - SQL programozás

SQL Server támogatja a platform utasításokat INSERT több ANSI szabvány kiterjesztéseket. Támogatja több funkciót dolgozni készlet tételek (lentebb), valamint a képesség, hogy beágyazza az eredményeket a tárolt eljárások és a kiterjesztett eljárások közvetlenül a céltáblát. A szintaxis a INSERT utasítás az SQL Server következő.

INSERT [INTO] tbl_name [(column1 [, ...])

ÉRTÉKEK (változó 1 [, ...]) |

INSERT [INTO] tábla_neve

A cél az lenne, hogy helyezzen be egy tábla, nézet vagy függvény, amely együttműködik adathalmazok (sorhalmaz funkciók). Amikor behelyezi a képbe INSERT utasítás nem érinti több, mint egy táblához bemutatása, ha több. Funkciók adathalmazok lehetővé SQL Server adatokat fogadni a különleges vagy külső forrásból, például XML folyamok, a fájl szerkezete teljes szöveges keresés (speciális struktúrák, amelyek használják a SQL Server tárolásra az adatbázisban olyan dolgok ezek, mint a Microsoft Word dokumentumok és MS PowerPoint prezentáció ) és a külső adatforrások (például a Microsoft Excel-táblázatok). Példák kapnak később ebben a fejezetben. Jelenleg az SQL Server támogatja az INSERT utasítás az alábbi funkciók dolgozó készletek.

Elvégzett egy INSERT utasítás tranzit a kapcsolódó kiszolgáló. Ez egy hatékony módja annak, hogy hajtsa végre a beágyazott INSERT külső SQL Server adatforrás. Az adatforrást először be kell deklarálni kapcsolódó kiszolgáló.

Futó tranzit INSERT utasítás egy külső adatforrást. Ez a javaslat hasonló OPENDATASOURCE, kivéve, hogy OPENDATASOURCE ajánlat kizárólag egy adatforrást, de nem küldi el az INSERT utasítással. OPENROWSET javaslat célja csak a ritka, különleges használatra.

Azt jelzi, egy vagy több oszlopot a céltáblát. A listát kell zárójelek közé, és az elemeket kell vesszővel elválasztva.

PostgreSQL platform megpróbálja végrehajtani egy automata típusú átalakítás, ha a kifejezés értékében záradéka allekérdezés vagy a tételek listáját nem esik egybe az adattípusok meghatározott cél tábla vagy nézet, automatikusan beilleszti az értékeket oszlopok ADATOK, TIMESTAMP, és az oszlopok DEFAULT korlátok.

Utasítás létrehoz egy új vonal, felhasználva minden alapértelmezett értékeket meghatározni az asztalra.

-SQL, dinamikus utasítás végrehajtásra került, a tárolt eljárást, RPC (Remote Procedure Call, RPC) vagy kiterjesztett tárolt eljárást, és az eredményeket tárolja a helyi asztalra. eljárás_neve - a neve kívánt eljárás elvégzésére. Azt is használja a paramétereket a tárolt eljárás paraméter van megadva @ (@ jel kötelező) értékeket rendelni a paramétereket, és ha szükséges, hogy azonosítsák a paramétert kimenet (OUTPUT). Az oszlopok visszaadott eredményhalmaz meg kell egyeznie a típusát oszlopainak a céltáblát.

Bár az SQL Server automatikusan értékeket rendel oszlopok ADATOK időbélyeggel, a platform nem csinálni UniqueIdentifier oszlopokat. Bármelyik oszlopot az első típusú adatok, kihagyhatja az értékek listája az oszlop listán, de nem hagyja oszlopok UniqueIdentifier. Generálása és illessze globálisan egyedi azonosítót (GUID), akkor kell használni NEWIDQ funkciót.

INSERT INTO guid_sample (globális_ID, sample_text, sample_int)

VALUES (NEWID (), 'helyezze első lemeze', '10000')

Amikor portolása a kód egyik platform megjegyezni, hogy helyezzen be egy üres sort a szöveg oszlopainak és VARCHAR SQL Server eredményez egy sor nulla hosszúságú. Ez nem ugyanaz, mint a NULL értéket, hiszen értelmezni néhány platformon.

Az INSERT példákat ... EXEC, alább megadott, először hozzon létre egy ideiglenes táblát #ins_exec_container. Ezt követően a behelyezés művelet beolvassa az elemek listáját a C: temp és eltárolja egy ideiglenes táblát, és a második utasítás végzi dinamikus INSERT SELECT.

CREATE TABLE #ins_exec_container (result_text

VARCHAR (300) NULL) GO

INSERT INTO #ins_exec_container

EXEC master.xp_cmdshell 'dir c: temp'

INSERT INTO értékesítés

Ez a funkció nagyon hasznos lehet a tárolt eljárások, például, ha azt szeretnénk, hogy végre az üzleti logikát használja-SQL tárolt eljárások állapotának megállapítása tárgyak az adatbázisban, és azon kívül, majd hajtson végre valamilyen alapján ezeket az eredményeket.

Platform SQL Server lehetővé teszi, hogy optimalizáló tippeket kap körül az alapértelmezett optimalizálási stratégia INSERT. Ez a fajta beállítás Javasoljuk, hogy csak a legképzettebb felhasználók. Minden információ, hogy milyen tippeket lehet használni az INSERT utasítással tartalmazza doku-tása termelőtől.

További információ

A szabályok és eljárások a GRANT utasítás az adatbázisokban az SQL Server platform

Módszerek és technikák a DELETE utasítással az adatbázisokban az SQL Server platform

Néhány tipp és technika az INSERT utasítás az adatbázisokban a MySQL platform

Módszerek és technikák alkalmazásával DROP utasítás egy adatbázist az SQL Server platform

Kapcsolódó cikkek