用C语言测试Multiple-Query
来源:互联网 发布:知否的人物关系图 编辑:程序博客网 时间:2024/04/30 08:18
raywill:~ raywill$ cat test.c#include <stdio.h>#include <mysql.h>#include <unistd.h>#include <stdlib.h>#include <string.h>int main(int argc, char* argv[]){ MYSQL *mysql,*sock; MYSQL_ROW row; MYSQL_RES *result; mysql = mysql_init(NULL); int port = 9519; char *host = "1.1.44.44"; char *user = "root"; char *pass = ""; char *db = "dbme"; if (!(sock = mysql_real_connect(mysql, host, user, pass, db, port, NULL, CLIENT_MULTI_STATEMENTS))) { //if (!(sock = mysql_real_connect(mysql, host, user, pass, db, port, NULL, 0))) { fprintf(stderr, "Couldn't connect to engine!\n%s\n\n", mysql_error(mysql)); perror(""); exit(1); } int i = 0; char *sql[3] = { "delete from t; insert into t values (1); select * from t; select * from t; select * from t;", "select 1;select from sdfsdf ;select 3, '^^^^^^^^^^^^^';", "create table if not exists t(i int primary key comment 'xiaochuxxx'); delete from t where i > 0; insert into t values(3); insert into t values (2);" }; for (i = 0; i < 3; ++i) { mysql_query(sock, sql[i]); do { printf("sql: %s\n", sql[i]); printf("total affected rows: %lld\n", mysql_affected_rows(sock)); result= mysql_store_result(sock); if (!result) { if(mysql_field_count(sock) == 0) { // query does not return data // (it was not a SELECT) int num_rows = mysql_affected_rows(sock); printf("Affected row %d\n", num_rows); } else { printf("Got fatal error processing query. %s\n", mysql_error(sock)); exit(1); } } else { row = mysql_fetch_row(result); printf("row value: %s\n", row[0]); mysql_free_result(result); } } while (!mysql_next_result(sock)); printf("no more result\n\n"); } return 0;}
编译方法:
raywill:~ raywill$ mysql_config --cflags --libs-I/usr/local/include-L/usr/local/lib -lmysqlclient
raywill:~ raywill$ gcc test.c -o testbin `mysql_config --cflags --libs`raywill:~ raywill$ ./testbin
0 0
- 用C语言测试Multiple-Query
- 【C语言】用C语言测试计算机大小端问题
- 大小端测试用例 (C语言)
- C语言测试
- C语言测试题
- C语言测试
- C语言测试
- C语言测试
- C语言测试
- C语言测试
- C语言测试题
- C语言测试题
- C语言测试题
- C语言测试题
- c语言测试工程师
- C语言测试
- c语言重复定义 multiple definition of `Recusion'
- hdu2028 Lowest Common Multiple Plus(C语言)
- Kafka 开发简单示例
- 通过attr获取元素的属性值
- 转载_At a Glance on Mac OS architecture
- 软件测试的自我修养之思维方式
- 一个关于Fragment的Bug的定位与总结
- 用C语言测试Multiple-Query
- Hibernate入门
- 苹果原生GET登录
- 关于CSS 外边距合并的问题
- java模拟登录。不会存在跨域问题
- 二、slice和数组的区别,map的注意事项 -go语言笔记
- 这段时间
- ajax传递参数含有特殊字符解决方案
- 彻底理解ldpi、mdpi、hdpi、xhdpi、xxhdpi