Fremdschlüssel einfügen

lengulins

Benutzer
Beiträge
10
Hallo,
folgendes Problem. Eine Anwendung basiert auf SQL Server 2008 und hat mir folgende Tabelle in der Datenbank erstellt:
Code:
/****** Object:  Table [dbo].[Ud_SVAssetChangeConnectionClassBase]    Script Date: 05/08/2012 09:30:31 ******/
SET ANSI_NULLS ON
GO
 
SET QUOTED_IDENTIFIER ON
GO
 
SET ARITHABORT ON
GO
 
CREATE TABLE [dbo].[Ud_SVAssetChangeConnectionClassBase](
    [ID] [uniqueidentifier] ROWGUIDCOL  NOT NULL,
    [TimeStamp] [timestamp] NULL,
    [Ud_SVAssetChangeIST] [tinyint] NOT NULL,
    [Ud_SVAssetChangeSOLL] [tinyint] NOT NULL,
    [Ud_SVInventoryNumber] [nvarchar](100) NULL,
    [UsedInTypeUd_SVAssetChangeType] [uniqueidentifier] NULL,
    [Expression-ObjectID]  AS (case when [UsedInTypeUd_SVAssetChangeType] IS NOT NULL then [UsedInTypeUd_SVAssetChangeType]  end),
CONSTRAINT [PK_6a7fd110-3c98-e111-b2b0-00505699001f] PRIMARY KEY CLUSTERED
(
    [ID] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]
 
GO
 
ALTER TABLE [dbo].[Ud_SVAssetChangeConnectionClassBase]  WITH CHECK ADD  CONSTRAINT [CO_Ud_SVAssetChangeTypeID_Ud_SVAssetChangeConnectionClassBaseUsedInTypeUd_SVAssetChangeType] FOREIGN KEY([UsedInTypeUd_SVAssetChangeType])
REFERENCES [dbo].[Ud_SVAssetChangeType] ([ID])
GO
 
ALTER TABLE [dbo].[Ud_SVAssetChangeConnectionClassBase] CHECK CONSTRAINT [CO_Ud_SVAssetChangeTypeID_Ud_SVAssetChangeConnectionClassBaseUsedInTypeUd_SVAssetChangeType]
GO
 
ALTER TABLE [dbo].[Ud_SVAssetChangeConnectionClassBase] ADD  DEFAULT (newsequentialid()) FOR [ID]
GO
 
ALTER TABLE [dbo].[Ud_SVAssetChangeConnectionClassBase] ADD  DEFAULT ((0)) FOR [Ud_SVAssetChangeIST]
GO
 
ALTER TABLE [dbo].[Ud_SVAssetChangeConnectionClassBase] ADD  DEFAULT ((0)) FOR [Ud_SVAssetChangeSOLL]
GO
Ich wollte per Script Datensaetze eintragen. Leider stelle ich mich zu dumm an, den Primär- und den Fremdschlüssel in der Insertanweisung zu füllen. Kann mir jemand dabei helfen? Vielen Dank!
 
Werbung:
UNIQUEIDENTIFIER sind GUIDs in und können manuell eingetragen werden, müssen dann aber in Striche gesetzt werden:
Code:
INSERT INTO tabelle (pk,wert) VALUES ('511C7B85-854F-437D-BA5E-DBEB02420E4B','Text')
Eine neue ID kannst du auch mit newid() erzeugen:
Code:
INSERT INTO tabelle (pk,wert) VALUES (newid(),'Text')
Einen Fremdschlüssel musst du natürlich vorher ermitteln (also den PK der anderen Tabelle). Du kannst aber in einem Script auch eine Variable mit Typ UNIQUEIDENTIFIER deklarieren.
 
Werbung:
Zurück
Oben