問題描述:項目用了 JPA自動創建表,結果數據庫默認字符編碼爲 latin1編碼,然後插入中文就報錯了,命令行命令不常用,這邊記錄下
解決方法:
show create table {table_name}; 查看 表的字符編碼和列的字符編碼
alter table salary character set utf8 ; 修改表字符編碼
alter table {table_name} change {column_name} {column_name} {column_type} CHARACTER SET utf8 ;
修改MySQL默認編碼格式方法如下:
Ubuntu 通過 apt-get install 安裝的 MySQL
nano /etc/mysql/mysql.conf.d/mysqld.cnf 修改配置文件
[mysqld] 下面加一行 character_set_server = utf8 保存
service mysql restart 重啓MySQL服務
進入MySQL 控制檯
show variables like 'character%'; 查看各種字符編碼驗證
我自己的解決方法:
我是新建的表,之前沒有數據,所以取巧了下:
show create table {table_name}; 得到建表語句
然後 把裏面 字符類型的後面都加上或者改爲 CHARACTER SET utf8
表後面也加上 DEFAULT CHARSET=utf8
之後 drop table {table_name}; 刪除表
重新運行新的建表語句就OK了
比 一個一個改列方便多了