2010-08-06 29 views
0

最近,SQL 2005 Management Studio在嘗試保存對錶的更改時開始引發語法錯誤。這些表是在設計視圖中創建的,而不是TSQL腳本。SQL 2005 Management Studio在設計視圖中嘗試保存對錶的更改時出現語法錯誤

'Build_Group' table 
- Unable to create index 'PK_Build_Group'. 
Incorrect syntax near ','. 

基於該誤差,似乎在主鍵聚簇索引的娛樂失敗,但這是由SQL,在幕後其自身生成的TSQL,並且改變到一個完全自動化的過程該表不是關鍵字段,也就是說,之前生成的聚集索引現在失敗了。

SQL的安裝已經超過一年了,我每天都在這裏工作,沒有任何問題。沒有什麼改變,我知道的環境。

以前有人看過這個嗎?

==編輯原始==============================

下面是生成的改變腳本

BEGIN TRANSACTION 
SET QUOTED_IDENTIFIER ON 
SET ARITHABORT ON 
SET NUMERIC_ROUNDABORT OFF 
SET CONCAT_NULL_YIELDS_NULL ON 
SET ANSI_NULLS ON 
SET ANSI_PADDING ON 
SET ANSI_WARNINGS ON 
COMMIT 
BEGIN TRANSACTION 
GO 
ALTER TABLE dbo.Build_Group ADD CONSTRAINT 
    PK_Build_Group PRIMARY KEY CLUSTERED 
    (
    build_group_pk 
    ) WITH(STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] 

GO 
COMMIT 

語法錯誤發生在WITH行上。如果我刪除了兩個ALLOW選項,它將運行。

+0

沒有看到這個錯誤。也許補丁或SP失敗?如果你在網上找不到任何東西,我建議重新安裝SQL Server – Jeroen 2010-08-06 13:27:42

+0

我發生的一件事是,我還在這個盒子上試用了SQL 2008,這個盒子在一週前過期了......只是把古怪的想法扔到那裏。 – Ian 2010-08-06 15:07:31

+0

當我運行這個:'create table Build_Group(build_group_pk int not null,aaa int,bbb int)'然後你的腳本,它在我的sql server 2005系統 – 2010-08-06 16:05:20

回答

0

這裏是我的建議:

1)重新啓動PC
2)進入SSMS
3)右鍵單擊該表並選擇 「刷新」
4)打開表,單擊右鍵,選擇「設計「,並進行更改
5)點擊」生成更改腳本「工具欄圖標(或從菜單 - 」表設計器「,然後」生成更改腳本「)
6)存儲此更改腳本的副本
7)試圖保存表
8)如果你仍然得到一個錯誤,編輯您的問題,包括更改腳本

0

我使用SSMS V10同樣的問題(SQL 2008)針對SQL Server 2000的服務器/數據庫。如果我在設計器中創建一個包含幾列的表,並使用設計器設置一個主鍵,然後保存並嘗試腳本表爲>創建到>新查詢窗口它生成的SQL語法不正確。

Msg 170, Level 15, State 1, Line 58 
Line 58: Incorrect syntax near '('. 

刪除這兩個ALLOW選項對我無效,但刪除整個WITH子句確實解決了這個問題。不管這是否正確,SMSS爲什麼會生成錯誤的腳本?

相關問題