Sql Server 主鍵由字母數字組成並按照數字自動增長


   在SQL SERVER 中如果我們想要使主鍵按照一定規則自動增長我們可以這樣做:

     

          這里我們新建一張研究表,里面有研究ID,研究人員姓名和研究醫院.

           我們使SicentificId 設為主鍵 並且從1開始每次遞加1.

         這里要更各位強調一下使用Identity 關鍵字的前提要求是 數據類型必須為 int ,decimal,bigint,smallint等數值類型.

         但是很多時候只有一個數字編號並不能滿足我們的要求, 這里筆者的需求就是編號要按照字母加數字的組合,並且字母固定且數字每次遞增1.

         那么我們該怎么做呢?本來我以為可以直接用數據庫約束來做,但是嘗試很多次都失敗了.

         現在如果要滿足要求就需要對數據庫表做一下修該。

       我們把ScientificA 表的ScientificId 的數據類型改為varchar(15).

      然而我們如何來保證數據ID按照一定的規則自增呢,首先我們的字母前綴是固定的,這里使用'yanjiu' 作為字母前綴。例如這樣 'yanjiu100000'   。

     下一個ID 就應該是'yanjiu100001' ,為達到我們的構想,只使用一條sql 語句是不能實現的,我們需要來編寫多條.

         

        這里是筆者寫的sql 語句,可以滿足要求。

        結果如下:

       

      有需要的朋友可以參考下,也可以按照需求改為存儲過程,觸發器等.

    歡迎各位提出意見.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM