<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          SQLServer 中的5種約束,來(lái)了解一下吧!

          共 1291字,需瀏覽 3分鐘

           ·

          2020-11-07 15:10


          一直在關(guān)注軟件設(shè)計(jì)方面,數(shù)據(jù)庫(kù)方面就忽略了很多,最近在設(shè)計(jì)數(shù)據(jù)庫(kù)時(shí)遇到了一些小麻煩,主要是數(shù)據(jù)庫(kù)中約束和性能調(diào)優(yōu)方面的應(yīng)用,以前在學(xué)習(xí) Sql Server 2000,還有后來(lái)的 Sql Server 2005 數(shù)據(jù)庫(kù)時(shí)進(jìn)行了總結(jié),現(xiàn)在也暴露出了一些問(wèn)題,由于學(xué)習(xí)的不深入,有一段時(shí)間不使用,就會(huì)忘記一些東西,所以為了讓自己的知識(shí)更加牢固,還是要經(jīng)常拿出來(lái),看看。

          那閑話少說(shuō)進(jìn)入我們今天的主題, SQLServer 中有五種約束, Primary Key 約束、 Foreign Key 約束、 Unique 約束、 Default 約束和 Check 約束,今天使用SQL Server2008 來(lái)演示下這幾種約束的創(chuàng)建和使用的方法。


          1 、 Primary Key 約束

          在表中常有一列或多列的組合,其值能唯一標(biāo)識(shí)表中的每一行。

          這樣的一列或多列成為表的主鍵(PrimaryKey)。一個(gè)表只能有一個(gè)主鍵,而且主鍵約束中的列不能為空值。只有主鍵列才能被作為其他表的外鍵所創(chuàng)建。

          創(chuàng)建主鍵約束可以右鍵單擊表,選擇設(shè)計(jì) 。


          選中要?jiǎng)?chuàng)建主鍵的列,然后單擊上面的小鑰匙。


          也可以右鍵需要?jiǎng)?chuàng)建主鍵的列,然后單擊小鑰匙。


          2 、 Foreign Key 約束

          外鍵約束是用來(lái)加強(qiáng)兩個(gè)表(主表和從表)的一列或多列數(shù)據(jù)之間的連接的。創(chuàng)建外鍵約束的順序是先定義主表的主鍵,然后定義從表的外鍵。也就是說(shuō)只有主表的主鍵才能被從表用來(lái)作為外鍵使用,被約束的從表中的列可以不是主鍵,主表限制了從表更新和插入的操作。

          右鍵單擊需要設(shè)置外鍵的列(此時(shí)的表是作為從表在外鍵中出現(xiàn)),選擇關(guān)系。


          接下來(lái)點(diǎn)擊添加 --> 表和列規(guī)范。


          ?在主鍵表中選擇主表和主表的主鍵列。


          設(shè)置完后保存即可。

          3 、 Unique 約束

          唯一約束確保表中的一列數(shù)據(jù)沒(méi)有相同的值。與主鍵約束類似,唯一約束也強(qiáng)制唯一性,但唯一約束用于非主鍵的一列或者多列的組合,且一個(gè)表可以定義多個(gè)唯一約束。

          右鍵單擊要設(shè)置的列選擇索引 / 鍵。



          然后單擊添加按鈕。


          選擇需要設(shè)置的列,可以是一列也可以是多列的組合。



          關(guān)閉并保存設(shè)置。

          4 、 Default 約束

          若在表中定義了默認(rèn)值約束,用戶在插入新的數(shù)據(jù)行時(shí),如果該行沒(méi)有指定數(shù)據(jù),那么系統(tǒng)將默認(rèn)值賦給該列,如果我們不設(shè)置默認(rèn)值,系統(tǒng)默認(rèn)為 NULL 。

          以學(xué)生信息表為例,在表設(shè)計(jì)器中,為性別 sex 列填寫(xiě)默認(rèn)值男。




          5 、 Check 約束

          Check 約束通過(guò)邏輯表達(dá)式來(lái)判斷數(shù)據(jù)的有效性,用來(lái)限制輸入一列或多列的值的范圍。在列中更新數(shù)據(jù)時(shí),所要輸入的內(nèi)容必須滿足 Check 約束的條件,否則將無(wú)法正確輸入。

          以學(xué)生信息表中的 sex 為例,我們要限制 sex 列的值只能為男或女。




          關(guān)閉并保存設(shè)計(jì)。


          原文鏈接:cnblogs.com/PatrickLiu/p/10607235.html



          瀏覽 43
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  色婷婷视频在线播放 | 美女操逼的网站 | 亚洲黄色毛片电影院 | 特级黄色录像国产 | 免费A√在线播放 |