>--练习总结
2009-11-10 18:43
756 查看
看了一些关于MySQL与C接口的文章,自己也终于经过努力后顺利实现了在数据库和表已经存在的前提下,进行了插入数据的操作,
程序如下:
#include </usr/include/mysql/mysql.h> //绝对要写绝对路径,以防没有找到库
#include<stdio.h>
#include<stdlib.h>
int main(int argc, char **argv)
{
MYSQL mysql,*ptr;
MYSQL_ROW row;
char SqlText[500]="";
float da=6.0;
int num= 1257487794;
mysql_init(&mysql);//分配或初始化与mysql_real_connect()
相适应的MySQL
对象。
如果mysql
是NULL
指针,
该函数将分配、初始
化, 并返回新对象。否则,将初始化对象,并返回对象的地址。
if((ptr=mysql_real_connect(&mysql,"localhost","root","123456","wangwei",0,NULL,0))!=0) //试图建立与运行在主机上的
MySQL
数据库引擎的连接
。
{
printf("connected../n");
}
else
{
printf("Error connecting to database: %s/n" ,mysql_error(&mysql));
exit(1);
}
sprintf(SqlText,"insert into mydata values(%.1f,%d)", da, num); //SQL语句绝对要在mySQL中执行过后复制过来,以防有错。
sprintf()函数 将字串格式化,做字符转换用。
if(!mysql_query(ptr, SqlText))//执行由“Null
终结的字符串”查询指向的SQL
查询。成功,返回0
。
{
printf("ok/n");
}
else
{
printf("Can't insert data to table!%s/n",mysql_error(ptr));
}
mysql_close(ptr);//关闭前面打开的连接。如果句柄是由mysql_init()
或mysql_connect()
自动分配的,mysql_close()
还将解除分配由
mysql
指向
的连接句柄。
return 0;
}
补充:sprintf(SqlText,"insert into mydata values(%.1f,%d)", da, num);该语句解决了mysql_query()函数如何利用变量插入数据表的问题!
本人所用系统为UBUNTU9.10。
守得云开见月明
程序如下:
#include </usr/include/mysql/mysql.h> //绝对要写绝对路径,以防没有找到库
#include<stdio.h>
#include<stdlib.h>
int main(int argc, char **argv)
{
MYSQL mysql,*ptr;
MYSQL_ROW row;
char SqlText[500]="";
float da=6.0;
int num= 1257487794;
mysql_init(&mysql);//分配或初始化与mysql_real_connect()
相适应的MySQL
对象。
如果mysql
是NULL
指针,
该函数将分配、初始
化, 并返回新对象。否则,将初始化对象,并返回对象的地址。
if((ptr=mysql_real_connect(&mysql,"localhost","root","123456","wangwei",0,NULL,0))!=0) //试图建立与运行在主机上的
MySQL
数据库引擎的连接
。
{
printf("connected../n");
}
else
{
printf("Error connecting to database: %s/n" ,mysql_error(&mysql));
exit(1);
}
sprintf(SqlText,"insert into mydata values(%.1f,%d)", da, num); //SQL语句绝对要在mySQL中执行过后复制过来,以防有错。
sprintf()函数 将字串格式化,做字符转换用。
if(!mysql_query(ptr, SqlText))//执行由“Null
终结的字符串”查询指向的SQL
查询。成功,返回0
。
{
printf("ok/n");
}
else
{
printf("Can't insert data to table!%s/n",mysql_error(ptr));
}
mysql_close(ptr);//关闭前面打开的连接。如果句柄是由mysql_init()
或mysql_connect()
自动分配的,mysql_close()
还将解除分配由
mysql
指向
的连接句柄。
return 0;
}
补充:sprintf(SqlText,"insert into mydata values(%.1f,%d)", da, num);该语句解决了mysql_query()函数如何利用变量插入数据表的问题!
本人所用系统为UBUNTU9.10。
守得云开见月明
相关文章推荐
- &lt;算法竞赛入门经典&gt; 第8章 贪心+递归+分治总结
- asp.net的<% %>总结
- <think python>一些练习的答案
- <2011-04-27总结 关于编程累积>
- <iOS>iphone技术总结,整合一下
- <<Machine learning: Trends, perspectives, and prospects>> 总结
- <Python基础教程>_第四章_总结
- <读书笔记>Windows内核安全 ---串口过滤驱动(3) 相关知识总结
- asp.net 前台绑定后台变量方法总结:<%= %> 和<%# %>的区别
- asp.net的<% %>总结
- <无线局域网媒体访问控制和物理层规范:汇聚无线控制技术规范>学习总结
- <C/C++>C语言字节对齐问题总结
- MFC中的 Document / View 结构的使用 <转载+自己总结,MFC中的MVC>
- <逆向工程核心原理> 动态反调试技术总结
- <转载>在Eclipse中用JDBC连接Sql Server 2005总结
- <Fast Tracking via Spatio-Temporal Context Learning> 阅读和算法使用总结
- <备份>LVM总结
- <总结>delphi WebBrowser控件的使用中出现的bug
- 背包系列练习及总结(hud 2602 && hdu 2844 Coins && hdu 2159 && poj 1170 Shopping Offers && hdu 3092 Least common multiple && poj 1015 Jury Compromise)
- UVa 509 - RAID! <位运算练习>