文件首頁
MySQL Connector/J 開發人員指南
相關文件 下載本手冊
PDF (US Ltr) - 1.2Mb
PDF (A4) - 1.2Mb


6.3.3 工作階段

  • sessionVariables

    以逗號或分號分隔的「name=value」配對清單,在驅動程式連線時,會以「SET [SESSION] ...」傳送至伺服器。

    自版本 3.1.8
  • characterEncoding

    指示伺服器將工作階段系統變數「character_set_client」和「character_set_connection」設定為 MySQL 針對指定的 Java 字元編碼所支援的預設字元集,並將「collation_connection」設定為此字元集的預設定序。如果未設定此屬性,也未設定屬性「connectionCollation」

    對於 Connector/J 8.0.25 及更早版本,驅動程式會嘗試使用伺服器的預設字元集;

    對於 Connector/J 8.0.26 及更新版本,驅動程式將使用「utf8mb4」。

    自版本 1.1g
  • characterSetResults

    指示伺服器傳回以指定 Java 編碼的預設字元集編碼的資料。如果未設定或設定為「null」,伺服器將以其原始字元集傳送資料,且驅動程式將根據結果中繼資料解碼資料。

    自版本 3.0.13
  • connectionCollation

    指示伺服器將工作階段系統變數「collation_connection」設定為指定的定序名稱,並將「character_set_client」和「character_set_connection」設定為對應的字元集。如果且僅當「characterEncoding」未設定或設定為與定序不相容的字元集時,此屬性會以該定序所屬的預設字元集覆寫「characterEncoding」的值。這表示「connectionCollation」可能並非總是能修正字元集不符的情況。例如,如果「connectionCollation」設定為「latin1_swedish_ci」,則 MySQL 對應的字元集為「latin1」,這會將其對應至 Java 字元集「windows-1252」;因此,如果未設定「characterEncoding」,則「windows-1252」是將使用的字元集;但如果「characterEncoding」已設定為例如「ISO-8859-1」,則該設定與「latin1_swedish_ci」相容,因此字元編碼設定會保持不變;並且如果用戶端實際上使用「windows-1252」(與「ISO-8859-1」相似但不同),則某些字元會發生錯誤。如果未設定此屬性,也未設定屬性「characterEncoding」

    對於 Connector/J 8.0.25 及更早版本,驅動程式會嘗試使用伺服器的預設字元集;

    對於 Connector/J 8.0.26 及更新版本,驅動程式將使用 utf8mb4 的預設定序。

    自版本 3.0.13
  • customCharsetMapping

    以逗號分隔的自訂「charset:java encoding」配對清單。

    如果 MySQL 伺服器是以自訂字元集設定,且「detectCustomCollations=true」,則 Connector/J 需要知道這些字元集所表示的資料要使用哪個 Java 字元編碼。例如用法:「customCharsetMapping=charset1:UTF-8,charset2:Cp1252」。

    自版本 8.0.26
  • trackSessionState

    在查詢結果上接收伺服器工作階段狀態變更。這些變更可透過「MysqlConnection.getServerSessionStateController()」存取。

    預設值 false
    自版本 8.0.26