>--练习总结

      看了一些关于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。

 

 

     守得云开见月明

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值