遇到的問題以及解決思路方法
1.外部導入數據庫文件
進入mysql,創建數據庫sh_robot
source /home/exbot/sh_robot.sql
查看數據庫編碼格式
show variables like “%char%”;
?
2.數據庫插入操作
進入相關數據庫:use 數據庫名;
查詢存在該表是否存在:show tables;
不存在就創建 create table 表名;
insert into 表名 (字段名1,字段名2,…)values(值1,值2,…)
insert into childre(childno,fname) values(123,‘wanghao’);
?
3.c語言操作數據庫代碼編譯命令
gcc connect.c -o connect.c -I /usr/include/mysql -L /usr/lib/mysql -lmysqlclient
?
4.從數據庫中提取taskID和taskName 字符串命令
select* from task where taskState=1 order by taskLastEditTime desc;
?
5.C語言讀取數據庫中漢字時會出現亂碼,數據庫漢字編碼是uft-8,linux終端也是utf-8
mysql_options(&mysql, MYSQL_SET_CHARSET_NAME, "gbk");
這樣操作只能滿足從數據庫中讀取的漢字再插入回去沒有問題,但是再終端上還是顯示不出來
?
6.需要在查詢之前先設置查詢的屬性,設置字符集為utf8;mysql_query(&mysql, "set names utf8");
這樣在linux終端和數據庫中都可以顯示出中文了
7.確定數據庫,linux終端漢字字符編碼都要是統一的漢字格式
?