5.1版本符合JDBC3.0和JDBC4.0規范 跟MySQL4.1-5.7兼容 5.1.21以后支持JDK7的JDBC4.1規范 在MySQL4.1之前,是不支持utf8的 com.mysql.jdbc.Driver是推薦的Driver,org.gjt.mm.mysql.Driver是以前的 JdbcURL格式: jdbc:mysql://[host:3306].../[database] » [?PRopertyName1][=propertyValue1][&propertyName2][=propertyValue2]... 沒指定database的話,建議使用Connection.setCatalog(),而不要用sql語句"use database" 容災主機只支持自動提交模式,因為事務是無法保證的 并且只能進行只讀查詢 配置連接屬性的幾種方法: 1.java.sql.DataSource.setXXX() 2.DriverManager.getConnection(Properties)傳進去 3.DriverManager.getConnection(URL),或java.sql.DataSource.setURL() 可以是以下屬性: user,passwod ,passWordCharacterEncoding
connectTimeout=0 毫秒 interactiveClient=false 閑置時間取代等待時間allowMultiQueries =false ,語句中不能有分號,對批處理無影響
defaultFetchSize =0useUnicode 默認true characterEncoding 默認自動檢測 characterSetResults continueBatchOnError =true emptyStringsConvertToZero =true ,空字符串會變成 ‘0’maxRows =-1 返回的行數無限制
tinyInt1isBit =true, transformedBitIsBoolean =falseuseTimezone,在客戶端和服務器間自動轉換時區,默認false
zeroDateTimeBehavior=exception, 日期全0認為是異常,可選"exception", "round" and "convertToNull".
通過命名管道會比tcp/ip方式快30%-50%,不過windows下會更差 Connection.isClosed()方法只會檢測是否調用過close()方法 想真正檢測可以運行個sql,拋異常就是關閉了外鍵只能在InnoDB上使用 盡量不要用Statement.cancel() MySQL不支持游標 character_set_server系統變量,設置server的編碼 在客戶端設置編碼時,要用java風格的,UTF-8,GBK, 在服務器設置編碼時,要用mysql風格的,utf8,gbk
新聞熱點
疑難解答