2 visual studio1 VISUAL_STUDIO1 于 2016.03.19 09:23 提问

MySQL如何用C++通过函数把变量录入到数据库中

以下是关键代码

 /*
        for (int i = 1; i <= n; i++)
        {
            res = mysql_query(&myCont, "INSERT INTO `i` (`id`, `name`, `age`, `subject`, `score`) VALUES ('3', 'C', '12', '英语', '100')");//查询  

        }
        */   //模板
        for (int i = 1; i <= n; i++)
        {
            int id; /*char name[10]*/; int age; /*char subject[10]*/; int score; string name; string subject;

            cout << "intput id:"; cin >> id; cout << endl;
            cout << "input name:"; getline(cin, name);
            cout << "intput sge:"; cin >> age; cout << endl;
            cout << "input subject:"; getline(cin, subject);
            cout << "intput score:"; cin >> score; cout << endl;

            res = mysql_query(&myCont, "INSERT INTO `i` (`id`, `name`, `age`, `subject`, `score`)VALUES (id, 'name', age, 'subject', score)");
            //VALUES('3', 'C', '12', '英语', '100')");//查询  

        }

res = mysql_query(&myCont, "INSERT INTO i (id, name, age, subject, score)VALUES (id, 'name', age, 'subject', score)");
现在问题就是这句怎么改

2个回答

oyljerry
oyljerry   Ds   Rxr 2016.03.19 09:32
已采纳

用字符串拼接方式把变量组合sql语句字符串 然后执行

VISUAL_STUDIO1
VISUAL_STUDIO1 额,可以发代码我参考一下吗
2 年多之前 回复
qq423399099
qq423399099   Ds   Rxr 2016.03.19 10:26

方法1:用string拼接

string str = "NSERT INTO i (id, name, age, subject, score)VALUES ('";
std::stringstream ss;
std::string str_id;
ss<<id;
ss>>str_id;
str = str + str_id; 

...........(照此拼接下去,楼主注意别少拼单引号就行了)
方法2:用sprintf格式化写入

char str[64] = "NSERT INTO i (id, name, age, subject, score)VALUES ('";
char buffer[128] = {0};
int id = 4;
sprintf(buffer, "%s%d',", str, id); 

照此写下去。。。。。别忘记拼逗号和单引号什么的

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
如何利用python+mySQL写个数据库并且利用python将所需变量值写入数据库
在上两篇中我们介绍了在Ubuntu下MySQL的安装,以及如何在python中使用MySQL,本篇我们将基于一个实例讲如何将所需变量值在python中写入数据库,首先展示下效果。    以上是完成的效果展示。 主要步骤为:1、首先在mySql下建立数据库和表单,需要注意的是这里的两张表之间利用外键fram_id相关联,具体的如何建立两张表的外键可参考 http://wenku.
Python将txt文件输入到MySQL数据库中
数据库连接 连接数据库前,请先确认以下事项: 您已经创建了数据库 TESTDB. 在TESTDB数据库中您已经创建了表 EMPLOYEE EMPLOYEE表字段为 FIRST_NAME, LAST_NAME, AGE, SEX 和 INCOME。 连接数据库TESTDB使用的用户名为 “testuser” ,密码为 “test123”,你可以可以自己设定或者直接使用root用户名及其密码,Mysq
FineUI之使用SQL脚本从数据库表中生成相应的输入控件
在WEB开发时,经常需要依据数据库表中的字段建立相应的输入控件,来获取输入的数据。每次都需要按字段来敲,显然太低效,而且容易出错。这里提供一个SQL脚本生成相应输入控件的方法。 USE DBDemo DECLARE @TEMP_TABLE_NAME NVARCHAR(512) DECLARE @WIDTH NVARCHAR(50) SET @TEMP_TABLE_NAME='Stuff' SE
c语言中通过变量插入到数据库sql语句中
想把myname myage通过变量的形式插入到sql语句中,尝试了几次,终于成功,通过拼接生成sql语句,使用sprint()函数。
怎么在自定义函数里更改主函数的数据取值
1.将地址传入自定义函数 例: #include void  change(int &x); void  unchange(int x); int main() {     int a;     a = 0;    unchange(a);    printf("unchange:\n");     printf("%d", a);     change(a);
MySQL数据库mysqlcheck的使用方法详解
MySQL数据库mysqlcheck的使用方法的相关知识是本文我们主要要介绍的内容,我们知道,mysqlcheck,是mysql自带的可以检查和修复MyISAM表,并且它还可以优化和分析表,mysqlcheck的功能类似myisamchk,但其工作不同。 主要差别是当mysqld服务器在运行时必须使用mysqlcheck,而myisamchk应用于服务器没有运行时。使用mysqlcheck的好处
解析向MySQL数据库的表中录入数据的方法
MySQL数据库是一种开源数据库系统,功能性上较很多数据库有一定的差距,但是MySQL数据库还是凭借着速度快,适应性好等优点赢得了广大用户的青睐,本文将为大家介绍向MySQL数据库的表中录入数据的方法。 AD: 导读:MySQL数据库应用范围相对来说还是比较广泛的,MySQL数据库操作涉及到的知识还是很多的,其中,当你建好了数据库及表时,你首先想到
C语言ODBC操作MySQL数据库
c语言ODBC API编程   数据库及其编程API来源于不同的背景,开发人员可以从众多的数据库中选择一种,每种数据库都有自己的一套编程API,这就为数据库编程造成了很大的局限性。SQL是标准化数据库编程接口的一种尝试,然而各种数据库所支持的SQL又有所不同。 ODBC的设计目的是允许访问多种数据库,ODBC为数据库供应商提供了一致的ODBC驱动程序标准,遵循这个标准开发的数据库驱动程序,都
linux下如何使用c导入txt文件进行mysql数据库操作
首先你的安装一个linux系统 建议安装Ubnutu,因为这个系统比较全比Centos感觉要好些,而且图形界面也可以的,最关键的是Ubnutu库中有mysql.h,而centos中是没有的,网上有Ubnutu的安装方法,这里就不过多讲解了。 在安装一个ssh的远程客户端,关闭linux的防火墙 1) 重启后生效 开启: chkconfig iptables on 关闭: chkconfi
VS2015编写C语言程序连接mysql并插入变量
首先是VS2015能够连接到mysql,我是参照这个博客的,点击打开链接。 但是我下载的是mysql-install-community-5.7.18.0.msi版本的,所以mysql.h和libmysql.h在这个文件夹下的include和lib的文件夹下。 由于这个版本的mysql.h和libmysql.h的版本不一样,mysql.h的版本是32位的,libmysql.h却