数据库使用MYSQL,编程语言使用C。现在有个脚本,可以向数据库插入数据。我用过函数system(),没问题。可是一放到测试端就无法插入数据,在本机却一点问题也没有。所以,只好换个方法了。想到在连接MYSQL后使用 "source filename.sql",可是会报错,说语法不对。请问,还有没有什么方法,可以在C中执行SQL脚本?
解决方案 »
- 刚准备学Mysql,求助高手.
- mysql 创建函数出错了。我在本地可以创建我空间是godaddy
- MYSQL所在机器磁盘满了以后,写入数据库会阻塞吗?
- 怎么在phpadmin里面修改mysql里面的用户密码啊?
- MySQL5.0存储过程返回2个结果集,在C#中用NextResult,读取不到!急!
- 关于where和order by的问题
- ~~~~~~~~~~~~~~MYSQL的两个驱动那里下载呀?~~~~~~~~~~~~~~
- #请推荐mysql编程书籍,主要是在linux下使用
- mysqldump着急阿.....在线!!!!!!!!!!!
- 急急急!!怎么能把MY SQL里的数据导入到SQL server2000中
- mysql 列变成行转换怎么写?(列行转换)
- 2种缓存有什么区别
你只能想办法用 system(), 出错信息是什么?
调用system没任何问题,也没任何出错信息。为了方便测试端调试,我分别在system调用前后加了输出信息,"before system" "after system",结果这两条信息都输出了。程序也没有中断。所以,我想是不是因为测试端的环境没有配置好,才会出这样的问题的。
确保MYSQL的bin目录在path的头位置。
确保my.ini位置及内容正确。先用原始命令在测试端测一遍,再跑你的程序试下。
system()的原型是:int system( const char* command );
其中command是一条SHELL命令,system执行这条命令的环境是sh,调用sh -c 执行command命令,这是在子进程中执行的。更具体的可以参考一下man手册。