24小时热门版块排行榜    

查看: 2477  |  回复: 9

cr153

新虫 (初入文坛)

[求助] C++调用mysql,想完成一个如下的查询,却查询失败。急求解决方法

case 3:     int paper_id;
                  cout<<"请输入ID"<                   cin>>paper_id;
                  res=mysql_query(&myCont,"select * from id_table where id=paper_id“);//查询



----------------------------------------------------------------------------------------------------
以上为局部代码
此功能很简单就是,用户输入想要查询的ID,然后数据库查询之后返回该ID的信息
问题好像是在代码中定义的int paper_id无法传入到mysql_query这个接口中
其实原因也很简单,整个SQL查询语句都在引号中,整个语句当作字符串。当然paper_id也当成了字符
  
  请问,想实现这个功能,应该怎么修改?
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖置顶 ( 共有1个 )

nlyang

禁虫 (著名写手)

★ ★
感谢参与,应助指数 +1
conanwj: 金币+1, 专家考核, 感谢研讨 2012-05-31 13:31:36
cr153: 回帖置顶 2012-05-31 21:52:32
cr153: 金币+1, ★★★★★最佳答案, 成功实现了功能~感谢 2012-05-31 21:52:49
本帖内容被屏蔽

9楼2012-05-31 13:02:01
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

chw521

木虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
"select * from id_table where id=paper_id“ 改为 "select * from id_table where id=" + paper_id
2楼2012-05-30 15:35:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wudao99

禁虫 (初入文坛)

感谢参与,应助指数 +1
本帖内容被屏蔽

3楼2012-05-30 16:37:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

bobobobo_8888

新虫 (初入文坛)

【答案】应助回帖

感谢参与,应助指数 +1
int paper_id;
string paper_id;
                  cout<<"请输入ID"<                   cin>>paper_id;
                  res=mysql_query(&myCont,"select * from id_table where id=" + paper_id);//查询
4楼2012-05-30 16:44:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cr153

新虫 (初入文坛)

???????:
2?: Originally posted by chw521 at 2012-05-30 15:35:04
"select * from id_table where id=paper_id“ 改为 "select * from id_table where id=" + paper_id

????????????????
5楼2012-05-30 21:47:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cr153

新虫 (初入文坛)

引用回帖:
4楼: Originally posted by bobobobo_8888 at 2012-05-30 16:44:14
int paper_id;
string paper_id;
                  cout<<"请输入ID"<<endl;
                  cin>>paper_id;
                  res=mysql_query(&myCont,"select *  ...

系统报错,重定义
6楼2012-05-30 21:48:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

onluy

银虫 (小有名气)

【答案】应助回帖


conanwj: 金币+1, 应助指数+1, 感谢研讨 2012-05-31 13:31:15
首先你要看下在表id_table中属性列id的数据类型。
如果是字符串。
res=mysql_query(&myCont,"select * from id_table where id=‘" + paper_id+“’”);
也就是这个查询语句应该是3个字符串构成的
1、"select * from id_table where id=‘"
2、 paper_id
3、"'"
因为在sql语句中字符串要用单引号
天行健,君子以自强不息
7楼2012-05-30 23:02:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cr153

新虫 (初入文坛)

引用回帖:
7楼: Originally posted by onluy at 2012-05-30 23:02:14
首先你要看下在表id_table中属性列id的数据类型。
如果是字符串。
res=mysql_query(&myCont,"select * from id_table where id=‘" + paper_id+“’”);
也就是这个查询语句应该是3个字符串构成的 ...

表中id的类型为int
8楼2012-05-31 11:20:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cr153

新虫 (初入文坛)

引用回帖:
9楼: Originally posted by nlyang at 2012-05-31 13:02:01
int的话,就必须把int转成字符串,大概思路如下:
char * sql=new char;
memset(sql,'\0',100);
sprintf(sql,"select * from id_table where id=%d;",paper_id);
再执行sql,

如果还是不对,你就直 ...

跪谢啊~
刚才用您的代码试了一下,功能成功实现了~
我不是知识不太了解啊,压根就不了解,挂科生啊~....
这是明天要叫的大作业里的一部分
  再次感谢,好人一生平安~
10楼2012-05-31 21:52:14
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 cr153 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 怎么查啊 +6 huang1991js 2026-08-26 6/300 2026-08-28 08:42 by winsaint
[基金申请] 基金系统什么内容也没有 30+4 winsaint 2026-08-27 8/400 2026-08-28 08:26 by lfy8008
[基金申请] 国自然面上复盘~欢迎讨论 (金币+5) +11 晴天加油 2026-08-26 12/600 2026-08-28 01:22 by li09465290@
[基金申请] 哪位高人中了,把查询到的截图贴出来让我看看,让我长长见识 +5 yuleib84 2026-08-26 6/300 2026-08-28 00:02 by yudaoqian88
[基金申请] 面上合作单位盖章 +5 ssyjh 2026-08-27 5/250 2026-08-27 20:50 by gdfollow
[教师之家] 导师吐槽:我怎么摊上了这么个极品研究生! +7 苏东坡二世 2026-08-23 7/350 2026-08-27 18:14 by 瞬息宇宙
[基金申请] 申请删除本帖 +6 lyz123lyz 2026-08-27 7/350 2026-08-27 17:31 by 宁静致远sy
[基金申请] 基金不中,共勉 +10 eulota 2026-08-26 10/500 2026-08-27 17:23 by lqllinqiaoli
[基金申请] 看板上这么多中的,有点像50人群里49个人都是骗子的那种感觉…… +5 a089 2026-08-26 6/300 2026-08-27 14:05 by jonewore
[基金申请] 我不理解! +15 Edward_pc 2026-08-26 23/1150 2026-08-26 20:34 by zzuzxg
[基金申请] 范进中举一文的中心思想 +9 炎黄贵胄 2026-08-22 10/500 2026-08-26 15:40 by semaglutide
[基金申请] 2026国自然函评费到账 +22 羊腰板 2026-08-21 25/1250 2026-08-26 15:00 by zuocuiping
[基金申请] 为什么国自然不能直接公布 +4 bjdxyxy 2026-08-26 4/200 2026-08-26 13:12 by qingmu1201
[基金申请] 国合里面能看到了 +7 一怀馨秋 2026-08-26 7/350 2026-08-26 11:23 by zhaosm1982
[基金申请] 项目信息和经费信息在系统里都可以看到了 +6 wittyboy 2026-08-26 14/700 2026-08-26 10:55 by wittyboy
[基金申请] 今天务委会开完了,明天出结果吗 +19 angus9576 2026-08-25 23/1150 2026-08-26 10:03 by zp519
[基金申请] 国合现在查不到了吗? +10 chengyan1220 2026-08-24 20/1000 2026-08-26 08:57 by peasantsprig
[基金申请] 某些机构,以效率低为荣,以效率低作为存在感 +9 yuleib84 2026-08-25 10/500 2026-08-25 17:14 by alexon
[基金申请] 建议基金发布提前给出明确的时间点 +13 kulium 2026-08-21 16/800 2026-08-24 16:27 by superceng
[教师之家] 跳槽后在研项目怎么办? +5 简单化xn 2026-08-22 10/500 2026-08-23 12:38 by 简单化xn
信息提示
请填处理意见