Re: [SQL ] 一些關於SQL Server的問題

看板Database作者時間17年前 (2008/03/16 18:50), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/12 (看更多)
※ 引述《Gosyujinsama (御主人樣)》之銘言: : ※ 引述《Gosyujinsama (御主人樣)》之銘言: : : 推 jameswiki:看不懂問題,你自動編號是要做PK的嗎?若是,別學access用 03/16 01:38 : : 推 jameswiki:別學access的用法:自動編號當PK 03/16 01:41 : 看來我的問題有點言不及意 orz : 我是要問說,我現在要建立一個新資料表, : 然後這個資料表的某些欄位有以下的要求。 : 1. 某個要自動編號的設PK : (這個問題好像跟下面不太一樣, : 是直接設int然後PK就好?) 關於第一點,除非必要,不然不要用自動編號, 建議你用二個欄位處理,第一個欄位,用Uni形態,預設值使用 newid()函數, 第二個欄位,用date 型態,預設值用getdate()型態, newid()可以產生36位元唯一識別碼,用來當PK, 第二個欄位則存入insert時間 如果你需要編號,則自己再弄一個第三欄位,由使用者可以動態編輯 這個編號欄位,讓使用者或程式自己去訂編號即可,也就是把編號跟PK鍵拆開, 日後user要改變編號型態:如原本為0001-->改成依部門分MIS-001,Sales-001 ,都不會影響到你PK參考值,而必需重寫 : 2. 某個欄位要>=1 這個看不懂要做什麼的 : 3. 某個日期欄位強制在當天以前 這個看不懂,但可由程式控制 : 4. 某個欄位不能超過某個值 這個也可由程式控制,或寫成Trigger,但是在程式插入前或update資料前 來做檢查,若有錯誤提示user會比做Trigger好一點 : 所以SQL Server應該有一個指令能夠在建立資料表時, : 設定範圍等等的東西,我要問的是那個指令是什麼, 若是要建立資料表,先設資料範圍,可參考Create Table指令 ※ 編輯: jameswiki 來自: 220.134.154.61 (03/16 18:51)
文章代碼(AID): #17tFjQzR (Database)
討論串 (同標題文章)
本文引述了以下文章的的內容:
以下文章回應了本文
完整討論串 (本文為第 3 之 12 篇):
文章代碼(AID): #17tFjQzR (Database)