<del id="d4fwx"><form id="d4fwx"></form></del>
      <del id="d4fwx"><form id="d4fwx"></form></del><del id="d4fwx"><form id="d4fwx"></form></del>

            <code id="d4fwx"><abbr id="d4fwx"></abbr></code>
          • mysql怎么看外鍵名 mysql怎么查看外鍵名

            在MySQL中如何設(shè)置主鍵和外鍵

            工具/原料

            成都創(chuàng)新互聯(lián)公司專注于晉寧網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供晉寧營(yíng)銷型網(wǎng)站建設(shè),晉寧網(wǎng)站制作、晉寧網(wǎng)頁(yè)設(shè)計(jì)、晉寧網(wǎng)站官網(wǎng)定制、小程序制作服務(wù),打造晉寧網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供晉寧網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。

            電腦??MySQL

            方法/步驟

            設(shè)置主鍵:

            1、通過(guò)終端進(jìn)入到mysql命令行工具。

            2、通過(guò)use關(guān)鍵字進(jìn)行到目標(biāo)數(shù)據(jù)庫(kù)里。

            3、如原表已有主鍵,先把原來(lái)的主鍵刪除掉,通過(guò)DROPPRIMARYKEY命令:ALTERTABLE`jingyan`DROPPRIMARYKEY;。

            4、主鍵已經(jīng)沒(méi)有了。

            5、通過(guò)命令:ADDPRIMARYKEY來(lái)添加ALTERTABLE`jingyan`ADDPRIMARYKEY(`id`)。

            6、輸入后按下回車鍵即可看到queryok執(zhí)行成功的字符。

            7、回到數(shù)據(jù)庫(kù)的可視化工具,即可顯示現(xiàn)在的表在id列上添加了主鍵了。

            設(shè)置外鍵:

            1、創(chuàng)建好主從表。

            2、選擇主表,點(diǎn)擊設(shè)計(jì)表,進(jìn)入到表設(shè)計(jì)界面。

            3、點(diǎn)擊外鍵,進(jìn)入到外鍵設(shè)置界面。

            4、先設(shè)置外鍵名稱和選擇主表的外鍵字段。

            5、然后在設(shè)置外鍵字段對(duì)應(yīng)從表的數(shù)據(jù)庫(kù)、表名和字。

            6、點(diǎn)擊保存就完成外鍵設(shè)置了。

            mysql 查看表是否被引用外鍵

            select * from INFORMATION_SCHEMA.KEY_COLUMN_USAGE where REFERENCED_TABLE_NAME='box_alipay_trade_record';

            mysql怎么定義外鍵

            定義外鍵的方法和詳細(xì)的操作步驟如下:

            1、第一步,創(chuàng)建一個(gè)主從表,如下圖所示,然后進(jìn)入下一步。

            2、其次,完成上述步驟后,選擇主表,然后單擊設(shè)計(jì)表進(jìn)入表設(shè)計(jì)界面,如下圖所示,然后進(jìn)入下一步。

            3、接著,完成上述步驟后,單擊外鍵進(jìn)入外鍵的設(shè)置界面,如下圖所示,然后進(jìn)入下一步。

            4、然后,完成上述步驟后,設(shè)置外鍵名稱,然后選擇主表的外鍵字段,如下圖所示,然后進(jìn)入下一步。

            5、隨后,完成上述步驟后,設(shè)置與數(shù)據(jù)庫(kù),表名稱和從屬表的單詞相對(duì)應(yīng)的外鍵字段,如下圖所示,然后進(jìn)入下一步。

            6、最后,完成上述步驟后,單擊保存即可,如下圖所示。這樣,問(wèn)題就解決了。

            SQL數(shù)據(jù)庫(kù)的、外鍵和查詢

            增加外鍵

            創(chuàng)建表的時(shí)候增加外鍵:在所有的表字段之后,使用foreign key(外鍵字段) references 外部表(主鍵字段)

            在新增表之后增加外鍵:修改表結(jié)構(gòu),使用alter table 表名 add [constraint 外鍵名字] foreign key(外鍵字段) references 父表(主鍵字段);

            修改外鍵刪除外鍵

            alter table 表名 drop foreign key 外鍵名;

            外鍵條件

            外鍵要存在,首先必須保證表的存儲(chǔ)引擎是innodb

            列類型必須與父表的主鍵類型一致

            一張表中的外鍵名字不能重復(fù)

            增加外鍵的字段數(shù)據(jù)已經(jīng)存在,必須保證數(shù)據(jù)與父表主鍵要求對(duì)應(yīng)

            外鍵約束

            有三種約束模式

            district:嚴(yán)格模式(默認(rèn)的)

            cascade:級(jí)聯(lián)模式

            set null:置空模式

            語(yǔ)法:foreign key(外鍵字段) references 父表(主鍵字段) on delete 模式 on update 模式;

            聯(lián)合查詢

            基本語(yǔ)法:

            select 語(yǔ)句1

            union [union 選項(xiàng)]

            select 語(yǔ)句2……

            union 選項(xiàng)

            all:保留所有,不管重復(fù)

            distinct:去重,默認(rèn)的

            子查詢(sub query)

            按位置分類

            from子查詢

            where子查詢

            exists子查詢

            按結(jié)果分類

            標(biāo)量子查詢

            列子查詢

            行子查詢

            表子查詢

            子查詢

            列子查詢

            =any等價(jià)于in; -- 其中一個(gè)即可

            any等價(jià)于some; -- 二者是一樣的

            =all為全部

            -- 創(chuàng)建外鍵

            create table my_foreign1(

            idint primary key auto_increment,

            name varchar (20)not null comment

            '學(xué)生姓名',

            c_idint comment'班級(jí)id',

            -- 增加外鍵

            foreign key(c_id)references

            my_class(id)

            )charset utf8;

            -- 創(chuàng)建表

            create table my_foreign2(

            idint primary key auto_increment,

            name varchar (20)not null comment

            '學(xué)生姓名',

            c_idint comment'班級(jí)id'? -- 普通字段

            )charset utf8;

            -- 增加外鍵

            alter table my_foreign2add

            -- 指定外鍵的名字

            constraint student_class_1? -- 可以指定多個(gè)外鍵 但是名字不能相同

            -- 指定外鍵的字段

            foreign key(c_id)

            -- 引用父表主鍵

            references my_class(id);

            -- 刪除外鍵

            alter table my_foreign1drop

            foreign key my_foreign1_ibfk_1;? -- my_foreign1_ibfk_1 通過(guò)外鍵的名字來(lái)刪

            -- 插入數(shù)據(jù);外鍵字段在父表不存在

            insert into my_foreign2values (

            null,'郭富城',4);? -- 沒(méi)有4號(hào)班級(jí)

            insert? into my_foreign2values (

            null,'項(xiàng)羽',1);

            insert? into my_foreign2values (

            null,'劉邦',2);

            insert? into my_foreign2values (

            null,'韓信',3);

            -- 更新父表的記錄

            update my_classset id=4 where id=1;? -- 失?。籭d=1記錄已經(jīng)被學(xué)生引用

            update my_foreign2set c_id=2 where id=4;? -- 更新

            update my_classset id=4 where id=3;? -- 可以;沒(méi)有學(xué)生引用此班級(jí)

            -- mysql中添加外鍵約束遇到一下情況:

            -- cannot add foreign key constraint

            -- 出現(xiàn)這個(gè)問(wèn)題的原因是,外鍵的使用:

            -- 1. 外鍵字段不能為該表的主鍵;

            -- 2. 外鍵字段參考字段必須為參考表的主鍵

            -- 插入數(shù)據(jù)

            insert into my_foreign1values (

            null,'馬超','3'

            );

            -- 增加外鍵

            alter table my_foreign1add

            foreign key(c_id)references

            my_class(id);? -- 失?。灰?yàn)闆](méi)有3號(hào)班了

            -- 創(chuàng)建外鍵,指定模式;刪除置空;更新級(jí)聯(lián)

            create table my_foreign3(

            idint primary key auto_increment,

            name varchar (20)not null,

            c_idint,

            -- 增加外鍵

            foreign key (c_id)

            -- 引用表

            references my_class(id)

            -- 指定刪除模式

            on delete set null

            -- 指定更新模式

            on update cascade

            )charset utf8;

            -- 插入數(shù)據(jù)

            insert into my_foreign3values (

            null,'劉備',1),

            (null,'曹操',1),

            (null,'孫權(quán)',1),

            (null,'祝賀量',2),

            (null,'周瑜',2);

            -- 解除My_foreign2表的外鍵

            alter table my_foreign2drop

            foreign key student_class_1;

            -- 更新父表主鍵

            update my_classset id=3 where id=1;

            -- 刪除父表主鍵

            delete from? my_classwhere id=2;

            -- 聯(lián)合查詢

            select * from my_class

            union? -- 默認(rèn)去重

            select * from my_class;

            select * from my_class

            union all? -- 不去重

            select * from my_class;

            select id,c_name,roomfrom my_class

            union all? -- 不去重

            select name,number,idfrom my_student;

            -- 需求;男生升序;女生降序(年齡)

            (select * from my_student

            where sex='男'

            order by ageasc limit9999999)

            union

            (select * from my_student

            where sex='女'

            order by agedesc limit9999999);

            select * from my_studentwhere

            c_id=(

            -- 標(biāo)量子查詢

            select idfrom my_classwhere

            c_name='python1903');-- id一定只有一個(gè)值(一行一列)

            insert into my_classvalues (1,

            'python1907','B407');

            -- 列子查詢

            select * from my_studentwhere

            c_idin(select idfrom my_class);

            -- any,some,all

            select * from my_studentwhere

            c_id=any(select idfrom my_class);

            select * from my_studentwhere

            c_id=some(select idfrom my_class);

            select * from my_studentwhere

            c_id=all(select idfrom my_class);

            select * from my_studentwhere

            c_id!=any(select idfrom my_class);? -- 所有結(jié)果(null除外)

            select * from my_studentwhere

            c_id!=some(select idfrom my_class);? -- 所有結(jié)果(null除外)

            select * from my_studentwhere

            c_id!=all(select idfrom my_class);? -- 所有2號(hào)班級(jí)(null除外)

            select * from my_studentwhere

            age=(select max(age)from

            my_student)

            and

            height=(select max(height))from

            my_student);

            -- 行子查詢

            select * from my_student

            -- (age,height)稱之內(nèi)為行元素

            where (age,height)=(select max(

            age),max(height)from my_student);

            update my_studentset height=188

            where name='王五';

            select * from my_studentorder by

            agedesc,heightdesc limit1;

            select * from my_studentorder by

            heightdesc;

            -- 表子查詢

            select * from my_studentgroup by

            c_idorder by heightdesc;? -- 每個(gè)班選出第一個(gè)學(xué)生再按身高排序

            select * from (select * from

            my_studentorder by heightdesc)

            as studentgroup by student.c_id;

            新聞標(biāo)題:mysql怎么看外鍵名 mysql怎么查看外鍵名
            分享鏈接:http://www.jbt999.com/article44/hgcshe.html

            成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、品牌網(wǎng)站建設(shè)、搜索引擎優(yōu)化、外貿(mào)建站、微信小程序、用戶體驗(yàn)

            廣告

            聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:[email protected]。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

            綿陽(yáng)服務(wù)器托管

              <del id="d4fwx"><form id="d4fwx"></form></del>
              <del id="d4fwx"><form id="d4fwx"></form></del><del id="d4fwx"><form id="d4fwx"></form></del>

                    <code id="d4fwx"><abbr id="d4fwx"></abbr></code>
                  • 免费直接看Aⅴ网站 | 欧美日韩爱爱 | 日韩一区二区免费视频 | 五月丁香乱能高清 | 操屄视频免费看 |