我尝试使用C程序将本地数据文件network.txt加载到mysql的表网络中。我这样做,但它不起作用。错误信息为mysql_query(&con, "load data local infile 'network.txt' into table network")
。
#include <mysql/mysql.h>
#include <stdio.h>
#include <stdlib.h>
int
main(int argc, char *argv[])
{
MYSQL con;
mysql_init(&con);
if (mysql_real_connect(&con, "localhost",
"hel", "password", "mydatabase", 0, NULL, 0) == NULL) {
exit(0);
}
/* delete table network if it exists */
if (mysql_query(&con, "drop table if exists network") != 0) {
exit(0);
}
/* create table network */
if (mysql_query(&con, "create table network(IP varchar(20), primary key (IP))") != 0) {
exit(0);
}
/* load data file to table */
if (mysql_query(&con, "load data local infile 'network.txt' into table network") != 0) {
exit(0); // ************error **************
}
mysql_close(&con);
return 0;
}
修改 ======================================= ===================
我发现load data local infile 'network.txt' into table network
是shell命令,而不是mysql命令。也许这就是错误。我怎么能用C加载数据文件。
答案 0 :(得分:0)
network.txt
的路径是否正确?考虑提供绝对路径。