安装完MySQL之后,将安装目录中的include目录下的libmysql.lib文件拷到VS2008安装目录中的VC\lib\下,然后在 项目-选项-c/c++-常规 中的附加包含目录以及 链接器-常规 中的附加库目录中加入“c:\MySQL\include\”,并且在 链接器-输入 中的附加依赖项内添加“libmysql.lib”,这样即可使编译器找到mysql.h头文件,并可在程序中使用c语言的mysql API来操作数据库。(如果MySQL安装目录中无include目录,可到MySQL官网下载并安装MySQL connector for C,并修改include目录路径)
01 | #include <Windows.h> |
02 | #include <stdio.h> |
03 | #include <stdlib.h> |
04 | #include <string.h> |
05 | #include <mysql.h> |
06 | #include <iostream> |
07 | using namespace std; |
08 |
09 | int main() |
10 | { |
11 | const char user[] = "root" ; //username |
12 | const char pswd[] = "root" ; //password |
13 | const char host[] = "localhost" ; //or"127.0.0.1" |
14 | const char table[] = "test" ; //database |
15 | unsigned int port = 3306; //server port |
16 | MYSQL myCont; |
17 | MYSQL_RES *result; |
18 | MYSQL_ROW sql_row; |
19 | MYSQL_FIELD *fd; |
20 | char column[32][32]; |
21 | int res; |
22 | mysql_init(&myCont); |
23 | if (mysql_real_connect(&myCont,host,user,pswd,table,port,NULL,0)) |
24 | { |
25 | cout<< "connect succeed!" <<endl; |
26 | mysql_query(&myCont, "SET NAMES GBK" ); //设置编码格式,否则在cmd下无法显示中文 |
27 | res=mysql_query(&myCont, "select * from samples" ); //查询 |
28 | if (!res) |
29 | { |
30 | result=mysql_store_result(&myCont); //保存查询到的数据到result |
31 | if (result) |
32 | { |
33 | int i,j; |
34 | cout<< "number of result: " <<(unsigned long )mysql_num_rows(result)<<endl; |
35 | for (i=0;fd=mysql_fetch_field(result);i++) //获取列名 |
36 | { |
37 | strcpy (column[i],fd->name); |
38 | } |
39 | j=mysql_num_fields(result); |
40 | for (i=0;i<j;i++) |
41 | { |
42 | printf ( "%s\t" ,column[i]); |
43 | } |
44 | printf ( "\n" ); |
45 | while (sql_row=mysql_fetch_row(result)) //获取具体的数据 |
46 | { |
47 | for (i=0;i<j;i++) |
48 | { |
49 | printf ( "%s\n" ,sql_row[i]); |
50 | } |
51 | printf ( "\n" ); |
52 | } |
53 | } |
54 | } |
55 | else |
56 | { |
57 | cout<< "query sql failed!" <<endl; |
58 | } |
59 | } |
60 | else |
61 | { |
62 | cout<< "connect failed!" <<endl; |
63 | } |
64 | if (result!=NULL) mysql_free_result(result); //释放结果资源 |
65 | mysql_close(&myCont); //断开连接 |
66 | return 0; |
67 | } |
[代码] [C/C++]代码
01 | 测试环境:MySQL 5.1.35 |
02 | 安装MySQL之后,打开MySQL Command Line Client,输入root密码,即可操作数据库 |
03 |
04 | //查看MySQL版本 |
05 | mysql> select version(); |
06 |
07 | //显示所有数据库 |
08 | mysql> show databases; |
09 |
10 | //使用数据库 |
11 | mysql> use database_name; |
12 |
13 | //显示所有数据表 |
14 | mysql> show tables; |
15 |
16 | //显示数据表结构 |
17 | mysql> describe table_name; |
18 |
19 | //创建数据库 |
20 | mysql> create database database_name; |
21 |
22 | //删除数据库 |
23 | mysql> drop database database_name; |
24 |
25 | //创建数据表 |
26 | mysql> use database_name; |
27 | mysql> create table table_name (字段名 VARCHAR(20), 字段名 CHAR (1)); |
28 |
29 | //删除数据表 |
30 | mysql> drop table table_name; |
31 |
32 | //查询记录 |
33 | mysql> select * from table_name; |
34 |
35 | //导入.sql文件 |
36 | mysql> use database_name; |
37 | mysql> source c:/mysql.sql |
38 |
39 | //修改root密码 |
40 | mysql> UPDATE mysql.user SET password=PASSWORD( '新密码' ) WHERE User= 'root' ; |
41 |
42 | //退出 |
43 | mysql> quit |