mysql設(shè)置UUID為主鍵需要先將數(shù)據(jù)類型設(shè)置為VARCHAR(36),然后插入數(shù)據(jù)的時(shí)候用UUID函數(shù)插入U(xiǎn)UID。下面我用win10系統(tǒng)下的CMD命令行具體演示一下:
創(chuàng)新互聯(lián)公司提供成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、網(wǎng)頁設(shè)計(jì),成都品牌網(wǎng)站建設(shè),廣告投放平臺(tái)等致力于企業(yè)網(wǎng)站建設(shè)與公司網(wǎng)站制作,10余年的網(wǎng)站開發(fā)和建站經(jīng)驗(yàn),助力企業(yè)信息化建設(shè),成功案例突破上千家,是您實(shí)現(xiàn)網(wǎng)站建設(shè)的好選擇.
1、打開CMD,輸入mysql -uroot -p命令連接mysql,如下圖所示
2、通過create創(chuàng)建表,指定ID為varchar(36),并設(shè)置為主鍵,如下圖所示
3、在插入數(shù)據(jù)的時(shí)候,調(diào)用uuid()函數(shù)往主鍵字段里插入uuid值,如下圖所示
4、最后查詢插入的數(shù)據(jù)就可以看到id主鍵列存放的是uuid類型了,如下圖所示
在mysql中可以把UUID作為邏輯主鍵,物理主鍵依然使用自增ID
1、UUID定義
UUID含義是通用唯一識(shí)別碼 (Universally Unique Identifier),這 是一個(gè)軟件建構(gòu)的標(biāo)準(zhǔn),也是被開源軟件基金會(huì) (Open Software Foundation, OSF) 的組織應(yīng)用在分布式計(jì)算環(huán)境 (Distributed Computing Environment, DCE) 領(lǐng)域的一部分。UUID是指在一臺(tái)機(jī)器上生成的數(shù)字,它保證對在同一時(shí)空中的所有機(jī)器都是唯一的。
2、UUID優(yōu)點(diǎn)
1) 能夠保證獨(dú)立性,程序可以在不同的數(shù)據(jù)庫間遷移,效果不受影響。
2) 保證生成的ID不僅是表獨(dú)立的,而且是庫獨(dú)立的,這點(diǎn)在你想切分?jǐn)?shù)據(jù)庫的時(shí)候尤為重要。
3) 在oracle做數(shù)據(jù)遷移的時(shí)候不會(huì)因?yàn)楸淼膕equence不連續(xù)而出現(xiàn)問題
3、UUID缺點(diǎn)
1) 比較占地方,和INT類型相比,存儲(chǔ)一個(gè)UUID要花費(fèi)更多的空間。
2) 使用UUID后,URL顯得冗長,不夠友好。
update test set id = UUID();MYSQL默認(rèn)值設(shè)置UUID函數(shù)實(shí)際其函數(shù)除TIMESTAMP外都 MYSQL默認(rèn)值目前能數(shù)或者CURRENTTIMESTAMP
需要實(shí)現(xiàn)UUID默認(rèn)值功能則該表INSERT觸發(fā)器實(shí)現(xiàn):
update test set id = UUID();
create TRIGGER test_insert
AFTER INSERT ON test
FOR each ROW
BEGIN
update test set id = UUID();
end;
般主鍵id都用AUTO_INCREMENTuuid()適合做主鍵
update
test
set
id
=
UUID();MYSQL無法在默認(rèn)值中設(shè)置UUID函數(shù),實(shí)際上其它函數(shù)除TIMESTAMP之外都不可以。
MYSQL的默認(rèn)值目前只能是常數(shù)或者CURRENTTIMESTAMP。
下載Navicat Premium?可以在百度搜索關(guān)鍵字,出來結(jié)果后建議選擇經(jīng)過百度安全認(rèn)證的,因?yàn)楸容^安全。
下載之后選擇解壓安裝。下載后是一個(gè).exe后綴的文件,雙擊就可以安裝了,選擇目錄進(jìn)行安裝,安裝方法極為簡單,這里不做過多說明。
安裝完成之后再桌面生成快捷方式,雙擊打開。這時(shí)候會(huì)提示出現(xiàn)一個(gè)需要輸入注冊碼的提示,注冊碼是需要付費(fèi)購買的,如果不購買只可以用三天。也可是找一個(gè)注冊碼,這里不做過多說明。建議購買注冊碼,支持正版。雙擊打開之后這是首界面。
這時(shí)候可以點(diǎn)擊左上角的連接選擇需要連接的數(shù)據(jù)庫類型。Navicat功能非常強(qiáng)大,支持MySQL、PostgreSQL、Oracle、SQLite、SQL Server數(shù)據(jù)庫。可以根據(jù)你自己的類型選擇需要連接的數(shù)據(jù)庫。
這里介紹一種連接手機(jī)db數(shù)據(jù)文件的方式。首先導(dǎo)出db數(shù)據(jù)庫到桌面。點(diǎn)擊連接,選中SQLite會(huì)彈出一個(gè)選擇框,在桌面上選擇要連接的db文件了,這里標(biāo)紅的就是你自己的db數(shù)據(jù)文件,綠框中就是你自己定義的連接名。可以起個(gè)有代表性的名字。以下教程中使用名字:MyDB。
起好名字之后先測試一下,是否連接成功,可以參照下圖,先點(diǎn)擊左下角的連接測試,如果提示連接成功,則點(diǎn)擊確定,再次點(diǎn)擊確定之后就表示已經(jīng)把db數(shù)據(jù)文件引入到Navicat工具中啦!
這時(shí)候雙擊自己的連接名,也就是MyDB就可以打開db文件查看自己db文件中數(shù)據(jù)庫以及各個(gè)表中的值了。
查看值之后怎么對數(shù)據(jù)庫進(jìn)行增刪改查呢? 這里示例一種對gy_location表中的數(shù)據(jù)進(jìn)行查找方法。點(diǎn)擊查詢在點(diǎn)擊查詢下面的新建查詢,新建一個(gè)查詢頁面。
這里查詢gy_location表中共有多少條數(shù)據(jù) 使用sql 語句“select count(*) FROM gy_location ;”可以看出一共有83條數(shù)據(jù)。至于其它的sql語句操作也一樣。同時(shí)支持關(guān)聯(lián)表查詢。
如果你連接的是MySQL數(shù)據(jù)庫的話,還可以進(jìn)行建表。點(diǎn)擊表按鈕,在下面表的空白處右擊選擇新建表就可以彈出這個(gè)界面。這時(shí)候可以看出讓你輸入名、類型、長度、小數(shù)點(diǎn)(看情況填寫小數(shù)點(diǎn))、是否允許Null值,相當(dāng)全。
到這里介紹了Navicat兩種簡單的操作方式。當(dāng)然這兩種方式對于大多數(shù)功能來說都?jí)蛴靡卜浅3S谩V劣谄渌墓δ芟嘈拍惆堰@兩種功能熟練了之后也會(huì)用。常用的一些快捷鍵有:
1. ctrl + q: 打開新查詢窗口
2. ctrl + r: 運(yùn)行當(dāng)前窗口內(nèi)的所有語句
3. ctrl + w: 關(guān)閉當(dāng)前窗口
分享文章:mysql怎么用uuid mysql怎么用中文
轉(zhuǎn)載來于:http://chinadenli.net/article8/hgogip.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供移動(dòng)網(wǎng)站建設(shè)、企業(yè)建站、外貿(mào)網(wǎng)站建設(shè)、外貿(mào)建站、云服務(wù)器、網(wǎng)頁設(shè)計(jì)公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)