成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

怎么在MySQL存取數(shù)據(jù) 如何從mysql中導(dǎo)出數(shù)據(jù)

如何在mysql中存取utf8mb4編碼的字符

1、在修改數(shù)據(jù)庫(kù)編碼前先對(duì)數(shù)據(jù)庫(kù)備份(雖然utf8mb4兼容utf8,但有備無(wú)患)

站在用戶的角度思考問(wèn)題,與客戶深入溝通,找到通化網(wǎng)站設(shè)計(jì)與通化網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類(lèi)型包括:成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名注冊(cè)、網(wǎng)頁(yè)空間、企業(yè)郵箱。業(yè)務(wù)覆蓋通化地區(qū)。

2、修改數(shù)據(jù)庫(kù)的編碼、表的編碼、列的編碼為utf8mb4

3、在Mysql數(shù)據(jù)庫(kù)配置文件(my.ini)中加入如下設(shè)置

[client]

default-character-set = utf8mb4

[mysql]

default-character-set = utf8mb4

[mysqld]

character-set-client-handshake = FALSE

character-set-server = utf8mb4

collation-server = utf8mb4_unicode_ci

重新啟動(dòng)Mysql數(shù)據(jù)庫(kù),確認(rèn)設(shè)置生效

mysql show VARIABLES like '%char%';

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

| Variable_name | Value |

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

| character_set_client | utf8 |

| character_set_connection | utf8 |

| character_set_database | utf8mb4 |

| character_set_filesystem | binary |

| character_set_results | utf8 |

| character_set_server | utf8mb4 |

| character_set_system | utf8 |

| character_sets_dir | /home/app/mysql-5.5.33/share/charsets/ |

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

8 rows in set

4、在獲取數(shù)據(jù)庫(kù)連接的時(shí)候執(zhí)行sql:set names utf8mb4;我使用的是alibaba的開(kāi)源數(shù)據(jù)庫(kù)連接池程序,在配置文件中增加一行如下配置

property name="connectionInitSqls" value="set names utf8mb4;" /

重新啟動(dòng)應(yīng)用程序,問(wèn)題解決

如何在mysql中存取utf8mb4編碼的字符?

utf8編碼可以支持一到4字節(jié)的字符編碼,在mysql用我們一般使用utf8編碼來(lái)處理字符類(lèi)型,通常情況下都沒(méi)有問(wèn)題,但遇到4字節(jié)編碼的字符,在數(shù)據(jù)存取的時(shí)候就會(huì)有問(wèn)題了。\x0d\x0a通常我們可能會(huì)得到一個(gè)錯(cuò)誤或者警告:Incorrect string value: '/xF0/x9D/x8C/x86' for column ...\x0d\x0aMysql 從5.5.3版本開(kāi)始支持4字節(jié)的utf8編碼,如果你的Mysql數(shù)據(jù)庫(kù)是5.5.3+,按照以下步驟就能解決這個(gè)問(wèn)題,如果版本低于5.5.3,是不是可以考慮升級(jí)數(shù)據(jù)庫(kù)版本呢?\x0d\x0a1、在修改數(shù)據(jù)庫(kù)編碼前先對(duì)數(shù)據(jù)庫(kù)備份(雖然utf8mb4兼容utf8,但有備無(wú)患)\x0d\x0a2、修改數(shù)據(jù)庫(kù)的編碼、表的編碼、列的編碼為utf8mb4\x0d\x0a3、在Mysql數(shù)據(jù)庫(kù)配置文件(my.ini)中加入如下設(shè)置\x0d\x0a\x0d\x0a[client]default-character-set = utf8mb4[mysql]default-character-set = utf8mb4[mysqld]character-set-client-handshake = FALSEcharacter-set-server = utf8mb4collation-server = utf8mb4_unicode_ci\x0d\x0a\x0d\x0a重新啟動(dòng)Mysql數(shù)據(jù)庫(kù),確認(rèn)設(shè)置生效\x0d\x0a\x0d\x0amysql show VARIABLES like '%char%';+--------------------------+----------------------------------------+| Variable_name | Value |+--------------------------+----------------------------------------+| character_set_client | utf8 || character_set_connection | utf8 || character_set_database | utf8mb4 || character_set_filesystem | binary || character_set_results | utf8 || character_set_server | utf8mb4 || character_set_system | utf8 || character_sets_dir | /home/app/mysql-5.5.33/share/charsets/ |+--------------------------+----------------------------------------+8 rows in set\x0d\x0a\x0d\x0a4、在獲取數(shù)據(jù)庫(kù)連接的時(shí)候執(zhí)行sql:set names utf8mb4;我使用的是alibaba的開(kāi)源數(shù)據(jù)庫(kù)連接池程序,在配置文件中增加一行如下配置\x0d\x0a\x0d\x0a\x0d\x0a\x0d\x0a重新啟動(dòng)應(yīng)用程序,問(wèn)題解決

如何在mysql中鎎ool型的數(shù)據(jù)

 1.選擇數(shù)據(jù)類(lèi)型的基本原則 前提: 使用適合存儲(chǔ)引擎。

MyISAM數(shù)據(jù)表,最好使用固定長(zhǎng)度的數(shù)據(jù)列代替可變長(zhǎng)度的數(shù)據(jù)列。 2). MEMORY存儲(chǔ)引擎和數(shù)據(jù)列

MEMORY數(shù)據(jù)表目前都使用固定長(zhǎng)度的數(shù)據(jù)行存儲(chǔ),因此無(wú)論使用CHAR或VARCHAR列都沒(méi)有關(guān)系。兩者都是作為CHAR類(lèi)型處理的。 3). InnoDB 存儲(chǔ)引擎和數(shù)據(jù)列 建議使用 VARCHAR類(lèi)型,對(duì)于InnoDB數(shù)據(jù)表,內(nèi)部的行存儲(chǔ)格式?jīng)]有區(qū)分固定長(zhǎng)度和可變長(zhǎng)度列(所有數(shù)據(jù)行都使用指向數(shù)據(jù)列值的頭指針),因此在本質(zhì)上,使用固定長(zhǎng)度的 CHAR列不一定比使用可變長(zhǎng)度VARCHAR列簡(jiǎn)單。因而,主要的性能因素是數(shù)據(jù)行使用的存儲(chǔ)總量。由于CHAR平均占用的空間多于VARCHAR,因 此使用VARCHAR來(lái)最小化需要處理的數(shù)據(jù)行的存儲(chǔ)總量和磁盤(pán)I/O是比較好的。 2. 固定長(zhǎng)度數(shù)據(jù)列與可變長(zhǎng)度的數(shù)據(jù)列1).char與varchar l CHAR和VARCHAR類(lèi)型類(lèi)似,但它們保存和檢索的方式不同。它們的最大長(zhǎng)度和是否尾部空格被保留等方面也不同。在存儲(chǔ)或檢索過(guò)程中不進(jìn)行大小寫(xiě)轉(zhuǎn)換。下面的表顯示了將各種字符串值保存到CHAR(4)和VARCHAR(4)列后的結(jié)果,說(shuō)明了CHAR和VARCHAR之間的差別:值CHAR(4)存儲(chǔ)需求VARCHAR(4)存儲(chǔ)需求''' '4個(gè)字節(jié)''1個(gè)字節(jié)'ab''ab '4個(gè)字節(jié)'ab '3個(gè)字節(jié)'abcd''abcd'4個(gè)字節(jié)'abcd'5個(gè)字節(jié)'abcdefgh''abcd'4個(gè)字節(jié)'abcd'5個(gè)字節(jié) 請(qǐng)注意上表中最后一行的值只適用不使用嚴(yán)格模式時(shí);如果MySQL運(yùn)行在嚴(yán)格模式,超過(guò)列長(zhǎng)度不的值不保存,并且會(huì)出現(xiàn)錯(cuò)誤。從CHAR(4)和VARCHAR(4)列檢索的值并不總是相同,因?yàn)闄z索時(shí)從CHAR列刪除了尾部的空格。通過(guò)下面的例子說(shuō)明該差別: mysql CREATE TABLE vc (v VARCHAR(4), c CHAR(4)); Query OK, 0 rows affected (0.02 sec) mysql INSERT INTO vc VALUES ('ab ', 'ab '); Query OK, 1 row affected (0.00 sec) mysql SELECT CONCAT(v, '+'), CONCAT(c, '+') FROM vc; +----------------+----------------+ | CONCAT(v, '+') | CONCAT(c, '+') | +----------------+----------------+ | ab + | ab+ | +----------------+----------------+ 1 row in set (0.00 sec)2). text和blob 在使用text和blob字段類(lèi)型時(shí)要注意以下幾點(diǎn),以便更好的發(fā)揮數(shù)據(jù)庫(kù)的性能. (1). BLOB和TEXT值也會(huì)引起自己的一些問(wèn)題,特別是執(zhí)行了大量的刪除或更新操作的時(shí)候。刪除這種值會(huì)在數(shù)據(jù)表中留下很大的"空洞",以后填入這些"空洞"的記錄可能長(zhǎng)度不同,為了提高性能,建議定期使用 OPTIMIZE TABLE 功能對(duì)這類(lèi)表進(jìn)行碎片整理. (2). 使用合成的(synthetic)索引。合成的索引列在某些時(shí)候是有用的。一種辦法是根據(jù)其它的列的內(nèi)容建立一個(gè)散列值,并把這個(gè)值存儲(chǔ)在單獨(dú)的數(shù)據(jù)列中。接下來(lái)你就可以通過(guò)檢索散列值找到數(shù)據(jù)行了。但是,我們要注意這種技術(shù)只能用于精確匹配的查詢(散列值對(duì)于類(lèi)似或=等范圍搜索操作符 是沒(méi)有用處的)。我們可以使用MD5()函數(shù)生成散列值,也可以使用SHA1()或CRC32(),或者使用自己的應(yīng)用程序邏輯來(lái)計(jì)算散列值。請(qǐng)記住數(shù)值型散列值可以很高效率地存儲(chǔ)。同樣,如果散列算法生成的字符串帶有尾部空格,就不要把它們存儲(chǔ)在CHAR或VARCHAR列中,它們會(huì)受到尾部空格去除的影響。 合成的散列索引對(duì)于那些BLOB或TEXT數(shù)據(jù)列特別有用。用散列標(biāo)識(shí)符值查找的速度比搜索BLOB列本身的速度快很多。

當(dāng)前標(biāo)題:怎么在MySQL存取數(shù)據(jù) 如何從mysql中導(dǎo)出數(shù)據(jù)
瀏覽路徑:http://jinyejixie.com/article12/hpddgc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管、手機(jī)網(wǎng)站建設(shè)網(wǎng)站導(dǎo)航、域名注冊(cè)品牌網(wǎng)站建設(shè)、搜索引擎優(yōu)化

廣告

聲明:本網(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;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)
湄潭县| 石首市| 江都市| 门源| 东乌珠穆沁旗| 开江县| 许昌县| 独山县| 盖州市| 隆安县| 龙陵县| 积石山| 襄樊市| 织金县| 北流市| 霍城县| 遵义市| 资阳市| 天峨县| 诏安县| 原阳县| 乐清市| 侯马市| 芦山县| 古田县| 油尖旺区| 玛沁县| 南充市| 盐城市| 成安县| 团风县| 磐石市| 萨迦县| 游戏| 义马市| 民乐县| 双鸭山市| 邻水| 资中县| 潼关县| 广河县|