私はmysqlデータベースにデータを挿入しようとしています。データの接続と表示が機能します。mysqlテーブルにデータを挿入するにはどうすればいいですか?
しかし、私はINSERT INTO table
コマンドをCコードでどのように使用するのか分かりません。
私はscanf
/getchar
の文字列をmysqlコマンドの値に読み込もうとしましたが、機能しませんでした。
私のプログラムでデータを読み込んだ後、どのようにデータをmysqlテーブルに挿入しますか?
私はLinuxで働いています。
これは私のソースコードです:
#include <stdio.h>
#include <stdlib.h>
#include <mysql/mysql.h>
static char *host = "localhost";
static char *user = "root";
static char *pass = "PASSWORD";
static char *dbname = "tutorial";
unsigned int port = 3306;
static char *unix_socket = NULL;
unsigned int flag = 0;
int main()
{
MYSQL *conn;
MYSQL_RES * res;
MYSQL_ROW row;
conn = mysql_init(NULL);
if(!(mysql_real_connect(conn, host, user, pass, dbname, port, unix_socket, flag)))
{
fprintf(stderr, "Error: %s[%d]", mysql_error(conn), mysql_errno(conn));
exit(1);
}
mysql_query(conn, "SELECT * FROM users");
res = mysql_store_result(conn);
while(row = mysql_fetch_row(res))
{
printf("%s\t%s\n", row[0], row[1]);
}
mysql_free_result(res);
mysql_close(conn);
return EXIT_SUCCESS;
}
私が試した:
...
int id[1] = 5;
char name[8] = "Jack";
...
mysql_query(conn, INSERT INTO users(id, name) VALUES(id, name);
...
試してみるとどうなりますか?エラーはありますか? – Taegost
エラーではありません。 –