mysql set

from: http://www.itzk.com/thread-582269-53-1.shtml

本篇文章主要來介紹一下set語句。SET 語句的作用是指定各種選項。最好是省去詞OPTION,因爲它在MySQL 的未來版本中將被刪除。下面爲set的語法:


SET [OPTION] option_setting,..




option_setting值可爲下列清單中的任一項:




一、PASSWORD [FOR user] = PASSWORD("password " ) 在沒有FOR 子句時,設置當前用戶的口令爲“password”。在有FOR 子句時,設置給定用戶的口令。爲了能夠設置其他用戶的口令,必須具有修改mysql 數據庫的權限。user是以user_name@host_name 形式,利用與GRANT 語句所接受的user_name和host_name相同類型的值給出的。





SET PASSWORD = PASSWORD("root1234")

SET PASSWORD FOR PAUL = PASSWORD("root1234")

SET PASSWORD FOR PAUL@LOCALHOST = PASSWORD("root1234")

SET PASSWORD FOR bill@%.abc.com = PASSWORD("root1234")



二、CHARACTER SET {charset_name | DEFAULT} 指定客戶機所用的字符集。客戶機接收和發送的串用這個字符集進行映射。當前可用的惟一字符集是cp1251_koi8。字符集名DEFAULT恢復缺省字符集。





SET CHARACTER SET cp1251_koi8

SET CHARACTER SET DEFAULT



三、SQL_LOG_UPDATE = {0 | 1} 除影響更新日誌的記錄和不影響常規日誌外,此選項類似於SQL_LOG_OFF(包括要求PROCESS 權限)。SQL_LOG_UPDATE 是在MySQL 3.22.5 中引入的。




SET SQL_LOG_UPDATE = 1




四、SQL_SELECT_LIMIT = {n | DEFAULT} 指定從SELECT 語句返回記錄的最多個數。在一條語句中直接給出LIMIT 子句將優於此選項。此選項的缺省值爲“不限制”。如果曾經做過更改,則設置爲DEFAULT 將恢復缺省設置。





SET SQL_SELECT_LIMIT = 100000

SET SQL_SELECT_LIMIT = DEFAULT



五、TIMESTAMP = {timestamp_value | DEFAULT} 指定一個TIMESTAMP 值。此選項用於更新日誌處理。




SET TIMESTAMP = DEFAULT




六、SQL_LOW_PRIORITY_UPDATES = {0 | 1} 如果此選項設置爲1,修改表內容的語句(DELETE、INSERT、REPLACE、UPDATE)將等待直到無SELECT 語句活動時爲止,或等待直到該表掛起爲止。在其他語句活動中到達的SELECT 語句立即開始執行而不用等待較低優先級的修改語句。SQL_LOW_PRIORITY_UPDATES 是在MySQL 3.22.5 中引入的。




SET SQL_LOW_PRIORITY_UPDATES = 0




七、LASTINSERT_ID = n 指定LAST_INSERT_ID( ) 返回的值。此選項用於更新日誌的處理。




SET LAST_INSERT_ID = 48731




八、SQL_BIG_TABLES = {0 | 1} 如果此選項設置爲1,則所有臨時表都存放在磁盤上而不是存入在內存中。性能降低,但需要大臨時表的SELECT 語句將不會出現“table full(表滿)”錯誤。此選項的缺省設置爲0(將臨時表裝在內存中)。此選項一般對於MySQL 3.23 及以上的版本不需要。




SET SQL_BIG_TABLES = 1




九、SQL_LOG_OFF = {0 | 1} 如果此選項設置爲1,當前客戶機的需求不記錄在通常的日誌文件中。如果設置爲0,則允許客戶機記錄日誌。如果要此語句起作用,客戶機必須具有PROCESS 權限。對更新日誌的記錄不受影響。




SET SQL_LOG_OFF = 1


十、SQL_WARNINGS = {1 | 0} 如果設置爲1,MySQL 即使對單行插入也報告警告計數。一般,只對插入多行的INSERT語句報告警告計數。此選項的缺省設置爲0。SQL_WARNINGS 是在MySQL 3.22.11 中引入的。


SET SQL_WARNINGS = 1


十一、SQL_BIG_SELECTS = {0 | 1} 如果此選項設置爲1,則允許返回多於max_join_size行的SELECT 語句。否則,查詢將被中止。此選項的缺省設置爲1。


SET SQL_BIG_SELECTS = 0


十二、INSERT_ID = n 指定下一條INSERT 語句插入一行時,AUTO_INCREMENT 列所用的值。


十三、SQL_AUTO_IS_NULL = {0 | 1} 如果此選項設置爲1,最後插入的包含一個AUTO_INCREMENT 值的行可利用WHERE autoinccolIS NULL 形式的WHERE 子句來選擇。如Access 這樣的ODBC 程序使用此選項。此選項的缺省設置爲1,它是在MySQL 3.23.5 中引入的。




SET SQL_AUTO_IS_NULL = 0

發佈了150 篇原創文章 · 獲贊 20 · 訪問量 63萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章