mysql關系怎么建立 mysql怎么建立連接

mysql數(shù)據(jù)表之間如何建立關系

你分別給“評論表”(表A)和“文章表”(表B)建立了一個主鍵,數(shù)據(jù)表是存儲多條記錄,而主鍵是區(qū)分記錄的唯一性的,你將 表A 的主鍵id放到 表B 中作為外鍵(aid),你就已經(jīng)將兩表通過 B表(aid) 建立了一種關系,就好像母子兩人,因為有血緣關系,就可以知道一人是另一個人的母親,兩個表有關系了就可以互相知道了;

成都創(chuàng)新互聯(lián)從2013年創(chuàng)立,是專業(yè)互聯(lián)網(wǎng)技術服務公司,擁有項目成都網(wǎng)站設計、做網(wǎng)站網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元榆樹做網(wǎng)站,已為上家服務,為榆樹各地企業(yè)和個人服務,聯(lián)系電話:18982081108

B表里有了aid必須是A表中存在的,就像兒子肯定有母親的,所有一文章記錄有評論(aid),那aid就能在A表中找到,找到的這條評論就是這篇文章的評論;

因為文章和評論是一對多的關系,像LZ那樣文章表冗余就會比較多;個人覺得將文章的主鍵作為評論表的外鍵比較好;

如何建立mysql表之間的關系

MySQL創(chuàng)建關聯(lián)表可以理解為是兩個表之間有個外鍵關系,但這兩個表必須滿足三個條件

1.兩個表必須是InnoDB數(shù)據(jù)引擎

2.使用在外鍵關系的域必須為索引型(Index)

3.使用在外鍵關系的域必須與數(shù)據(jù)類型相似

下面分別建兩個表來說明一下:

Create

TABLE

IF

NOT

EXISTS

`books`

`book_id`

smallint(6)

NOT

NULL

auto_increment

COMMENT

‘書籍編號',

`book_name`

char(20)

NOT

NULL

COMMENT

’書名‘,

怎樣在mysql中設計好友關系庫表

1.建立用戶信息表

create table userinfo(id int(4) not null primary key, name varchar(20) not null unique key)engine=innodb default charset=utf8;

2.建立好友關系表

create table friend(uid int(4) not null, foreign key(uid) references

userinfo(id),fid int(4) not null, foreign key(fid) references

userinfo(id),unique key(uid,fid))engine=innodb default charset=utf8;

3.追加測試數(shù)據(jù)(滿足uidfid條件)

insert userinfo values(1111---9999,'namea---namei’);

insert friend values(1111,4444---6666);

insert friend values(5555,6666---9999);

4.查詢好友(5555的好友)

select * from friend where uid=5555 or fid=5555;

+-------+------+

| uid | fid |

+-------+------+

| 1111 | 5555 |

| 5555 | 6666 |

| 5555 | 7777 |

| 5555 | 8888 |

| 5555 | 9999 |

+-------+--------+

5.問題:

5.1.userinfo中的id和name不為null,且不可重復:table設計可以做到

5.2.friend中的uid和fid均不為null,且都來自于userinfo的id:table設計可以實現(xiàn)

5.3.(uid,fid)組合不可重復:table設計可以完成

5.4.好友關系的表達時,(1111,5555)和(5555,1111)有冗余,也會出現(xiàn)(1111,1111)這樣的數(shù)據(jù):這個在table設計實現(xiàn)比較麻煩,需要在程序層面實現(xiàn),也即增加限制條件uidfid即可

6.結果:

table設計達不到要求,或者較難達到要求時,可以在程序層面予以彌補。

文章題目:mysql關系怎么建立 mysql怎么建立連接
文章起源:http://www.muchs.cn/article0/doeogio.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導航、微信公眾號自適應網(wǎng)站用戶體驗、小程序開發(fā)域名注冊

廣告

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

商城網(wǎng)站建設