类似这种写法 cmd=new sqlcmd("select * from foo where id=?id",conn)
cmd.addParam("id",123)
rs=cmd.exec()在mysql中如何写? 请注意,要纯粹的参数化查询, 而不是通过字符串连接实现的
cmd.addParam("id",123)
rs=cmd.exec()在mysql中如何写? 请注意,要纯粹的参数化查询, 而不是通过字符串连接实现的
自己写一个封装起来或者运用现成的.其实最终都转化成sql语句,呵呵.
举个例子, ado 是跟数据库引擎有关的,不同数据库传参方式不一样(指写法), 至于这种差异是在哪个层次引起的我不太清楚.另外说最终都转化成sql语句,这也不是我要的效果, 举例的话odbc参数化查询的方式就类似于调用存储过程时的传参,
跟字符串连接方式是不同的
mysql_real_escape_string($Username),
mysql_real_escape_string($Password));
mysql_query($query);
或是$db = new mysqli("localhost", "user", "pass", "database");
$stmt = $mysqli -> prepare("SELECT priv FROM testUsers WHERE username=? AND password=?");
$stmt -> bind_param("ss", $user, $pass);
$stmt -> execute();第一个例子最终生成sql语句.
至于mysqli这个类,如果楼主有意,可以查看一下c++源码.
至少这个是你所需要的.呵呵.
第一个例子在wiki里看到了,放在那里真觉得不太合适第二种是我想要的,相当吻合了