- 數碼問答
- 答案列表
設置主鍵 sql:sql資料庫設置主鍵[朗讀]
創建表--------------------------------------------------------------------------------createtablenull一般省略.primarykey--是本表的主鍵.constraint--是對表里的欄位添加約。
問題:回答:functionaddprimarykey()'添加主鍵到[編號]欄位dimstrsqlasstringstrsql="altertable表1addconstraintprimary_key"_&"primarykey(編號)"。
首先一個表是不能有兩個主鍵的.但是可以有兩個欄位組合成一個主鍵,這就是為什麼有時候表里為什麼會有兩個欄位都有主鍵的標誌,那是因為他們組合成了一個主鍵了.我們可以先刪除了原來的主鍵再用類似下面sql語句建立:altertable你的表名addconstraintpk_nameprimarykey(欄位1,欄位2)或者在表設計器裡面按住ctrl選中要設置主鍵的兩列再設置主鍵就ok了?
主鍵的目的就是和其他表進行關聯,小系統建議用,大型系統不建議設置主鍵,也不建議設置外鍵、觸發器、存儲過程!因為大型系統數據是海量的,設置這些東西會使系統變得異常緩慢(一般是幾何基數的增長,比如加上主外鍵的10萬條記錄備份需要1分鐘,上升到100萬條就要20多分鐘了,如果再多就無法處理了,有些大型系統還要設置數據倉庫要跟業務數據分離(也就是業務數據定期導入到數據倉庫中供特殊查詢服務,經常性的業務才會保留在業務資料庫中),否則就是不設置這些東西也無法正常運行),這些資料庫功能應該交給客戶端或者中間件去完成。
根據你的問題,可以這樣做:1、在已經建好的表上添加主鍵:altertablebaddconstrantid_pkprimarykey(id);2、在創建表時就設置好主鍵:createtableb(idnumber(2),numbervarchar2(10),agenumber(3),gradevarchar2(3),constraintid_pkprimarykey(id));