mysql 鑾峰彇鍏ㄥ眬鍞竴鍊?
聽 聽 聽 聽 鍦ㄦ秹鍙婃暟鎹簱瀛樺偍鏁版嵁鐨勬椂鍊欙紝缁忓父浼氶亣鍒板敮涓€鍊奸棶棰橈紝鏈夌殑鏄富閿甫鏉ョ殑闄愬埗锛屾湁鐨勫垯鏄笟鍔′笂鐨勯渶瑕併€?/p>
聽 聽 聽 聽 涓嬮潰浠嬬粛鍑犵鍞竴鍊肩殑鑾峰彇鎴栬€呯敓浜ф柟娉曪細
銆€銆€鍏堝缓涓€涓祴璇曠敤鐨勮〃tbl_user,鏈変笁涓瓧娈碉細Id銆丯ame銆丄ge锛屽叾涓璉d涓轰富閿€?/p>
drop table if exists `tbl_user`; create table `tbl_user` ( `Id` int(10), `Name` varchar(20), `Age` int(10), PRIMARY KEY (`Id`) )DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
聽 聽 聽 聽聽鎻掑叆鍑犳潯鏁版嵁
insert into tbl_user values (1000,"灏忕尗",22); insert into tbl_user values (1001,"灏忕嫍",22); insert into tbl_user values (1002,"灏忓埡鐚?,22);
聽 聽 聽 聽 鏌ヨ缁撴灉锛?/p>
聽 聽 聽 聽 1.鐢卞簲鐢ㄧ▼搴忔牴鎹竴瀹氱畻娉曠敓鎴愬敮涓€鍊硷細涓€鑸噰鐢ㄢ€滿D5(鏃堕棿鎴?闅忔満鏁?鈥滄垨鑰呭叾浠栫殑UUID绠楁硶锛屽熀鏈篃姣旇緝濂藉疄鐜般€傚鏋滈亣鍒板鏈哄櫒涓婂垎甯冪殑绋嬪簭璁块棶缁熶竴鏁版嵁搴撶殑琛紝鍙互鎶奍p銆佺綉鍗″彿绛変俊鎭€冭繘鏉ュ氨鍙互瑙e喅浜嗭紙褰撶劧鍙互涓嶆槸绠€鍗曠殑鎷兼帴锛屼綘鍙互鏍规嵁闇€瑕佸幓鍚堥€傜殑浣嶆暟缁忚繃涓€瀹氱殑绠楁硶鍘昏幏鍙栵級銆?/p>
聽 聽 聽 聽 2.鍏堟煡璇㈣〃涓渶澶х殑鍊約elect max(id)锛屽啀鍔?鍚庝綔涓烘柊鐨勫€笺€傚緢绗ㄧ殑鏂规硶銆?/p>
select max(Id) from tbl_user; #鏌ヨ鍒扮殑鏈€澶d涓?1002,涔嬪悗鎻掑叆 1003 insert into tbl_user values (1003,"灏忕唺",22);
聽 聽 聽 聽 姝ゆ椂琛ㄤ腑鏁版嵁涓?/p>
聽 聽 聽 聽 3.濡傛灉鏄〃绾у埆鐨勫敮涓€锛屽嵆鍦ㄥ悓涓€涓〃涓煇涓瓧娈靛敮涓€锛屽彲浠ユ妸璇ュ瓧娈佃缃负鈥滆嚜澧?AUTO_INCREMENT)鈥濈殑銆傝繖鏍蜂綘涓嶅繀璐瑰績鎬濆幓鐢熸垚杩欎釜涓嶈兘閲嶅鐨勫敮涓€鍊间簡銆備絾鏄竴鑸簲鐢ㄧ▼搴忔槸闇€瑕佽繖涓敮涓€鍊肩殑锛岃繖涓椂鍊欎綘灏卞緱鍦ㄦ煡璇竴娆″幓鑾峰彇鍒氭墠鏁版嵁搴撹嚜澧炵敓鎴愮殑Id銆傛瘮濡傚湪鐢ㄦ埛鐧诲綍鐨勬椂鍊欙紝浣犺鐢熸垚涓€涓櫥褰曚細璇滻d鎴栬€匱oken锛岃繖浜涚▼搴忎竴鑸槸闇€瑕佸緱鍒拌繖涓€艰€屼笉鏄粎浠呭瓨鍦ㄦ暟鎹簱涓€傜敓鎴愮殑鍊硷紝a.鍙互涓€鑸殑select鏉′欢鏌ヨ锛屾牴鎹潯浠舵煡璇㈠垰鎵嶆彃鍏ョ殑鏁版嵁銆俠.鐩存帴璋冪敤select @@IDENTITY 灏卞彲浠ュ緱鍒颁笂涓€娆℃彃鍏ヨ褰曟椂鑷姩浜х敓鐨処D锛堟敞鎰忔槸鍦ㄦ暟鎹簱鍚屼竴涓繛鎺ワ紙浼氳瘽锛変腑锛夛紝鐢ㄥ湪鎻掑叆鍚庣珛鍗硈elect @@IDENTITY銆?/p>
聽 聽 聽 聽 鐪嬩緥瀛愶紝鍏堝皢琛ㄤ腑鐨処d瀛楁璁剧疆涓鸿嚜澧烇紝鍐嶆彃鍏ヤ竴鏉℃暟鎹紙涓嶈鎻掑叆Id鍊硷紝璁╂暟鎹簱鑷寰楀埌鍊硷級锛宻elect @@IDENTITY鏌ヨ锛屾渶鍚庨獙璇佺湅鐪嬨€?/p>
#1.#灏咺d鏀逛负鑷锛坅uto_increment锛? ALTER TABLE tbl_user CHANGE Id Id int not null auto_increment; #鎴栬€?鍏堝垹闄d瀛楁鍐嶆坊鍔犱竴涓狪d瀛楁 alter table tbl_user auto_increment=1000; alter table tbl_user drop column Id; alter table tbl_user add Id int not null auto_increment primary key first; #2.鎻掑叆涓€鏉¤褰? insert tbl_user set Name='灏忕尨',Age=23; #3.鏌ヨ鍒氭墠鐨勮嚜澧濱d鍊? select @@IDENTITY; #鍊兼槸1004
聽 聽 聽 聽聽楠岃瘉涓嬶細select * from tbl_user;寰楀埌鐨勫綋鍓嶈〃璁板綍涓?/p>
聽 聽 聽 聽聽杩囧垰鎻掑叆鐨勬暟鎹€滃皬鐚粹€漣d涓?004锛屽拰select @@IDENTITY;缁撴灉涓€鏍枫€?/p>
聽 聽 聽 聽 4.浣跨敤mysql鐨?UUID()鍑芥暟銆傚墠闈㈢殑鑷瀛楁锛坅uto_increment锛夊彧鑳界敓鎴愨€濊〃鍐呪€濈殑鍞竴鍊硷紝涓旈渶瑕佹惌閰嶄娇鍏朵负鈥濆敮涓€鐨勪富閿垨鍞竴绱㈠紩鈥濓紝瀹冪殑鍊兼槸閫愭澧為暱鐨勩€傝繖閲岀殑UUID浜х敓鐨勬槸瀛楃涓茬被鍨嬪€硷紝鍥哄畾闀垮害涓?36涓瓧绗︺€俇UID鐢熸垚鐨勬槸鍦ㄦ椂闂淬€佺┖闂翠笂閮界嫭涓€鏃犱簩鐨勫€硷紝鏄€滈殢鏈?瑙勫垯鈥濈粍鍚堣€屾垚銆?/p>
select uuid(); -- c725d905-388e-11e6-9cab-b8ca3a6f5881 select uuid(); -- cb7d3894-388e-11e6-9cab-b8ca3a6f5881 select replace(uuid(),'-',''); -- eb1347a2388e11e69cabb8ca3a6f5881
聽 聽 聽 聽聽鍙互鐪嬪埌锛屽娆¤皟鐢║UID()鍑芥暟寰楀埌鐨勫€间笉鐩稿悓锛屽畠鐢变簲閮ㄥ垎缁勬垚锛屽苟涓旀湁杩炲瓧绗︼紙-锛夐殧寮€锛屼竴鍏?6涓瓧绗︺€傚叾涓細
聽 聽 聽 聽 鍓?缁勫€兼槸鏃堕棿鎴虫崲绠楄繃鏉ョ殑锛岃В鍐斥€滄椂闂翠笂鍞竴鈥濓紱
聽 聽 聽 聽 绗?缁勫€兼槸鏆傛椂鎬т繚鎸佹椂闂存埑鐨勫敮涓€鎬э紝閲嶅惎mysql鎵嶄細鍙樺姩锛?/p>
聽 聽 聽 聽 绗?缁勬槸mac鍊艰浆杩囨潵鐨勶紝鏈夊姪浜庤В鍐斥€滅┖闂翠笂鐨勫敮涓€鈥濓紝鍚屼竴涓満鍣ㄥ瀹炰緥鐨勪竴鑸浉鍚屻€傚鏋渕ac鍊艰幏鍙栦笉鍒帮紝鍒欐槸涓€涓殢鏈哄€笺€?/p>
聽 聽 聽 聽 杩欎簺宸茬粡鍙互淇濊瘉寰楀埌鐨勫€煎湪鏃堕棿鍜岀┖闂翠笂鐨勫敮涓€銆傚綋鐒朵綘涔熷彲浠ュ幓鎺夎繛瀛楃: select replace(uuid(),’-‘,”)銆?/p>
聽 聽 聽 聽 鍦∕ySQL 5.1.*鍙婃洿楂樼増鏈湁涓€涓彉绉嶇殑UUID()鍑芥暟锛孶UID_SHORT()锛屽彲浠ョ敓鎴愪竴涓?7-64浣嶆棤绗﹀彿鐨勬暣鏁帮紝娉ㄦ剰鏄敓鎴愮殑涓€涓暣鏁帮紝鑰屽墠闈UID()鐢熸垚鐨勬槸瀛楃涓层€侻ySQL鍚姩鍚庣涓€娆℃墽琛岀殑鍊兼槸閫氳繃鏃堕棿鎴崇瓑鍒濆鍖栬繖涓€硷紝鍦ㄦ湰娆¤繍琛屼腑鍐嶆璋冪敤鐨勬椂鍊欓兘鍔?銆傝繖涓€间竴鑸瘮杈冨ぇ锛屽彲浠ヨ皟鐢╮ight(UUID_SHORT(),9)鍙栧悗闈㈢殑鑻ュ共浣嶃€傛垨鑰?浣犺繕鍙互鍐欐垚鑷畾涔夊嚱鏁?鏉ユ寜闇€鐢熸垚杩欎釜鍊笺€備妇涓緥瀛愶細
#1.璋冪敤uuid_short()鍑芥暟 SELECT UUID_SHORT(); -- 17246045196806782976 SELECT UUID_SHORT(); -- 17246045196806782977 #鎵ц涓ゆ寰楀埌鐨勫€奸€掑鐨勶細 23285634974089217 #2.鍒涘缓涓€涓嚜瀹氫箟鍑芥暟锛屾寜闇€鑾峰彇鍞竴鍊硷細 delimiter // CREATE FUNCTION `GetUuidTest`(SysId int) RETURNS int(10) DETERMINISTIC begin declare tmpID int; set tmpID = 0; SELECT concat(SysId,right(UUID_SHORT(),8)) into tmpID;#SysId鍜孶UID_SHORT()鍚?浣嶆暟鎷兼帴寰楀埌 return tmpID; end; // #3.璋冪敤鑷畾涔夌殑鍑芥暟GetUuidTest(int)鍑芥暟: select GetUuidTest(1); select GetUuidTest(1); select GetUuidTest(2); select GetUuidTest(2); #寰楀埌缁撴灉: #1+uuid_short()鍚?浣嶏紙74089233锛夌粍鎴? #1+uuid_short()鍚?浣嶏紙74089234锛夌粍鎴? #2+uuid_short()鍚?浣嶏紙74089235锛夌粍鎴? #3+uuid_short()鍚?浣嶏紙74089236锛夌粍鎴? #uuid_short()鍊奸€掑锛屽墠闈㈠湪鍔犱竴涓狪d锛屼笉鍚岀殑鏈嶅姟鍣↖dSysId涓嶅悓銆? #4.鍦ㄤ緥瀛愪腑璋冪敤鑷畾涔夊嚱鏁癎etUuidTest(int) 鏉ユ彃鍏ヨ褰曪細杩欐椂鍊欎笉闇€瑕佹妸Id璁剧疆涓鸿嚜澧炰簡銆? insert tbl_user set Id=GetUuidTest(1),Name='灏忕唺鐚?,Age=22; insert tbl_user set Id=GetUuidTest(2),Name='灏忛腑瀛?,Age=21;
聽 聽 聽 聽 渚嬪瓙涓紝select * from tbl_user;寰楀埌鐨勬墍鏈夎褰曚负渚嬪瓙涓紝select * from tbl_user;寰楀埌鐨勬墍鏈夎褰曚负
聽
鏂囩珷鏉ユ簮锛?a href=”http://www.cnblogs.com/alylee/p/Mysql_UUID.html” target=”_blank” title=”http://www.cnblogs.com/alylee/p/Mysql_UUID.html”>http://www.cnblogs.com/alylee/p/Mysql_UUID.html
欢迎大家阅读《mysql 鑾峰彇鍏ㄥ眬鍞竴鍊_mysql》,跪求各位点评,by 搞代码