2013-04-14 74 views
-2

我是新來的SQL Server 2000並面臨問題。我想建立一個新表,但我遇到一個錯誤信息與下面的代碼:無法創建新表

create table Buku 
(
Kode_Buku char(5) constraint PK_Kode_Buku Primary Key, 
Judul_Buku varchar(10)not null, 
Nama_Pengarang varchar(30) not null, 
Penerbit varchar(30), 
Kota_Terbit varchar(30) default, 
Tahun_Terbit varchar(4) default, 
Bahasa varchar(4) check, 
Harga_Jual money, 
) 

和這裏的錯誤代碼:

服務器:消息170,15級,狀態1,第1行
第1行:'Buku'附近的語法錯誤。

+0

您對SQL Server 2000「新」嗎?你知道SQL Server 2000已經13歲了,並且在擴展支持的最後,對嗎?任何您不想使用自那時以來發布的四個主要版本(2005,2008,2008 R2,2012)的原因? –

回答

1

你有三個問題:

  1. 您有多個情況下,你說default,但不指定任何
  2. 你有一個check,但不指定任何
  3. 你的最後一列定義一個結尾逗號

money,如今,所有這些領先的T o你得到的確切的錯誤信息,所以也許有更多的你不告訴我們(create table位之前是否有更多的代碼?),但是這些小的語法問題太本地化了,不適用於這個Q &格式。

編輯

我只是跑這上的SQL Server 2000實例和它的工作只是罰款:

create table Buku 
(
    Kode_Buku char(5) constraint PK_Kode_Buku Primary Key, 
    Judul_Buku varchar(10) not null, -- added space here 
    Nama_Pengarang varchar(30) not null, 
    Penerbit varchar(30), 
    Kota_Terbit varchar(30), -- removed default here 
    Tahun_Terbit varchar(4), -- removed default here 
    Bahasa varchar(4), -- removed check here 
    Harga_Jual money -- removed comma here 
) 

所以我不知道你在做什麼不同,但我可以用你在問題中提供的信息看到你所看到的錯誤信息。如果您仍然收到包含此代碼的錯誤消息(只有此代碼),則需要提供更多信息,例如@@ VERSION,您使用什麼接口將創建表語句提交給SQL Server,等等。

+0

創建表之前沒有更多的代碼,它只是不工作。我試圖通過谷歌找到答案,但我沒有得到任何答案。也許是因爲我使用的是舊版本的sql?或者在創建數據庫時需要設置一些內容? –

+0

非常感謝你的幫助,現在我可以毫無錯誤地編譯它。我很抱歉花了這麼長時間回覆。再次感謝你。 –