第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

JDBC訪問數(shù)據(jù)庫, set names utf8 無法解決亂碼問題.

JDBC訪問數(shù)據(jù)庫, set names utf8 無法解決亂碼問題.

德瑪西亞99 2019-03-21 15:19:45
更新:總算是解決啦!. 是數(shù)據(jù)庫管理工具的問題. 氣死我啦. 浪費了我一個上午.這件事告訴我們, 學會逐層解決問題是有多重要.我想直接將set names utf8語句和插入語句一起執(zhí)行, 加個分號就可以啦.這樣在我的SQL-front上也能正常工作.但是到了代碼了就不行.后一種, 大概是因為執(zhí)行了兩次, 是不同的SQL語句, 所以無法解決亂碼很正常.求問有什么好的解決方式?String sql = "set names utf8";sql += "insert into student(name, age) values('為龍', 23)";ps.execute(); // 報語法錯誤.String sql = "set names utf8";ps.execute();sql += "insert into student(name, age) values('為龍', 23)";ps.execute(); // 無法解決亂碼問題.java 文件全部用utf-8.鏈接地址:jdbc:mysql://localhost:3306/database?useUnicode=true&characterEncoding=UTF-8"建表SQL:CREATE TABLE `student` (  `student_id` varchar(20) COLLATE utf8_bin ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin
查看完整描述

1 回答

?
jeck貓

TA貢獻1909條經(jīng)驗 獲得超7個贊

出現(xiàn)問題的原因是默認連接的是gbk編碼

解決方案如下:
找到mysql配置文件my.cnf,然后配置如下:

客戶端配置[client] 在下面添加
default-character-set=utf8 //默認字符集為utf8
在找到[mysqld] 添加
default-character-set=utf8 //默認字符集為utf8
init_connect='SET NAMES utf8' //(設定連接mysql數(shù)據(jù)庫時使用utf8編碼,以讓mysql數(shù)據(jù)庫為utf8運行)

然后重啟一下mysql,再運行下剛才的命令,都是utf-8后,在java程序中可以直接使用insert into 就不用前面那個set names了


查看完整回答
反對 回復 2019-04-25
  • 1 回答
  • 0 關注
  • 646 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號