2012-10-19 56 views
2

我想在SQL中創建一個表,如果我想將屬性設置爲NULL,我該怎麼做? 例如,我想創建一個名爲「課程」的表格,其屬性「CourseNo」和「標題」不能爲空。我在下面創建了一個:當我在SQL中創建一個表時,如何設置一個不爲空的屬性?

CREATE TABLE Courses(
    CourseNo INTEGER CHECK(100<=CourseNo<=999) PRIMARY KEY, 
    Title VARCHAR(100), 
    ) 

ALTER TABLE Courses 
ALTER COLUMN CourseNo INTEGER NOT NULL 
ALTER COLUMN Title VARCHAR(100) NOT NULL 

這是正確的嗎?

+2

你運行了嗎?你有沒有得到任何錯誤?如果它沒有錯誤地執行,你嘗試插入NULL值嗎?發生了什麼?我的觀點是 - 這會讓你嘗試**更快,更有學習經驗。 – Oded

+0

如果您聲明courseno爲主鍵,它不能爲空 –

回答

0

無論你寫了什麼,一個正確但良好的做法是在定義表格時寫not null
這樣做:

CREATE TABLE Courses(
    CourseNo INTEGER CHECK(100<=CourseNo<=999) PRIMARY KEY, 
    Title VARCHAR(100) NOT NULL, 
    ) 

主鍵是默認NOT NULL始終,因此你不需要將它申報爲NOT NULL

在ALTER NOT NULL用來當U想在列definations變化表格後面

0

Title VARCHAR(100)更改爲Title VARCHAR(100) NOT NULL

+0

謝謝!順便說一句,我的代碼工作? – zzx

+0

我不知道。他們呢? –

相關問題