欄位 null 與 not null 的問題~不太會表達,詳情請看內容~~ |
尚未結案
|
SianJhihCiou
一般會員 發表:3 回覆:4 積分:1 註冊:2007-06-12 發送簡訊給我 |
有個問題請教各位前輩~~
Create Table Test ( F1 char(10) not null, F2 char(10) null ) 此語法下完後,在新增資料的時候 => F1一定要給值, F2不一定要給值 例: Insert into Test(F1) Values ('x001') => F2不給值 Insert into Test(F1, F2) values ('x001', 'y001') => F2給值 那如何在程式中得知各欄位的原設定為何(null 或 not null)呢?? P.S.目前使用ADOQuery或ClientDataSet元件。
------
SianJhihCiou |
GrandRURU
站務副站長 發表:240 回覆:1680 積分:1874 註冊:2005-06-21 發送簡訊給我 |
以mysql為例
SHOW COLUMNS FROM data; 所以大概會像是: [code delphi] ClientDataSet1.FieldByName('COLUMNS').AsString = 'OOXX' [/code] 其它請接力 ===================引 用 SianJhihCiou 文 章=================== 有個問題請教各位前輩~~ Create Table Test ( F1 char(10) not null, F2 char(10) null ) 此語法下完後,在新增資料的時候 => F1一定要給值, F2不一定要給值 例: Insert into Test(F1) Values ('x001')=>F2不給值 Insert into Test(F1, F2) values ('x001', 'y001')=>F2給值 那如何在程式中得知各欄位的原設定為何(null 或 not null)呢?? P.S.目前使用ADOQuery或ClientDataSet元件。 |
老大仔
尊榮會員 發表:78 回覆:837 積分:1088 註冊:2006-07-06 發送簡訊給我 |
一開始看不太懂您要問的問題
您是要問~ 1. 要怎麼知道該欄位的值是否為Null?? 假如是2, 那麼GrandRURU大大已經回答了 但是照您的問題看來 應該是指1 假如是1, 該欄位在設定(Create Table)的時候您就已經給它設為不能null(or 可以為Null)了, 所以填值進去時,您自己就應該要知道哪些欄位不能為Null了,不是嗎?? (雖然還是有語法可以知道某欄位是否允許Null) ===================引 用 GrandRURU 文 章=================== 以mysql為例 SHOW COLUMNS FROM data; 所以大概會像是: [code delphi] ClientDataSet1.FieldByName('COLUMNS').AsString = 'OOXX' [/code] 其它請接力 ===================引 用 SianJhihCiou 文 章=================== 有個問題請教各位前輩~~ Create Table Test ( F1 char(10) not null, F2 char(10) null ) 此語法下完後,在新增資料的時候 => F1一定要給值, F2不一定要給值 例: Insert into Test(F1) Values ('x001')=>F2不給值 Insert into Test(F1, F2) values ('x001', 'y001')=>F2給值 那如何在程式中得知各欄位的原設定為何(null 或 not null)呢?? P.S.目前使用ADOQuery或ClientDataSet元件。
編輯記錄
老大仔 重新編輯於 2010-07-19 16:21:32, 註解 無‧
|
GrandRURU
站務副站長 發表:240 回覆:1680 積分:1874 註冊:2005-06-21 發送簡訊給我 |
老大仔大大
我也是在敘述你說的「1.」耶…… MySQL的用法及解釋: 顯示 data 資料表的欄位資訊 SHOW COLUMNS FROM data; ===================引 用 老大仔 文 章=================== 一開始看不太懂您要問的問題 您是要問~ 1. 要怎麼知道該欄位的值是否為Null?? 假如是2, 那麼GrandRURU大大已經回答了 但是照您的問題看來 應該是指1 假如是1, 該欄位在設定(Create Table)的時候您就已經給它設為不能null(or 可以為Null)了, 所以填值進去時,您自己就應該要知道哪些欄位不能為Null了,不是嗎?? (雖然還是有語法可以知道某欄位是否允許Null) |
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
|
老大仔
尊榮會員 發表:78 回覆:837 積分:1088 註冊:2006-07-06 發送簡訊給我 |
噢~小弟我沒注意看到那行....
只在注意看Client....那段程式碼... Sorry...G大>"< ===================引 用 GrandRURU 文 章=================== 老大仔大大 我也是在敘述你說的「1.」耶…… MySQL的用法及解釋: 顯示 data 資料表的欄位資訊 SHOW COLUMNS FROM data; ===================引 用 老大仔 文 章=================== 一開始看不太懂您要問的問題 您是要問~ 1. 要怎麼知道該欄位的值是否為Null?? 假如是2, 那麼GrandRURU大大已經回答了 但是照您的問題看來 應該是指1 假如是1, 該欄位在設定(Create Table)的時候您就已經給它設為不能null(or 可以為Null)了, 所以填值進去時,您自己就應該要知道哪些欄位不能為Null了,不是嗎?? (雖然還是有語法可以知道某欄位是否允許Null) ? |
renard
一般會員 發表:3 回覆:43 積分:24 註冊:2007-06-29 發送簡訊給我 |
Dear All:
Me想,他應該要問的是: 如何用ADOQuery, 1.查詢Table1內的各欄位資料型態與, 2.是否允許Null的資料. Field DataType Allow null or not null F1 int allow null F2 float allow null F3 datetime not allow null P.S. 因為Me也不會,所以Me也想學習一下.3q3q |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |