国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

openGauss中創(chuàng)建唯一索引和創(chuàng)建唯一約束的區(qū)別

這篇具有很好參考價值的文章主要介紹了openGauss中創(chuàng)建唯一索引和創(chuàng)建唯一約束的區(qū)別。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

今天一個一起搬磚的兄弟同事過來問,為什么他的索引刪不掉?我過去看了下:
執(zhí)行腳本:

drop index constraint_unique

報錯如下:
openGauss中創(chuàng)建唯一索引和創(chuàng)建唯一約束的區(qū)別

執(zhí)行時出錯 確認(rèn)要繼續(xù)執(zhí)行嗎?
單擊“詳細(xì)信息”了解詳情。

SQL錯誤碼: = 2BP01
ERROR: cannot drop index constraint_unique because constraint constraint_unique on table t1 requires it
Hint: You can drop constraint constraint_unique on table t1 instead.
行號: 19

報錯大意是:不能刪除索引constraint_unique因為約束constraint_unique在表t1上引用了它。
暗示:你可以刪除約束constraint_unique在表t1上來代替它。
于是我執(zhí)行drop constraint的語句,刪除成功。
alter table t1 drop CONSTRAINT constraint_unique;
究其原因,該索引并不是通過create index直接創(chuàng)建的,而是在創(chuàng)建唯一約束的時候順帶創(chuàng)建的。實(shí)驗發(fā)現(xiàn),openGauss在創(chuàng)建唯一約束的時候,同時會創(chuàng)建一個唯一索引,當(dāng)然在刪除唯一約束的同時,也會刪除掉創(chuàng)建唯一約束時附帶創(chuàng)建的唯一索引;
openGauss中創(chuàng)建唯一索引和創(chuàng)建唯一約束的區(qū)別

但是在創(chuàng)建唯一索引的時候,并不會同時顯式創(chuàng)建一個唯一約束。通過創(chuàng)建索引直接創(chuàng)建的索引,好像有點(diǎn)繞咔咔咔,則可以直接通過drop index的方式刪除。
openGauss中創(chuàng)建唯一索引和創(chuàng)建唯一約束的區(qū)別

再對比下創(chuàng)建唯一索引和唯一約束后,在插入重復(fù)數(shù)據(jù)時的區(qū)別:

  1. 唯一索引:插入重復(fù)數(shù)據(jù)時報錯,插入時也報唯一約束沖突
    openGauss中創(chuàng)建唯一索引和創(chuàng)建唯一約束的區(qū)別

ERROR: duplicate key value violates unique constraint “idx_unique”
Detail: Key (c1)=(1) already exists.

  1. 唯一約束:
    openGauss中創(chuàng)建唯一索引和創(chuàng)建唯一約束的區(qū)別

ERROR: duplicate key value violates unique constraint “constraint_unique”
Detail: Key (c1)=(1) already exists.
那么約束是否存在呢?我對于增加唯一約束的場景,嘗試執(zhí)行 drop constraint的操作,系統(tǒng)會報錯constraint不存在,這說明確實(shí)沒有創(chuàng)建約束。
openGauss中創(chuàng)建唯一索引和創(chuàng)建唯一約束的區(qū)別

執(zhí)行時出錯 確認(rèn)要繼續(xù)執(zhí)行嗎?
單擊“詳細(xì)信息”了解詳情。
SQL錯誤碼: = 42704
ERROR: constraint “idx_unique” of relation “test” does not exist
行號: 2

來自:如魚得水文章來源地址http://www.zghlxwxcb.cn/news/detail-405835.html

到了這里,關(guān)于openGauss中創(chuàng)建唯一索引和創(chuàng)建唯一約束的區(qū)別的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Vue 2和Vue 3路由Router創(chuàng)建的區(qū)別簡記(在main.js文件中引入的區(qū)別和router的js文件中創(chuàng)建語法的區(qū)別)

    Vue 2和Vue 3路由Router創(chuàng)建的區(qū)別簡記(在main.js文件中引入的區(qū)別和router的js文件中創(chuàng)建語法的區(qū)別)

    1、版本的搭配: Vue 2到Vue 3的改版升級,同樣的帶來Vue Router的升級。創(chuàng)建Vue項目之后,我們可以在package.json文件中看到,Vue 2創(chuàng)建的項目往往是與Vue Router 3.X版本搭配的,而Vue 3創(chuàng)建的項目與Vue Router 4.X版本搭配。 Vue 3搭配Vue Router 4.X版本: Vue 2搭配Vue Router3.X版本: 2、在main

    2024年02月08日
    瀏覽(87)
  • SQL語句 -非空約束 - 唯一約束 - 主鍵約束 - 默認(rèn)約束 -外鍵約束

    SQL語句 -非空約束 - 唯一約束 - 主鍵約束 - 默認(rèn)約束 -外鍵約束

    約束的概念 : 約束是作用于表中列上的規(guī)則,用于限制加入表的數(shù)據(jù) 約束的存在保證了數(shù)據(jù)庫中數(shù)據(jù)的正確性、有效性和完整性 約束的分類如下 : 約束名稱 描述 非空約束 保證列中所有數(shù)據(jù)不能有null值 NOT NULL 唯一約束 保證列中所有數(shù)據(jù)各不相同 UNIQUE 主鍵約束 主鍵

    2024年01月16日
    瀏覽(20)
  • 【?MySQL | 約束(一)】概念 | 非空 | 唯一 | 主鍵 | 自增長約束

    【?MySQL | 約束(一)】概念 | 非空 | 唯一 | 主鍵 | 自增長約束

    ?歡迎來到小K的MySQL專欄,本節(jié)將為大家?guī)鞰ySQL約束的概念 | 非空約束 | 唯一約束 | 主鍵約束 | 自增長約束的分享 ? 1. 約束(Constraint)概念 1.1 為什么需要約束 對于已經(jīng)創(chuàng)建好的表,雖然字段的數(shù)據(jù)類型決定了所能存儲的數(shù)據(jù)類型,但是表中所存儲的數(shù)據(jù)是否合法并沒有進(jìn)行

    2024年02月16日
    瀏覽(18)
  • PostgreSQL 重復(fù)鍵違反唯一約束

    直接在數(shù)據(jù)表中插入了幾條測試數(shù)據(jù),后又手動刪除,導(dǎo)致后面插入數(shù)據(jù)的時候報主鍵沖突: ERROR: duplicate key value violates unique constraint “tableName_pkey” DETAIL: Key (id)=(1) already exists. 關(guān)于自增字段,postgresql中沒有自增字段,用的是sequence。 即使采用INSERT IGNORE的方式或者REPLACE

    2024年02月13日
    瀏覽(98)
  • SQL PRIMARY KEY 約束- 唯一標(biāo)識表中記錄的關(guān)鍵約束

    SQL NOT NULL 約束用于強(qiáng)制確保列不接受 NULL 值。這意味著該字段始終包含一個值,而不允許插入新記錄或更新記錄時不提供此字段的值。 以下 SQL 確保在創(chuàng)建 \\\"Persons\\\" 表時,“ID”、“LastName” 和 “FirstName” 列將不接受 NULL 值: 要在已創(chuàng)建的 \\\"Persons\\\" 表上的 \\\"Age\\\" 列上創(chuàng)建 NOT

    2024年02月05日
    瀏覽(24)
  • 【前端面試3+1】12 toktn驗證過程、面向?qū)ο筇匦?、webpack和vite的區(qū)別、【字符串中的第一個唯一字符】

    【前端面試3+1】12 toktn驗證過程、面向?qū)ο筇匦?、webpack和vite的區(qū)別、【字符串中的第一個唯一字符】

    用戶登錄:用戶提供用戶名和密碼進(jìn)行登錄。 服務(wù)器驗證:服務(wù)器接收到用戶提供的用戶名和密碼,進(jìn)行驗證。 生成token:如果用戶名和密碼驗證通過,服務(wù)器會生成一個token,通常包含一些加密的信息,如用戶ID、過期時間等。 返回token:服務(wù)器將生成的token返回給客戶端(

    2024年04月18日
    瀏覽(23)
  • 【postgresql 基礎(chǔ)入門】表的約束(二) 唯一unique、非空not null、check、exclusion約束,原理機(jī)制以及多列組合約束

    ? 專欄內(nèi)容 : postgresql內(nèi)核源碼分析 手寫數(shù)據(jù)庫toadb 并發(fā)編程 個人主頁 :我的主頁 管理社區(qū) :開源數(shù)據(jù)庫 座右銘:天行健,君子以自強(qiáng)不息;地勢坤,君子以厚德載物. 在數(shù)據(jù)庫中,數(shù)據(jù)類型可以限制數(shù)據(jù)存儲的大小,也能在一定程度上限制存儲的數(shù)據(jù)種類,但是對于數(shù)

    2024年04月08日
    瀏覽(18)
  • Mysql-InnoDB索引:普通索引、主鍵索引、唯一索引、組合索引

    Mysql-InnoDB索引:普通索引、主鍵索引、唯一索引、組合索引

    事務(wù)方面 InnoDB支持事務(wù),MyISAM不支持事務(wù)。這是Mysql將默認(rèn)存儲引擎從MyISAM變成InnoDB的重要原因之一 外鍵方面 InnoDB支持外鍵,而MyISAM不支持。對一個包含外鍵的InnoDB表轉(zhuǎn)為MyISAM會失敗 索引層面 InnoDB是聚集(聚簇)索引,MyISAM是非聚集(非聚簇)索引。 MyISAM 支持 FULLTEXT 類型

    2024年02月03日
    瀏覽(50)
  • SqlServer設(shè)置唯一鍵/索引

    SqlServer設(shè)置唯一鍵/索引

    1、首先,打開sqlserver軟件,右鍵點(diǎn)擊要設(shè)計的表選擇設(shè)計,選中一列右鍵設(shè)置主鍵,該列就設(shè)置成了主鍵了,刪除主鍵同理,設(shè)置好了前面有一把鑰匙。 ? 2、設(shè)置唯一鍵和索引鍵也是右鍵選中的列(空白的地方也行),點(diǎn)擊‘索引/鍵’。 ? 3、這里注意,剛剛選擇的列不是

    2024年02月16日
    瀏覽(86)
  • openGauss學(xué)習(xí)筆記-204 openGauss 數(shù)據(jù)庫運(yùn)維-常見故障定位案例-重建索引失敗

    openGauss學(xué)習(xí)筆記-204 openGauss 數(shù)據(jù)庫運(yùn)維-常見故障定位案例-重建索引失敗

    204.1 重建索引失敗 204.1.1 問題現(xiàn)象 當(dāng)Desc表的索引出現(xiàn)損壞時,無法進(jìn)行一系列操作,可能的報錯信息如下。 204.1.2 原因分析 在實(shí)際操作中,索引會由于軟件或者硬件問題引起崩潰。例如,當(dāng)索引分裂完發(fā)生磁盤空間不足、出現(xiàn)頁面損壞等問題時,會導(dǎo)致索引損壞。 204.1.3 處

    2024年01月24日
    瀏覽(29)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包