2016-12-20 4 views
0

Ich versuche, meine gesamte Datenbank mit SSMS Skript. Ich habe bemerkt, dass es nicht Skript die Identitätsspalten oder den Primärschlüssel. Ist das richtig, scheint das sehr merkwürdig. Gibt es ein Tool, das jeder empfehlen kann, um diese Aufgabe zu erfüllen?SQL Server Scripting der Datenbank mit Identität und Primärschlüssel

CREATE TABLE [dbo].[DRIVERS] 
(
    [ID] [int] NOT NULL, 
    [BADGENUM] [int] NOT NULL, 
    [NAME] [varchar](50) NOT NULL, 
    [MOBILETEL] [varchar](50) NULL, 
    [HOMETEL] [varchar](50) NULL, 
    [ADDRESS1] [varchar](50) NULL, 
    [ADDRESS2] [varchar](50) NULL, 
    [ADDRESS3] [varchar](50) NULL, 
    [TOWN] [varchar](50) NULL, 
    [POSTCODE] [varchar](50) NULL, 
    [BADGEEXPIRES] [datetime] NOT NULL, 
    [COMMENTS] [varchar](250) NULL, 
    [DISABLED] [bit] NOT NULL, 
    [ACTIVE] [bit] NOT NULL, 
    [ONSHIFT] [bit] NOT NULL, 
    [PIN] [nvarchar](50) NOT NULL, 
    [SCHOOLSOK] [bit] NOT NULL, 
    [EMAIL] [varchar](50) NULL 
) ON [PRIMARY] 

Die ID Spalte sollte Autoinkrement Identität und Primärschlüssel sein.

Antwort

0

Können Sie das für eine der Tabellen generierte Skript posten? Meiner Erfahrung nach enthalten SSMS Generate Scripts die Primärschlüssel, aber sie sind nicht Teil der Spaltendefinition.

Zum Beispiel:

CREATE TABLE [dbo].[test](
[a] [int] NOT NULL PRIMARY KEY, 
[b] [int] NOT NULL, 
) 

wird dies, wenn Skripte

CREATE TABLE [dbo].[test](
[a] [int] NOT NULL, 
[b] [int] NOT NULL, 
PRIMARY KEY CLUSTERED 
(
[a] ASC 
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] 
) ON [PRIMARY] 

Der Primärschlüssel noch definiert ist, aber das generierte Skript verwendet die formale, detaillierte Syntax erzeugt werden.

+0

Ja, ich hätte das Skript einschließen sollen. –

Verwandte Themen