我的C++程序中有以下代码:
query_state = mysql_query(connection, "select * from cplpl");
Run Code Online (Sandbox Code Playgroud)
如果我想用C++程序中的变量替换表名cplpl,我该怎么做?
基本上,我已经创造了
string tblnm="cplpl";
Run Code Online (Sandbox Code Playgroud)
但是如果我跑了
query_state = mysql_query(connection, "select * from tblnm");
Run Code Online (Sandbox Code Playgroud)
它寻找表tblnm.我尝试过$ tblnm,就像你在Perl中可以做到的那样,但这也不起作用
有没有办法解决这个问题?谢谢!
编辑:如果我重写如下:
string tblnm="test";
string qrycd="select * from " +tblnm;
query_state = mysql_query(connection, qrycd.c_str());
Run Code Online (Sandbox Code Playgroud)
但是,如果我想添加一个where子句,它可以工作
string qrycd1="where fname like '%Bob%';";
Run Code Online (Sandbox Code Playgroud)
并将代码重写为
string qrycd="select * from " +tblnm +qrycd1;
query_state = mysql_query(connection, qrycd.c_str());
Run Code Online (Sandbox Code Playgroud)
我收到一个错误..
这应该工作:
query_state = mysql_query(connection, ("select * from " + tblnm).c_str());
Run Code Online (Sandbox Code Playgroud)