Linux下C语言和Mysql数据库
#include <stdlib.h> #include <stdio.h> #include <mysql/mysql.h> // 要把MySQL头文件設置好 int main(int argc, char *argv[]) { int t, r; char *query; MYSQL *conn_ptr; MYSQL_RES *res; MYSQL_ROW row; // 初始化一个类型为MYSQL的数据结构 conn_ptr = mysql_init(NULL); if (!conn_ptr) { fprintf(stderr, "mysql_init failed\n"); return EXIT_FAILURE; } // 与MySQL数据库引擎建立连接。 conn_ptr = mysql_real_connect(conn_ptr, "localhost", "root", "root", "test", 0, NULL, 0); if (conn_ptr) { printf("Connection success\n"); } else { printf("Connection failed\n"); } //query = "delete from stu where name = 'c'"; //t=mysql_real_query(conn_ptr,query, (unsigned int)strlen(query) ); query = "select * from stu"; // 执行query字符串中的SQL语句 t = mysql_real_query(conn_ptr, query, (unsigned int)strlen(query) ); if (t) { printf("Error making query: %s\n", mysql_error(conn_ptr)); } else { printf("Query made...\n"); } // 获取语句执行的返回结果。 res=mysql_use_result(conn_ptr); for(r = 0; r <= mysql_field_count(conn_ptr); r++) { // 取回结果集中的下一条记录 。 row = mysql_fetch_row(res); if(row < 0) break; // 获得一条记录中的各个字段 for(t = 0; t < mysql_num_fields(res); t++) { printf("%s ",row[t]); } printf("\n"); } mysql_close(conn_ptr); return 0; } // 用以下命令使用 GCC 编译 这个 C源文件.(linux系统要安装GCC和 MySQL嵌入式开发包) // gcc -o C_MySQL_o -g C_MySQL.c -lmysqlclient