锘??xml version="1.0" encoding="utf-8" standalone="yes"?>
棣栧厛璇磋闇姹傦紝鐜板湪娓告垙閲屾暟鎹簱涓轟簡鍒嗘暎鐑偣錛岄兘閲囩敤鍒嗚〃鏂瑰紡錛屼互鍓嶉偅縐嶄竴寮犺〃AUTO_INCREMENT鐨勬柟寮忔樉鐒朵笉琛屼簡錛岄偅涔堝皢鍞竴ID鏀懼埌涓氬姟榪涚▼閲屽彲琛屽悧錛熻繖涓篃涓嶅ソ錛屽洜涓虹幇鍦ㄥ悗鍙伴兘鏄涓儴緗詫紝姣忎釜榪涚▼鍙互淇濊瘉ID鍞竴錛屼絾鏄瓨鍒版暟鎹簱鐨勬椂鍊欏氨鍙兘閲嶅錛屾墍浠ユ垜浠繕鏄緱鍦―B涓婂仛鏂囩珷銆?/span>
鍥犳灝辨湁浜嗕笂綃囨枃绔犵殑瑙e喅鏂規錛屽崟鐙竴寮犺〃錛?/span>榪欏紶琛ㄧ殑浣滅敤灝辨槸涓撻棬浜х敓鍞竴ID錛岃屼笖涓哄涓笟鍔℃彁渚涘敮涓ID錛屽榪涚▼鎯呭喌涓嬩篃涓嶉渶瑕侀攣琛紝鏁堢巼姣旇緝楂橈紝鏄笉鏄緢鍍忚璁℃ā寮忛噷鐨勫伐鍘傘傛帴鐫鎴戞潵鍒嗘瀽涓嬭繖寮犺〃銆傛垜浠啀鏉ョ湅鐪嬭〃緇撴瀯鍜岀敤娉?br />create table SeqTab (
iSeqNo bigint(20) not null default 0, //琛ㄧず鍞竴ID
iSeqType int(11) not null default 0, //琛ㄧず涓氬姟ID
primary key(iSeqNo,iSeqType));
insert into SeqTab values(0,1); //鍒濆鍖栵紝鍋囪涓涓笟鍔$紪鍙蜂負1
update SeqTab set iSeqNo=last_insert_id(iSeqNo+1) where iSeqType=1;
select last_insert_id(); //榪欎袱鍙ユ槸鑾峰彇涓涓笟鍔$殑鍞竴ID錛屼緵涓氬姟榪涚▼浣跨敤銆?/span>
鍏跺疄璇村埌榪欏紶琛紝鍏抽敭鏄LAST_INSERT_ID()榪欎釜鏂規硶銆傚畠鏈変袱縐嶅艦寮廘AST_INSERT_ID()錛孡AST_INSERT_ID(expr)銆?/span>
榪欎釜涓滆タ鐨勭壒鐐規槸錛?.灞炰簬姣忎釜CONNECTION錛孋ONNECTION涔嬮棿鐩鎬簰涓嶄細褰卞搷 2.涓嶅睘浜庢煇涓叿浣撶殑琛?3.榪斿洖鏈鍚庝竴嬈NSERT AUTO_INCREMENT鐨勫?4.鍋囧浠ユ浣跨敤INSERT鎻掑叆 澶氳鏁版嵁錛屽彧榪斿洖絎竴琛屾暟鎹駭鐢熺殑鍊?5.濡傛灉浣燯PDATE鏌愪釜AUTO_INCREMENT鐨勫鹼紝涓嶄細褰卞搷LAST_INSERT_ID()榪斿洖鍊?/span>
LAST_INSERT_ID(expr)涓?/span>LAST_INSERT_ID()紼嶆湁涓嶅悓錛岄鍏堝畠榪斿洖expr鐨勫鹼紝鍏舵瀹冪殑榪斿洖鍊間細璁板綍鍦?/span>LAST_INSERT_ID()銆?/span>
鎴戜滑榪欓噷涓昏浣跨敤鍒頒簡絎竴鍜岀浜屼釜鐗圭偣錛屾瘡涓繘紼嬪茍鍙戞墽琛?/span>update SeqTab set iSeqNo=last_insert_id(iSeqNo+1) where iSeqType=1;,灝辮幏鍙栧睘浜庤繘紼嬭嚜宸辯殑iSeqNo騫朵笖璁板綍鍦?nbsp;LAST_INSERT_ID涓紝閫氳繃絎簩鍙ュ彇鍑鴻鍊箋?/span>
鎺ョ潃鎴戜滑鍦ㄦ瘮杈冧笅鍏朵粬涓浜涘姙娉曘?/span>
絎竴縐嶆槸鐩存帴涓寮犺〃錛岄噷闈㈡湁涓涓狪D瀛楁錛岃緗垚AUTO_INCREMENT銆傝繖涓殑闂鏄瘡涓笟鍔D涓嶆槸榪炵畫鐨勶紝鏄鏁g殑銆?/span>
絎簩縐嶆槸浣跨敤GUID鎴栬匲UID錛屼絾鏄繖涓棶棰樻垜涓漢瑙夊緱鏄晥鐜囦笂鐨勫樊寮傦紝瀛楃涓叉病鏈夋暟瀛楃殑鏁堢巼濂斤紝鍙﹀鏁板瓧ID浠婂悗涔熷彲浠ユ嫾鎺ヤ竴浜涘尯淇℃伅錛屼箣鍚庤法鍖虹殑鏃跺欏彲浠ユ柟渚胯幏鍙栧璞℃槸鍝釜鍖虹殑.
]]>
]]>
鎴戣繖寤轟簡3寮犺〃錛宼est_latin1,test_utf8,test_gbk,琛ㄧ粨鏋勫涓?/span>
+-------+----------+------+-----+---------+-------+
鎴戠殑鍓嶇鏄痝bk鐨勭紪鐮?/span>
鎵ц涓嬮潰鐨勮鍙?/span>
set names 'latin1'
insert into test_latin1 set name='鐜?;('鐜?瀛楁槸GBK緙栫爜)
select name from test_latin1;
緇撴灉鏄惁涓轟貢鐮侊紵
鎵ц涓嬮潰鐨勮鍙?/span>
insert into test_latin1 set name='鐜?;('鐜?瀛楁槸GBK緙栫爜)
select name from test_latin1;
緇撴灉鏄惁涓轟貢鐮侊紵
鎵ц涓嬮潰鐨勮鍙?/span>
set names 'latin1'
insert into test_utf8 set name='鐜?;('鐜?瀛楁槸GBK緙栫爜)
select name from test_utf8 ;
緇撴灉鏄惁涓轟貢鐮侊紵
鎴戜滑涓句釜渚嬪瓙錛屽亣璁句竴涓眽瀛楃殑瀛楃緙栫爜涓?xFFFF錛屽畠鍦ㄥ睆騫曚笂鑳藉姝e父鏄劇ず錛屽鏋滄眽瀛楀瓨鍏ユ暟鎹簱鐨勬椂鍊欏拰浠庢暟鎹簱涓彇鍑虹殑鏃跺欙紝緙栫爜涓鑷達紝閭d箞瀹冭偗瀹氫笉鏄貢鐮併傚弽榪囨潵錛屽鏋滆緭鍑虹殑鏃跺欐槸涔辯爜錛岄偅涔堝畠鑲畾琚漿鐮佷簡錛岃嚦浜庝負浠涔堣杞爜浜嗭紝鎴戜滑寰楃湅鐪媘ysql閲岄潰鍋氫簡浠涔?mysql闅鵑亾浼氭妸鏃犵爜鐗囧彉鎴愪簡鏈夌爜鐗囷紵)
棣栧厛mysql閲岄潰鏈?涓蹇碉紝涓涓彨character set,涓涓彨collation銆傛垜浠厛璇磋character set銆傚瓧絎﹂泦灝辨槸鏁板瓧錛岃嫳鏂囧瓧絎︼紝姹夊瓧絳夌紪鐮佹牸寮忥紝鎴戜滑甯歌鐨勬槸utf8,gbk,gb2312銆俶ysql閲岄潰姣旇緝澶嶆潅錛屾湁4涓笢瑗胯窡瀹冩湁鍏籌紝鍒嗗埆鏄痗haracter_set_client錛宑haracter_set_connection錛宑haracter_set_database錛宑haracter_set_results銆俿et names (latin1)鍏跺疄灝辨槸character_set_client=latin1錛宑haracter_set_connection=latin1錛宑haracter_set_results=latin1錛屽畠鐨勬祦紼嬫槸character_set_client ==> character_set_connection ==> Table Character ==> character_set_results銆?/span>
鎴戜滑鎸夌収涓婇潰鐨勬祦紼嬶紝鏉ュ垎鏋愮涓涓棶棰樸?/span>
set names 'latin1'----鎵ц浜哻haracter_set_client=latin1錛宑haracter_set_connection=latin1錛宑haracter_set_results=latin1;
insert into test_latin1 set name='鐜?;榪欏彞璇濓紝mysql鍋氫簡浠涔堜簨鍛紵棣栧厛錛宑haracter_set_client,瀹冧細鎶婄帇瀛楃殑緙栫爜褰撴垚latin1鐨勭紪鐮佷紶閫掔粰character_set_connection錛堟鏃朵笉浼氳漿鐮侊級錛宑haracter_set_connection浼氭妸緙栫爜浼犻掔粰Table Character,鍥犱負琛ㄦ湰韜槸latin1錛屾墍浠ユ鏃朵篃涓嶉渶瑕佽漿鐮侊紝select name from test_latin1;mysql浼氭妸test_latin1涓殑緙栫爜浼犻掔粰鍓嶇錛屾鏃朵篃涓嶉渶瑕佽漿鐮侊紝鎵浠ワ紝璧頒釜嫻佺▼涓嬫潵錛屾垜浠緭鍏ョ殑鏄粈涔堢紪鐮侊紝杈撳嚭鐨勮繕鏄浉鍚岀殑緙栫爜錛屽洜姝わ紝絎竴涓棶棰樼殑絳旀鏄笉浼氭槸涔辯爜銆傛垜鐢諱釜嫻佺▼鍥緇atin1==>latin1==>latin1==>latin1,娌℃湁杞爜鐨勮繃紼?/span>
鎴戜滑鍦ㄦ潵鐪嬬浜屼釜闂銆?/span>
set names 'test_gbk'----鎵ц浜哻haracter_set_client=gbk錛宑haracter_set_connection=gbk錛宑haracter_set_results=gbk;
insert into test_latin1 set name='鐜?;character_set_client,瀹冧細鎶婄帇瀛楃殑緙栫爜褰撴垚gbk鐨勭紪鐮佷紶閫掔粰character_set_connection錛堟鏃朵笉浼氳漿鐮侊級,character_set_connection浼氭妸緙栫爜浼犻掔粰Table Character,鍥犱負琛ㄦ槸lanti1鐨勭紪鐮佹牸寮忥紝榪欎釜榪囩▼鐨勬椂鍊欏氨浼氳繘琛岃漿鐮侊紝浣嗘槸latin1鐨勫瓧絎﹂泦灝忎簬gbk鐨勫瓧絎﹂泦錛屾墍浠ュ畠浼氭壘涓嶅埌瀵瑰簲瀛楃鐨勭紪鐮侊紝姝ゆ椂浼氫互錛熶唬鏇褲俿elect name from test_latin1錛屾鏃朵細浠巐atin1杞爜鎴恎bk,浣嗘槸姝ゆ椂latin1宸茬粡鏄敊璇殑鏁版嵁浜嗭紝鎵浠ュ緱鍒扮殑gbk緙栫爜涔熸槸閿欒鐨勪簡銆傛祦紼媑bk==>gbk==>latin1==>gbk,鍏朵腑gbk==>latin1鍑轟簡闂錛屾垜浠瑂elect鍑烘潵鐨勬暟鎹篃灝變笉鍙兘鏄緭鍏ユ椂鍊欑殑鏁版嵁浜嗐傚洜姝わ紝榪欎釜闂鐨勭瓟妗堟槸涔辯爜銆?/span>
絎笁涓?/span>
set names 'test_latin1'
insert into test_utf8 set name='鐜?;character_set_client,瀹冧細鎶婄帇瀛楃殑緙栫爜褰撴垚latin1鐨勭紪鐮佷紶閫掔粰character_set_connection錛堟鏃朵笉浼氳漿鐮侊級,character_set_connection浼氭妸緙栫爜浼犻掔粰Table Character,姝ゆ椂琛ㄦ槸utf8鐨勬牸寮忥紝鍥犳浼氳繘琛岃漿鐮侊紝latin1==>utf8,鍥犱負utf8鐨勫瓧絎﹂泦>latin1瀛楃闆嗭紝鍥犳錛岃漿鐮佹甯搞俿elect name from test_utf8;浼氫粠utf8杞爜鎴恖atin1,姝ゆ椂鍙互杞爜鎴愬姛錛屽洜姝ゆ垜浠渶緇堝緱鍒扮殑鍜岃緭鍏ョ殑鏃跺欐槸涓鑷寸殑錛屽洜姝ょ瓟妗堜笉鏄貢鐮併傛祦紼媗atin1==>latin1==>utf8==>latin1,浠庡皬鐨勫瓧絎﹂泦鍒板ぇ鐨勫瓧絎﹂泦鍐嶅埌灝忕殑瀛楃闆嗭紝杞爜鏄笉浼氭湁闂鐨勩?/span>
灞佽瘽浜嗚繖涔堝錛屾棤闈炴兂鍛婅瘔澶у涓涓竾綺炬補鏂規硶錛?/span>琛ㄥ垱寤虹殑瀛楃闆嗗拰set names閮借緗垚鍚屼竴涓瓧絎﹂泦錛屽氨鍩烘湰鍙互婊¤凍杈撳叆鏁版嵁涓嶄細鍦ㄨ漿鎹㈣繃紼嬩腑澶辯湡錛屼篃灝辨槸璇磋緭鍏ユ槸浠涔堬紝杈撳嚭灝辨槸浠涔堛?/span>寤鴻鏈変腑鏂囩殑閮借緗垚utf8瀛楃闆嗭紝涓鍔蟲案閫搞?/strong>
]]>