mysql增删改查

 1 /*mysql.c,连接本地mysql服务器的c程序
 2 *mysql数据库的增删改查基本操作
 3 *2012-10-3
 4 */
 5 
 6 #include <stdlib.h>
 7 #include <stdio.h>
 8 #include <string.h>
 9 #include <mysql/mysql.h>     //MySQL头文件
10 
11 int main(int argc, char *argv[]) {
12    // 初始化一个类型为MYSQL的数据结构
13    MYSQL *mysql;
14    mysql = mysql_init(NULL);  
15    if (!mysql){  
16       fprintf(stderr, "mysql_init failed\n");
17       return EXIT_FAILURE;  
18    }
19 
20    // 建立连接。
21    mysql = mysql_real_connect(mysql, "127.0.0.1", "root", "123",  
22      "mysqltest", 0, NULL, 0);  
23     if(mysql){  
24       printf("Connection success\n");  
25     } 
26     else {  
27       printf("Connection failed\n");  
28     }  
29 
30     //创建表
31     mysql_query(mysql,"create table name(id int(3) auto_increment not null primary key,"
32                "xm char(8),xb char(4),csny date) DEFAULT CHARSET=utf8");
33 
34     //插入数据
35     mysql_query(mysql,"insert into name values('','小峰' , '男' , '1990-12-18')");
36     mysql_query(mysql,"insert into name values('','瑶瑶','女','1990-05-16')");
37     mysql_query(mysql,"insert into name values('','坏蛋','男','1989-7-25')");    
38 
39     //删除
40     mysql_query(mysql,"delete from name where xm='兰瑶' ");
41 
42     //修改
43     mysql_query(mysql,"update name set csny='1990-06-18' where xm='肖峰' ");
44 
45     //查询
46     mysql_query(mysql,"select * from name");
47 
48     // 获取语句执行的返回结果。
49     MYSQL_RES *res;
50     res=mysql_store_result(mysql);
51 
52     //显示
53     MYSQL_ROW row;
54     int r,t;
55     for(r = 1; r <= mysql_num_rows(res); r++) //行数
56     {
57       // 取回结果集中的下一条记录 。
58       row = mysql_fetch_row(res);
59      
60       // 获得一条记录中的各个字段
61       for(t = 0; t < mysql_num_fields(res); t++)//列数
62       {
63          printf("%s ",row[t]);
64       }
65       printf("\n");
66     }
67 
68     //释放空间
69     mysql_free_result(res);
70     mysql_close(mysql);  
71 
72     return 0;
73 }

posted on 2012-10-03 14:53  小风儿_xf  阅读(1982)  评论(0编辑  收藏  举报

导航