2015-02-09 174 views
1

我有一個連接到SQL Server 2008的數據庫,當打印數據庫時出現錯誤:打印中止!錯誤37000(用於ODBC驅動程序的Microsoft OLE DB提供程序) - [Microsoft] [ODBC SQL Server驅動程序] [SQL Server] [TEMP_TAB_SHEET_U17'附近的語法不正確'SQL錯誤:「錯誤的語法附近」

詳細的腳本如下:

SET ANSI_NULLS ON 
GO 

SET QUOTED_IDENTIFIER ON 
GO 

SET ANSI_PADDING ON 
GO 

CREATE TABLE [data].[TEMP_TAB_SHEET_U17](
    [TAL] [varchar](30) NULL, 
    [Phase] [smallint] NOT NULL, 
    [SHT] [varchar](30) NULL, 
    [PreferedSYS] [varchar](30) NULL, 
    [sysdesc] [varchar](100) NULL, 
    [EquipmentNumber] [varchar](30) NULL, 
    [TaskNumber] [varchar](30) NULL, 
    [TaskId] [int] NULL, 
    [OTdescription] [varchar](50) NULL, 
    [OTremark] [varchar](50) NULL, 
    [Estimated_Man_Hours] [float] NULL, 
    [EquipmentId] [int] NULL, 
    [EquipmentDescription] [varchar](50) NULL, 
    [TAA_ID] [int] NULL, 
    [UserGroup] [varchar](30) NULL, 
    [MODULE] [varchar](30) NULL, 
    [ModuleDesc] [varchar](50) NULL, 
    [SHTTitle1] [varchar](50) NULL, 
    [SHTTitle2] [varchar](50) NULL, 
    [SHTTitle3] [varchar](50) NULL, 
    [SHTTitle4] [varchar](50) NULL, 
    [SHTDescription] [varchar](50) NULL, 
    [SHTNbSections] [int] NULL, 
    [NbMaxTasksPerSheet] [int] NULL, 
    [S1_PH] [varchar](30) NULL, 
    [S1_M] [varchar](30) NULL, 
    [S1_PF] [varchar](30) NULL, 
    [S2_PH] [varchar](30) NULL, 
    [S2_M] [varchar](30) NULL, 
    [S2_PF] [varchar](30) NULL, 
    [S3_PH] [varchar](30) NULL, 
    [S3_M] [varchar](30) NULL, 
    [S3_PF] [varchar](30) NULL, 
    [SHTFooterTitle1] [varchar](50) NULL, 
    [SHTFooterTitle2] [varchar](50) NULL, 
    [SHTFooterTitle3] [varchar](50) NULL, 
    [SHTFooterTitle4] [varchar](50) NULL, 
    [SHTFooterTitle5] [varchar](50) NULL, 
    [SHTFooterTitle6] [varchar](50) NULL, 
    [SHTFooterTitle7] [varchar](50) NULL, 
    [SHTFooterTitle8] [varchar](50) NULL, 
    [SHTFooterTitle9] [varchar](50) NULL, 
    [SHTFooterTitle10] [varchar](50) NULL, 
    [SHTFooterTitle11] [varchar](50) NULL, 
    [SHTFooterTitle12] [varchar](50) NULL 
) ON [PRIMARY] 

GO 

SET ANSI_PADDING OFF 
GO 

ALTER TABLE [data].[TEMP_TAB_SHEET_U17] ADD DEFAULT ((0)) FOR [Phase] 
GO 

已完成查詢錯誤運行:

消息2714,級別16,狀態6,2號線 目前已經在名爲「TEMP_TAB_SHEET_U17」對象數據庫。 消息1781,級別16,狀態1,行2 列已經有一個綁定到它的DEFAULT。 消息1750,級別16,狀態0,行2 無法創建約束。查看以前的錯誤。

如何解決這個問題。 預先感謝您。

阿旺

+3

的錯誤意味着已經存在的數據庫名爲「TEMP_TAB_SHEET_U17」的對象。您通過不嘗試創建另一個問題來解決問題。 – 2015-02-09 15:28:32

+1

@TabAlleman - 或先丟棄舊的。 – 2015-02-09 15:30:09

回答

0

你試過設置約束上創建:

SET ANSI_NULLS ON 
GO 

SET QUOTED_IDENTIFIER ON 
GO 

SET ANSI_PADDING ON 
GO 

    CREATE TABLE [data].[TEMP_TAB_SHEET_U17](
     [TAL] [varchar](30) NULL, 
     [Phase] [smallint] NOT NULL DEFAULT 0, 
     ... 
     .... 

    GO 

    SET ANSI_PADDING OFF 
    GO 
+0

出現錯誤消息: 消息2714,級別16,狀態6,行2 數據庫中已有一個名爲'TEMP_TAB_SHEET_U17'的對象。 消息1781,級別16,狀態1,行2 列已經有一個綁定到它的DEFAULT。 消息1750,級別16,狀態0,行2 無法創建約束。查看以前的錯誤。 – Awan 2015-02-09 15:37:56