Hier das Create-Skript:
USE [ParkhausData]
GO
/****** Object: Table [dbo].[Partner] Script Date: 02/28/2012 12:08:50 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Partner](
[iD_Partner] [int] IDENTITY(1,1) NOT NULL,
[Dat_Valid_from] [datetime] NOT NULL,
[Dat_Valid_to] [datetime] NOT NULL,
[Name_Partner] [nvarchar](100) NOT NULL,
[Vorname_Partner] [nvarchar](100) NOT NULL,
[Description] [nvarchar](255) NOT NULL,
[iD_Typ_Partner] [int] NOT NULL,
CONSTRAINT [Partner_PK] PRIMARY KEY NONCLUSTERED
(
[iD_Partner] 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].[Partner] WITH CHECK ADD CONSTRAINT [Partner_FK00] FOREIGN KEY([iD_Typ_Partner])
REFERENCES [dbo].[Typ_Partner] ([iD_Typ_Partner])
ON UPDATE CASCADE
ON DELETE CASCADE
GO
ALTER TABLE [dbo].[Partner] CHECK CONSTRAINT [Partner_FK00]
GO
ALTER TABLE [dbo].[Partner] ADD DEFAULT (getdate()) FOR [Dat_Valid_from]
GO
ALTER TABLE [dbo].[Partner] ADD DEFAULT ('31.12.2999') FOR [Dat_Valid_to]
GO
ALTER TABLE [dbo].[Partner] ADD DEFAULT ('') FOR [Name_Partner]
GO
ALTER TABLE [dbo].[Partner] ADD DEFAULT ('') FOR [Vorname_Partner]
GO
ALTER TABLE [dbo].[Partner] ADD DEFAULT ('') FOR [Description]
GO
ALTER TABLE [dbo].[Partner] ADD DEFAULT ((0)) FOR [iD_Typ_Partner]
GO
Anscheinend wird von dem DataGridView ein NULL-Wert für die Felder übergeben und dieser wird dann versucht in die Tabelle zu schreiben. Von DB2 kenne ich es eigentlich, dass dann der DEFAULT-Wert zieht. Kann es sein das SQL-Server dann wirklich explizit diesen NULL-Wert schreiben will?
Dann wäre meine Frage vielleicht hie sogar falsch platziert und ich müßte diese bei VISUAL STUDIO oder C# stellen.