国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

mysql語句:SET NAMES UTF8

2024-07-24 12:41:57
字體:
來源:轉載
供稿:網友

    一直以來只知道mysql_query("SET NAMES UTF8");是設定數據庫編碼的,但是一直不清楚“SET NAMES UTF8”是什么。

    直到今天才知道 SET NAMES ...是mysql語句。

    真的感覺到自己的功課還沒做到家,現有知識儲備比較匱乏。現將所查相關資料記下:

    1、SET NAMES ‘charset_name’

    SET NAMES顯示客戶端發送的SQL語句中使用什么字符集。因此,SET NAMES 'cp1251'語句告訴服務器將來從這個客戶端傳來的信息采用字符集cp1251”。它還為服務器發送回客戶端的結果指定了字符集。(例如,如果你使用一個SELECT語句,它表示列值使用了什么字符集。)

    2、連接字符集和校對

    (1) 一些字符集和校對規則系統變量與客戶端和服務器的交互有關。

    ? 服務器字符集和校對規則可以用作character_set_server和collation_server變量的值。

    ? 默認數據庫的字符集和校對規則可以用作character_set_database和collation_database變量的值。

    在客戶端和服務器的連接處理中也涉及了字符集和校對規則變量。

    每一個客戶端有一個連接相關的字符集和校對規則變量。

    (2)考慮什么是一個“連接”:它是連接服務器時所作的事情。

    客戶端發送SQL語句,例如查詢,通過連接發送到服務器。

    服務器通過連接發送響應給客戶端,例如結果集。

    對于客戶端連接,這樣會導致一些關于連接的字符集和 校對規則的問題,這些問題均能夠通過系統變量來解決:

    (3) 當查詢離開客戶端后,在查詢中使用哪種字符集?

    服務器使用character_set_client變量作為客戶端發送的查詢中使用的字符集。

    (4) 服務器接收到查詢后應該轉換為哪種字符集?

    轉換時,服務器使用character_set_connection和collation_connection系統變量。它將客戶端發送的查詢從character_set_client系統變量轉換到character_set_connection(除非字符串文字具有象_latin1或_utf8的引介詞)。collation_connection對比較文字字符串是重要的。對于列值的字符串比較,它不重要,因為列具有更高的 校對規則優先級。

    (5)服務器發送結果集或返回錯誤信息到客戶端之前應該轉換為哪種字符集?

    character_set_results變量指示服務器返回查詢結果到客戶端使用的字符集。包括結果數據,例如列值和結果元數據(如列名)。

    示例:

    mysql_query("set names 'utf8'"); //使用utf8編碼;

    

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 鄂托克旗| 灵宝市| 德惠市| 阜平县| 庆阳市| 华坪县| 绥芬河市| 洛浦县| 安陆市| 蓝山县| 桂平市| 海淀区| 遵义县| 福清市| 神农架林区| 新建县| 高平市| 凤庆县| 康平县| 石泉县| 黑龙江省| 台东县| 武汉市| 南澳县| 两当县| 西充县| 渭南市| 永济市| 疏勒县| 巢湖市| 汾西县| 房山区| 鄯善县| 新兴县| 秦皇岛市| 玛纳斯县| 梓潼县| 抚宁县| 沁源县| 梨树县| 磐安县|