sql_strの箇所をselectからinsert文に変えるだけです。update, deleteも一緒です。
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <mysql/mysql.h> int main(){ MYSQL *conn = NULL; MYSQL_RES *resp = NULL; // MYSQL_ROW row; char sql_str[255]; char *sql_serv = "localhost"; char *user = "root"; char *passwd = "hogehoge"; char *db_name = "test"; memset( &sql_str[0], 0x00, sizeof(sql_str)); conn = mysql_init(NULL); if(!mysql_real_connect(conn, sql_serv, user, passwd, db_name, 0, NULL, 0)){ exit(-1); } snprintf(&sql_str[0], sizeof(sql_str)-1, "insert into test (id,name) values (4, 'ddd')"); if(mysql_query(conn, &sql_str[0])){ mysql_close(conn); exit(-1); } mysql_free_result(resp); mysql_close(conn); return 0; }
### コンパイル&実行
$ gcc -Wall -o dev hello.c -lmysqlclient -L/usr/lib/x86_64-linux-gnu/
$ ./dev
### 動作確認
mysql> select * from test;
+——+——+
| id | name |
+——+——+
| 1 | aaa |
| 2 | bbb |
| 3 | ccc |
| 4 | ddd |
+——+——+
4 rows in set (0.00 sec)
なるほど、DBとの接続はわかった。次はGUIか。