全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1334
推到 Plurk!
推到 Facebook!

如何用程式設定一個TABLE 有主鍵,跟候選鍵

尚未結案
GiGi
一般會員


發表:17
回覆:21
積分:7
註冊:2002-10-19

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-12-02 18:33:05 IP:211.23.xxx.xxx 未訂閱
with AddIndexDef do begin Name := ''; Fields := 'Field1'; Options := [ixPrimary]; end; with AddIndexDef do begin Name := 'Fld2Indx'; Fields := 'Field2'; Options := [ixCaseInsensitive]; end; CreateTable; 這是delphi 5 的範例(截錄) 照著code 執行 但是資料庫只有第一個欄位是主鑑,但是候選鍵沒有產生 請top 的網友 幫幫忙(對不起 我有爬過文章了 但是找不到才問的) 謝謝
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-12-11 21:53:16 IP:202.39.xxx.xxx 未訂閱
什麼是候選鍵? 奇怪的名詞.  ---
azurecloud
中階會員


發表:52
回覆:108
積分:92
註冊:2003-09-04

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-12-11 23:09:44 IP:163.13.xxx.xxx 未訂閱
Hi, GiGi 您好:     先解答 hagar 版主的一些問題,舉一例子   假設有  身份証字號、學號、姓名、姓別  四個欄位的資料表   1.Super Key(SK):指的是可以鎖定到單一筆資料的[欄位集合],例:      [身份証字號]、[身份証字號+姓名]、[身份証字號+姓名+姓別]…   2.候選鍵(CK):在 SK 當中同為"最小"的集合,以此例而言符合的有      [身份証字號]、[學號] 其他的不是過多就是會重複   3.主鍵(PK):由候選鍵中可隨便選一做為主鍵… 我的建議是,山不轉路轉,何必執著於某一特定的語法呢?以純 SQL 來說 CREATE TABLE [dbo].[TEST] (         [TEST1] [varchar] (1) ,         [TEST2] [varchar] (3) ,         [TEST3] [varchar] (255) NOT NULL PRIMARY KEY , [TEST4] [int] , [TEST5] [char] (10) NOT NULL UNIQUE ) ON [PRIMARY] GO 您可以用例如 TQuery 物件將上述 SQL 語法送出而建立一資料表,那 TEST3 就是主鍵,TEST5 就可以是候選鍵啦! 希望對您有幫助。 ========================
我要努力向上
========================
GiGi
一般會員


發表:17
回覆:21
積分:7
註冊:2002-10-19

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-12-12 00:19:43 IP:203.73.xxx.xxx 未訂閱
謝謝 azurecloud回答 真的有時候固執了點 只會用一個方法解決 再次說聲謝謝了
系統時間:2024-07-01 8:44:52
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!