Megosztás a következőn keresztül:


Database DevOps (előzetes verzió) az SQL Server Management Studióban

Az SQL-adatbázisprojektek olyan SQL-objektumok helyi ábrázolása, amelyek egyetlen adatbázis sémáját alkotják, például táblákat, tárolt eljárásokat vagy függvényeket. Az SQL-adatbázisprojektek fejlesztési ciklusa segít integrálni az adatbázis-fejlesztést a folyamatos integrációs és folyamatos üzembe helyezési (CI/CD) munkafolyamatokba, amelyek a fejlesztési ajánlott eljárásoknak is ismerősek. Az SSMS-ben előzetes verzióban projekteket használhat Microsoft.Build.Sql az adatbázis-módosítások implementálásához, kezeléséhez és együttműködéséhez az adatbázis-objektumok helyi definíciójának megadásával.

Ez a cikk azt ismerteti, hogyan használhatók sql-adatbázisprojektek az SQL Server Management Studióban (SSMS) az adatbázis devOps-munkafolyamatainak részeként vagy rögzítésekor. Az SQL-adatbázisprojektekről további információt az SQL Database-projektekben talál.

Előfeltételek

Új projekt létrehozása

Az SQL Database-projektek SSMS-ben való használatához egy helyi mappára van szükség, amely tartalmazza a projektfájlokat. A projekteket úgy indíthatja el, hogy objektumokat nyer ki egy meglévő adatbázisból, vagy új objektumfájlokat hoz létre az alapoktól.

Képernyőkép az SQL Server Management Studióban az Új projekt párbeszédpanelről.

Megjegyzés:

Előfordulhat, hogy az SSMS arra kéri, hogy csatlakozzon egy kiszolgálóhoz, amikor megnyit egy fájlt a Megoldáskezelőből. Az SQL Database-projektfejlesztés offline módban is elvégezhető anélkül, hogy adatbázishoz csatlakozik.

Objektumok hozzáadása meglévő adatbázisból

Az SqlPackage használatával kinyerheti a sémát egy meglévő adatbázisból az objektumtípus szerint rendezett különálló .sql fájlokba. Futtassa a következő parancsot egy mappastruktúra adatbázis-objektumokkal való létrehozásához:

sqlpackage /Action:Extract /SourceConnectionString:"<connection-string>" /TargetFile:"<temp-folder>" /p:ExtractTarget=SchemaObjectType

A /p:ExtractTarget=SchemaObjectType paraméter a kinyert fájlokat séma- és objektumtípus (például dbo/Tables, ) dbo/StoredProceduresalapján almappákba rendezi. Bontsa ki a projektkönyvtáron kívüli ideiglenes mappába, majd a Windows Intézővel másolja a kívánt tartalmat a projektmappába.

További információ az SqlPackage-kivonat beállításairól: SqlPackage extract.

Új objektumok létrehozása

Adjon hozzá új adatbázis-objektumokat a projekthez, ha fájlokat hoz létre .sql a projektmappában. Minden fájlnak egyetlen CREATE utasítást kell tartalmaznia egy adatbázis-objektumhoz. Például egy tábladefiníció:

CREATE TABLE [dbo].[Products]
(
    [ProductId] INT NOT NULL PRIMARY KEY,
    [ProductName] NVARCHAR (100) NOT NULL,
    [Price] DECIMAL (10, 2) NOT NULL
);

A fájlok rendszerezése a séma és az objektumtípus szerint almappák használatával, például dbo/Tables vagy Sales/StoredProcedures. Ez a struktúra megfelel az SqlPackage-kivonat kimenetének, és megkönnyíti az objektumok megkeresését a projekt növekedésével. Az SQL-projekt összeállítási folyamata alapértelmezés szerint a projektmappában és annak almappáiban lévő összes .sql fájlt tartalmazza.

Az SSMS sablonokat biztosít a gyakori elemekhez, amelyek segítenek az első lépésekben. Új elem hozzáadásához kattintson a jobb gombbal a projektre a Megoldáskezelőben, válassza azÚj elem> lehetőséget, és válasszon az SQL-objektumsablonok listájából.

Meglévő projektek megnyitása

Ha meg szeretne nyitni egy meglévő SQL-adatbázisprojektet az SSMS-ben, válassza a Fájl>megnyitása>projekt/megoldás lehetőséget, és lépjen a .sqlproj fájlra.

Fontos

Az SSMS csak SDK-stílusú Microsoft.Build.Sql projekteket támogat. A minimális támogatott SDK-verzió a 2.1.0. Ha egy eredeti SQL-projektet hozott létre a Visual Studióban, a megnyitás előtt SDK-stílusú formátumba kell konvertálnia.

Az eredeti SQL-projektek SDK-stílusú formátumra való konvertálásával kapcsolatos útmutatásért lásd : Eredeti SQL-projekt átalakítása SDK-stílusú projektté.

Projektek létrehozása és módosítások üzembe helyezése

Az SQL-projekt munkafolyamata két fő lépésből áll: a projekt létrehozása a séma ellenőrzéséhez és fordításához, valamint a lefordított kimenet üzembe helyezése egy céladatbázisban.

Projekt összeállítása

Az SQL-projekt létrehozása ellenőrzi az objektumok közötti kapcsolatokat, és ellenőrzi a T-SQL szintaxisát a megadott célplatformon. A buildelési folyamat létrehoz egy .dacpac fájlt, amely az adatbázisséma lefordított modelljét tartalmazza.

Ha SSMS-ben szeretne projektet létrehozni, kattintson a jobb gombbal a projektre a Megoldáskezelőben, és válassza a Build lehetőséget.

Képernyőkép a Megoldáskezelőről az SQL-projekt buildelési lehetőségével.

A build kimenete megjeleníti az esetleges hibákat vagy figyelmeztetéseket. A hibák olyan problémákat jeleznek, amelyek megakadályozzák az üzembe helyezést, például egy nem létező táblára hivatkozó nézetet. A figyelmeztetések olyan lehetséges problémákat emelnek ki, mint például az objektumnevek inkonzisztens burkolata.

Sikeres buildelés esetén a .dacpac fájl a bin\Debug projektkönyvtárban található mappában jön létre.

A buildelési problémák elhárításáról további információt az SQL-projekt buildelési hibáinak hibaelhárítása című témakörben talál.

Módosítások üzembe helyezése

A projekt létrehozása után helyezze üzembe a .dacpac céladatbázist az SSMS Közzététel párbeszédpaneljén. Az üzembe helyezési folyamat összehasonlítja a .dacpac céladatbázist, és létrehozza az adatbázis és a projekt szinkronizálásához szükséges CREATEutasításokatALTERDROP.

Az üzembe helyezéshez kattintson a jobb gombbal a projektre a Megoldáskezelőben, és válassza a Közzététel lehetőséget. A Közzététel párbeszédpanelen konfigurálja a céladatbázis-kapcsolatot, és válassza a Közzététel lehetőséget a módosítások alkalmazásához, vagy a Szkript létrehozása lehetőséget az üzembehelyezési szkript végrehajtás előtti áttekintéséhez.

Képernyőkép az SQL Database-projektmódosítások üzembe helyezését szolgáló Közzététel párbeszédpanelről.

A közzétételi folyamat idempotens, így ugyanazt .dacpac többször is üzembe helyezheti anélkül, hogy problémákat okoz. Ez a megközelítés lehetővé teszi több környezetben (fejlesztés, előkészítés, éles környezet) való üzembe helyezést ugyanazzal a lefordított összetevővel.

Az üzembe helyezési lehetőségekről és a konfigurációról további információt az SQL Database-projektek használatának első lépéseiben talál.