sql >> Database teknologi >  >> RDS >> Sqlserver

11 måder at hente en primær nøgle i SQL Server (T-SQL eksempler)

Der er ofte mange måder at gøre det samme (eller lignende) i SQL Server. Hentning af alle primære nøgler fra en database (eller endda kun den primære nøgle for en given tabel) er et eksempel på det.

Denne artikel præsenterer elleve forskellige tilgange til at hente primær nøgleinformation i SQL Server.

Nogle af disse vil være mere nyttige end andre, afhængigt af din nøjagtige situation.

Eksempel 1 – Sp_pkeys systemlagrede procedure

Hvis du kun vil have den primære nøgle til en given tabel, er sp_pkeys Systemlagret procedure er sandsynligvis den hurtigste og nemmeste måde at gøre det på. For at gøre dette skal du blot videregive tabelnavnet til proceduren.

Sådan:

EXEC sp_pkeys Kunstnere;

Resultat (ved hjælp af lodret output):

TABLE_QUALIFIER | MusikTABLE_OWNER | dboTABLE_NAME | KunstnereCOLUMN_NAME | ArtistIdKEY_SEQ | 1PK_NAME | PK__Artists__25706B50FCD918B1

I dette tilfælde anmodede jeg om den primære nøgle fra Kunstnerne bord. Det returnerer det primære nøglenavn ( PK__Artists__25706B50FCD918B1 ), databasenavnet ( Musik ), tabelnavnet, kolonnenavnet ( ArtistId ), plus andre oplysninger.

Alternativt kunne jeg eksplicit have specificeret alle argumenter for at få det samme resultat:

EXEC sp_pkeys @table_name =Kunstnere, @table_owner =dbo, @table_qualifier =Musik;

Eksempel 2 – KEY_COLUMN_USAGE System View

INFORMATION_SCHEMA.KEY_COLUMN_USAGE systemvisning returnerer én række for hver kolonne, der er begrænset som en nøgle i den aktuelle database. Derfor vil du også få fremmednøgler retur med denne visning.

VÆLG TABLE_NAME, COLUMN_NAME, CONSTRAINT_NAMEFROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE;

Resultat:

+--------------+-------------------- ----------------+| TABLE_NAME | COLUMN_NAME | CONSTRAINT_NAME ||--------------+---------------+---------------- ---------------|| Albums | ArtistId | FK_Albums_Artists || Albums | GenreId | FK_Albums_Genrer || Albums | AlbumId | PK__Albums__97B4BE379FC780BD || Kunstnere | ArtistId | PK__Kunstner__25706B50FCD918B1 || Genrer | GenreId | PK__Genres__0385057E88BB96F8 |+-------------+---------------+---------------- ---------------+

Vi kan se, at dette returnerer begrænsninger fra alle tabeller. Vi kunne også tilføje en WHERE klausul for at indsnævre resultaterne til en specifik tabel.

SELECT TABLE_NAME, COLUMN_NAME, CONSTRAINT_NAMEFROM INFORMATION_SCHEMA.KEY_COLUMN_USAGEWHERE TABLE_NAME ='Kunstner';

Resultat:

+--------------+-------------------- ----------------+| TABLE_NAME | COLUMN_NAME | CONSTRAINT_NAME ||--------------+---------------+---------------- ---------------|| Kunstnere | ArtistId | PK__Artists__25706B50FCD918B1 |+-------------+---------------+---------------- ---------------+

I disse eksempler indsnævrede jeg resultaterne til kun de kolonner i visningen, som jeg er interesseret i, men du kan også bruge stjernen (* ) jokertegn for at returnere alle kolonner.

VÆLG *FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGEWHERE TABLE_NAME ='Kunstner';

Resultat (ved hjælp af lodret output):

CONSTRAINT_CATALOG | MusikCONSTRAINT_SCHEMA | dboCONSTRAINT_NAME | PK__Kunstner__25706B50FCD918B1TABEL_KATALOG | MusikTABLE_SCHEMA | dboTABLE_NAME | KunstnereCOLUMN_NAME | ArtistIdORDINAL_POSITION | 1

Eksempel 3 – CONSTRAINT_COLUMN_USAGE System View

Dette ligner det forrige eksempel. INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE systemvisning returnerer én række for hver kolonne i den aktuelle database, der har en begrænsning defineret på kolonnen. Som med INFORMATION_SCHEMA.KEY_COLUMN_USAGE du får også fremmednøgler retur med denne visning. Dog INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE er ikke begrænset til kun vigtige begrænsninger.

VÆLG TABLE_NAME, COLUMN_NAME, CONSTRAINT_NAMEFROM INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE;

Resultat:

+--------------+-------------------- ----------------+| TABLE_NAME | COLUMN_NAME | CONSTRAINT_NAME ||--------------+---------------+---------------- ---------------|| Albums | ArtistId | FK_Albums_Artists || Albums | GenreId | FK_Albums_Genrer || Albums | AlbumId | PK__Albums__97B4BE379FC780BD || Kunstnere | ArtistId | PK__Kunstner__25706B50FCD918B1 || Genrer | GenreId | PK__Genres__0385057E88BB96F8 |+-------------+---------------+---------------- ---------------+

Du kan bruge en WHERE klausul for kun at returnere en specifik tabel eller kolonne:

SELECT TABLE_NAME, COLUMN_NAME, CONSTRAINT_NAMEFROM INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGEWHERE COLUMN_NAME ='ArtistId';

Resultat:

+--------------+-------------------- ----------------+| TABLE_NAME | COLUMN_NAME | CONSTRAINT_NAME ||--------------+---------------+---------------- ---------------|| Albums | ArtistId | FK_Albums_Artists || Kunstnere | ArtistId | PK__Artists__25706B50FCD918B1 |+-------------+---------------+---------------- ---------------+

I dette tilfælde specificerede jeg et kolonnenavn, så det returnerede alle begrænsninger på kolonner med det navn. Som det viser sig, bruger databasen det samme kolonnenavn i to forskellige tabeller. Den ene har en fremmednøglebegrænsning, den anden en primærnøgle. Derfor returneres begge rækker.

Igen kan du bruge stjernen (* ) jokertegn for at returnere alle kolonner.

VÆLG *FROM INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGEWHERE TABLE_NAME ='Kunstnere';

Resultat (ved hjælp af lodret output):

TABLE_CATALOG | MusikTABLE_SCHEMA | dboTABLE_NAME | KunstnereCOLUMN_NAME | ArtistIdCONSTRAINT_CATALOG | MusikCONSTRAINT_SCHEMA | dboCONSTRAINT_NAME | PK__Artists__25706B50FCD918B1

I dette eksempel begrænsede jeg outputtet til kun begrænsninger på en bestemt tabel.

Eksempel 4 – CONSTRAINT_TABLE_USAGE System View

INFORMATION_SCHEMA.CONSTRAINT_TABLE_USAGE systemvisning returnerer én række for hver tabel i den aktuelle database, der har en begrænsning defineret på tabellen.

VÆLG TABLE_NAME, CONSTRAINT_NAME FRA INFORMATION_SCHEMA.CONSTRAINT_TABLE_USAGE;

Resultat:

+--------------+-------------------------------------- +| TABLE_NAME | CONSTRAINT_NAME ||--------------+-------------------------------------| | Kunstnere | PK__Kunstner__25706B50FCD918B1 || Genrer | PK__Genrer__0385057E88BB96F8 || Albums | PK__Albums__97B4BE379FC780BD || Albums | FK_Albums_Artists || Albums | FK_Albums_Genrer |+--------------+--------------------------------------+ 

Denne visning returnerer ikke kolonnenavnene, som begrænsningerne bruges på, så det er muligvis ikke lige så nyttigt for dig, afhængigt af dine krav.

Her er et eksempel, der viser alle data, der returneres af denne visning for genrerne tabel:

VÆLG * FRA INFORMATION_SCHEMA.CONSTRAINT_TABLE_USAGEWHERE TABLE_NAME ='Genrer';

Resultat:

TABLE_CATALOG | MusikTABLE_SCHEMA | dboTABLE_NAME | GenrerCONSTRAINT_CATALOG | MusikCONSTRAINT_SCHEMA | dboCONSTRAINT_NAME | PK__Genrer__0385057E88BB96F8

Eksempel 5 – TABLE_CONSTRAINTS-systemvisningen

INFORMATION_SCHEMA.TABLE_CONSTRAINTS systemvisning returnerer én række for hver tabelbegrænsning i den aktuelle database.

VÆLG TABLE_NAME, CONSTRAINT_NAME, CONSTRAINT_TYPEFROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS;

Resultat:

+--------------+-------------------------------------- +------------------------+| TABLE_NAME | CONSTRAINT_NAME | CONSTRAINT_TYPE ||--------------+-------------------------------------+ ------------------|| Kunstnere | PK__Kunstner__25706B50FCD918B1 | PRIMÆR NØGLE || Genrer | PK__Genrer__0385057E88BB96F8 | PRIMÆR NØGLE || Albums | PK__Albums__97B4BE379FC780BD | PRIMÆR NØGLE || Albums | FK_Albums_Kunstnere | UDENLANDSKE NØGLE || Albums | FK_Albums_Genrer | UDENLANDSKE NØGLE |+--------------+---------------------------------------- +--------------------+

Denne visning angiver ikke kolonnenavnet, men den giver begrænsningstypen. Derfor kan du indsnævre resultaterne til kun primærnøgler:

VÆLG TABLE_NAME, CONSTRAINT_NAME, CONSTRAINT_TYPEFROM INFORMATION_SCHEMA.TABLE_CONSTRAINTSHVERE CONSTRAINT_TYPE ='PRIMÆR NØGLE';

Resultat:

+--------------+-------------------------------------- +------------------------+| TABLE_NAME | CONSTRAINT_NAME | CONSTRAINT_TYPE ||--------------+-------------------------------------+ ------------------|| Kunstnere | PK__Kunstner__25706B50FCD918B1 | PRIMÆR NØGLE || Genrer | PK__Genrer__0385057E88BB96F8 | PRIMÆR NØGLE || Albums | PK__Albums__97B4BE379FC780BD | PRIMÆR NØGLE |+--------------+---------------------------------------- +--------------------+

Her er et eksempel, der bruger et jokertegn (* )-tegn for at returnere alle data for begrænsninger på Kunstnerne tabel:

VÆLG *FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTSWHERE TABLE_NAME ='Kunstner';

Resultat:

CONSTRAINT_CATALOG | MusikCONSTRAINT_SCHEMA | dboCONSTRAINT_NAME | PK__Kunstner__25706B50FCD918B1TABEL_KATALOG | MusikTABLE_SCHEMA | dboTABLE_NAME | KunstnereCONSTRAINT_TYPE | PRIMÆR KEYIS_DEFERRABLE | INGEN INITIALT_UDSKITTET | NEJ

Eksempel 6 – Key_constraints System View

sys.key_constraints systemvisningen indeholder en række for hvert objekt, der er en primær nøgle eller en unik begrænsning. Derfor kunne vi bruge følgende kode til at returnere alle primærnøglebegrænsninger i databasen sammen med den relevante tabel for hver primærnøgle:

VÆLG OBJECT_NAME(parent_object_id) SOM 'Tabel', nameFROM sys.key_constraints WHERE type ='PK';

Resultat:

+--------+-------------------------------------+| Tabel | navn ||--------+-------------------------------------|| Kunstnere | PK__Kunstner__25706B50FCD918B1 || Genrer | PK__Genrer__0385057E88BB96F8 || Albums | PK__Albums__97B4BE379FC780BD |+--------+-------------------------------------+

Selvfølgelig kan du fjerne WHERE klausul for at returnere både primærnøgler og unikke nøgler.

Det forrige eksempel bruger OBJECT_NAME() funktion til at returnere det overordnede tabelnavn i stedet for dets objekt-id. Hvis jeg ikke brugte OBJECT_NAME() funktion, ville resultatet have set sådan ud:

SELECT parent_object_id, nameFROM sys.key_constraintsWHERE type ='PK';

Resultat:

+--------------------+------------------------ ------+| parent_object_id | navn ||---------------------+-------------------------------- -----|| 885578193 | PK__Kunstner__25706B50FCD918B1 || 917578307 | PK__Genrer__0385057E88BB96F8 || 949578421 | PK__Albums__97B4BE379FC780BD |+-------------------+-------------------------------- -----+

parent_object_id returneres i stedet for det overordnede objekts navn. OBJECT_NAME() funktion gør det meget nemmere for os at forstå, hvilken tabel hver nøgle anvendes på.

Her er et eksempel, hvor jeg bruger jokertegnet (* )-tegn for at returnere alle kolonner for den primære nøgle på Album tabel:

VÆLG *FROM sys.key_constraintsWHERE type ='PK'AND OBJECT_NAME(parent_object_id) ='Album';

Resultat:

navn | PK__Albums__97B4BE379FC780BDobject_id | 965578478principal_id | NULLschema_id | 1forælder_objekt-id | 949578421type | PKtype_desc | PRIMARY_KEY_CONSTRAINTopret_dato | 2019-05-02 12:56:06.377modify_date | 2019-05-02 12:56:06.377is_ms_shipped | 0er_udgivet | 0is_schema_published | 0unique_index_id | 1is_system_named | 1is_enforced | 1

Eksempel 7 – Systemvisningen sys.objects

sys.objects systemvisningen indeholder en række for hvert brugerdefineret objekt med skemaomfang, der oprettes i en database. Så den indeholder vores tabeller og primærnøgler.

Vi kan tage den forrige forespørgsel og erstatte key_constraints med objects og vi får det samme resultat:

VÆLG OBJECT_NAME(parent_object_id) SOM 'Tabel', nameFROM sys.objects WHERE type ='PK';

Resultat:

+--------+-------------------------------------+| Tabel | navn ||--------+-------------------------------------|| Kunstnere | PK__Kunstner__25706B50FCD918B1 || Genrer | PK__Genrer__0385057E88BB96F8 || Albums | PK__Albums__97B4BE379FC780BD |+--------+-------------------------------------+

Her er et eksempel, der returnerer alle data for PK__Genres__0385057E88BB96F8 primær nøgle:

SELECT *FROM sys.objectsWHERE name ='PK__Genres__0385057E88BB96F8';

Resultat (ved hjælp af lodret output):

navn | PK__Genres__0385057E88BB96F8object_id | 933578364principal_id | NULLschema_id | 1forælder_objekt-id | 917578307type | PKtype_desc | PRIMARY_KEY_CONSTRAINTopret_dato | 2019-05-02 12:56:06.110modify_date | 2019-05-02 12:56:06.110is_ms_shipped | 0er_udgivet | 0is_schema_published | 0

Eksempel 8 – REFERENTIAL_CONSTRAINTS-systemvisningen

Denne er lidt af en strækning, men den kan være nyttig afhængig af din situation. Og teknisk set returnerer den (nogle) primære nøgler.

INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS systemvisning returnerer én række for hver FOREIGN KEY begrænsning i den aktuelle database. Så dens formål er faktisk at returnere fremmednøgler - ikke primærnøgler. Denne visning kan dog være praktisk, hvis du kun ønsker at se alle primærnøgler, der har en tilknyttet fremmednøgle. Det er ikke en pålidelig metode at bruge, hvis du vil se alle primære nøgler, uanset om der er en tilknyttet fremmednøgle.

Her er et eksempel:

VÆLG CONSTRAINT_NAME, UNIQUE_CONSTRAINT_NAMEFROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS;

Resultat:

+---------------------+-------------------------------- -----+| CONSTRAINT_NAME | UNIQUE_CONSTRAINT_NAME ||------------------------+-------------------------------- ----|| FK_Albums_Kunstnere | PK__Kunstner__25706B50FCD918B1 || FK_Albums_Genrer | PK__Genres__0385057E88BB96F8 |+------------------+-------------------------------- ----+

Som du kan se, returnerer dette kun de primære nøgler, der har en tilknyttet fremmednøgle. For at være mere præcis er det faktisk omvendt - det returnerer alle fremmednøgler sammen med deres tilhørende UNIQUE begrænsning.

Så hvis vi sammenligner disse resultater med resultaterne fra tidligere eksempler, kan vi se, at kun to primærnøgler returneres (sammenlignet med tre fra tidligere eksempler). Dette skyldes, at en af ​​de primære nøgler i denne database ( PK__Albums__97B4BE379FC780BD ) har ikke en tilknyttet fremmednøgle.

Her er et eksempel, der returnerer alle data for fremmednøgler, hvoraf PK__Artists__25706B50FCD918B1 er den UNIQUE begrænsning:

VÆLG *FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTSHVERE UNIQUE_CONSTRAINT_NAME ='PK__Artists__25706B50FCD918B1';

Resultat:

CONSTRAINT_CATALOG | MusikCONSTRAINT_SCHEMA | dboCONSTRAINT_NAME | FK_Albums_ArtistsUNIQUE_CONSTRAINT_CATALOG | MusikUNIQUE_CONSTRAINT_SCHEMA | dboUNIQUE_CONSTRAINT_NAME | PK__Kunstner__25706B50FCD918B1MATCH_OPTION | SIMPLEUPDATE_RULE | INGEN ACTIONDELETE_RULE | INGEN HANDLING

I dette tilfælde returneres kun én fremmednøgle.

Som nævnt er denne visning hovedsageligt til returnering af fremmednøgleoplysninger, så brug kun denne metode, hvis du ønsker at se fremmednøgleoplysninger sammen med den tilhørende primærnøgle. Brug ikke denne metode, hvis du vil se alle primære nøgler, uanset om de har en tilknyttet fremmednøgle.

Eksempel 9 – Sp_fkeys systemlagrede procedure

Denne metode ligner den tidligere metode i den forstand, at den returnerer fremmednøgleinformation. Den returnerer også den primære nøgle, der er knyttet til hver fremmednøgle.

Eksempel:

EXEC sp_fkeys Kunstnere;

Resultat (ved hjælp af lodret output):

PKTABLE_QUALIFIER | MusikPKTABLE_OWNER | dboPKTABLE_NAME | KunstnerePKCOLUMN_NAME | ArtistIdFKTABLE_QUALIFIER | MusikFKTABLE_OWNER | dboFKTABLE_NAME | AlbumsFKCOLUMN_NAME | ArtistIdKEY_SEQ | 1UPDATE_REGEL | 1DELETE_RULE | 1FK_NAME | FK_Albums_ArtistsPK_NAME | PK__Kunstner__25706B50FCD918B1UDSKIKKELSE | 7

Jeg kunne have brugt følgende syntaks i stedet for (eller en kombination af disse argumenter):

EXEC sp_fkeys @pktable_name =Kunstnere, @pktable_owner =dbo, @pktable_qualifier =Musik, @fktable_name =Albums, @fktable_owner =dbo, @fktable_qualifier =Musik;

Som med det foregående eksempel, bør denne metode ikke bruges til at returnere alle primære nøgler. Hvis en primær nøgle ikke har en tilknyttet fremmednøgle, vil den ikke blive returneret.

Eksempel 10 – Sp_helpconstraint-systemets lagrede procedure

sp_helpconstraint systemlagret procedure returnerer en liste over alle begrænsningstyper, deres brugerdefinerede eller systemleverede navn, de kolonner, som de er defineret på, og det udtryk, der definerer begrænsningen (for DEFAULT og CHECK kun begrænsninger).

Derfor kan du bruge den til at returnere information om primærnøgler i din database.

Eksempel:

EXEC sp_helpconstraint Albums;

Resultat:

+----------------+| Objektnavn ||--------------|| Albums |+----------------+ -[ RECORD 1 ]-------------------------constraint_type | UDENLANDSKE NØGLEconstraint_name | FK_Albums_Artistsdelete_action | Ingen Actionupdate_action | Ingen Actionstatus_enabled | Enabledstatus_for_replication | Is_For_Replicationconstraint_keys | ArtistId-[ RECORD 2 ]------------------------constraint_type | constraint_name | slet_handling | update_action | status_enabled | status_til_replikering | constraint_keys | REFERENCER Music.dbo.Artists (ArtistId)-[ RECORD 3 ]-------------------------constraint_type | UDENLANDSKE NØGLEconstraint_name | FK_Albums_Genresdelete_action | Ingen Actionupdate_action | Ingen Actionstatus_enabled | Enabledstatus_for_replication | Is_For_Replicationconstraint_keys | GenreId-[ RECORD 4 ]-------------------------constraint_type | constraint_name | slet_handling | update_action | status_enabled | status_til_replikering | constraint_keys | REFERENCER Music.dbo.Genres (GenreId)-[ RECORD 5 ]-------------------------constraint_type | PRIMÆR NØGLE (clustered) constraint_name | PK__Albums__97B4BE379FC780BDdelete_action | (n/a)update_action | (n/a)status_enabled | (n/a)status_for_replikering | (n/a)constraint_keys | AlbumId

Eksempel 11 – Sp_help-systemets lagrede procedure

sp_help systemlagret procedure rapporterer information om et databaseobjekt (ethvert objekt, der er angivet i sys.sysobjects kompatibilitetsvisning), en brugerdefineret datatype eller en datatype. Dette inkluderer oplysninger om primære nøgler.

Når du kører dette uden nogen argumenter, giver det information om oversigtsoplysninger om objekter af alle typer, der findes i den aktuelle database, returneres (dvs. et parti information).

Du kan dog angive navnet på en tabel, og den vil returnere oplysninger om den tabel. Igen vil du få en masse information retur, men blandt disse vil være primære nøgleoplysninger.

Eksempel:

EXEC sp_help Kunstnere;

Resultat:

+--------+---------+--------------- ------------+| Navn | Ejer | Skriv | Oprettet_dato ||--------+---------+----------------- ----------|| Kunstnere | dbo | brugertabel | 2019-05-02 12:56:05.840 |+--------+--------+-------------+----- --------------------+ -[ OPTAG 1 ]------------------------ -Kolonne_navn | ArtistIdType | intComputed | ingen Længde | 4Prec | 10 Skala | 0 Nullbar | noTrimTrailingBlanks | (n/a)FixedLenNullInSource | (n/a)Samling | NULL-[ RECORD 2 ]------------------------Kolonne_navn | KunstnernavnType | nvarcharComputed | ingen Længde | 510Prec | Skala | Nullbar | noTrimTrailingBlanks | (n/a)FixedLenNullInSource | (n/a)Samling | SQL_Latin1_General_CP1_CI_AS-[ RECORD 3 ]-------------------------Kolonne_navn | ActiveFromType | datoComputed | ingen Længde | 3Prec | 10 Skala | 0 Nullbar | yesTrimTrailingBlanks | (n/a)FixedLenNullInSource | (n/a)Samling | NULL +------------+--------+----------------- -----------+| Identitet | Frø | Forøgelse | Ikke til replikering ||-------------+--------+--------------+-------- --------------|| ArtistId | 1 | 1 | 0 |+------------+--------+-------------+----------- ------------+ +--------------------------------------+| RowGuidCol ||-------------------------------------|| Ingen rowguidcol-kolonne defineret. |+-------------------------------+ +--------- --------------+| Data_located_on_filegroup ||----------------------------------|| PRIMÆR |+-------------------------------------+ +---------------- ---------------+----------------------------------- ------------------+--------------+| indeksnavn | index_description | indeksnøgler ||--------------------------------------+------------------- ------------------------------------+------------- -|| PK__Kunstner__25706B50FCD918B1 | klynget, unik, primær nøgle placeret på PRIMÆR | ArtistId |+---------------------------------------+-------------- ------------------------------------+------------- -+ -[ RECORD 1 ]-------------------------constraint_type | PRIMÆR NØGLE (clustered) constraint_name | PK__Artists__25706B50FCD918B1delete_action | (n/a)update_action | (n/a)status_enabled | (n/a)status_for_replikering | (n/a)constraint_keys | ArtistId +----------------------------------------------+| Tabellen refereres til med fremmednøgle ||---------------------------------------------|| Music.dbo.Albums:FK_Albums_Artists |+---------------------------------------------+ 

Du kan også angive navnet på en primær nøgle for at få nogle grundlæggende oplysninger om den:

EXEC sp_help PK__Artists__25706B50FCD918B1;

Resultat:

+--------------------------------------+--------+---- --------------+--------------------------------+| Navn | Ejer | Skriv | Oprettet_dato ||-------------------------------------+--------+----- ------------+-------------------------|| PK__Kunstner__25706B50FCD918B1 | dbo | primær nøgle cns | 2019-05-02 12:56:05.853 |+-------------------------------------+------ ---+----------------+-------------------------+ 
  1. Vent Begivenhed:Ændring af størrelse på asynkronbeskrivelse

  2. Hvordan kalder jeg en lagret procedure med argumenter ved hjælp af sqlcmd.exe?

  3. Hent det sidst indsatte række-id (med SQL-sætning)

  4. Vis fremskridt, mens du laver i baggrunden