草庐IT

prepared

全部标签

mysql - 我可以在函数中使用 MySQL PREPARE 语句来创建具有可变表名的查询吗

我想创建一个函数,里面有一个选择查询,可以用于多个数据库表,但我不能使用变量作为表名。我可以在函数中使用PREPARE语句来解决这个问题吗?一个例子:FUNCTION`TESTFUNC`(dbTableVARCHAR(25))RETURNSbigint(20)BEGINDECLAREdateregDATETIME;DECLAREstmtVARCHAR(255);SETstmt:=concat('SELECTdateTFROM',dbTable,'ORDERBYdateTDESCLIMIT1');PREPAREstmtFROM@stmt;EXECUTEstmt;RETURNdateT;E

php - Prepared Statements 没有速度优势?

我听说如果多次执行查询,MySQL数据库的准备语句可以提高速度,我认为我在项目中有一个理想的案例。但是我运行了一些基准测试并发现了完全相反的情况。我是否使用了这些语句错误(对于准备语句来说不是理想的情况),或者它们没有我想象的那么快?情况是锦标赛结果网格。有多所学校参加了多项事件,每所学校的每项事件都有一个分数。为了获得个别学校的所有事件的分数,它需要一个带有LEFTJOIN的SQL查询,例如:SELECTe.`id`,e.`name`,c.`competing`,c.`raw`,c.`final`FROM`events`eLEFTJOIN`scores`cONe.`id`=c.`ev

MySQL加载数据: This command is not supported in the prepared statement protocol yet

我正在尝试编写一个MySQL脚本来将数据导入到我的Linux服务器的一个表中。这是名为update.sql的脚本:SET@query=CONCAT("LOADDATALOCALINFILE'",@spaceName,"'INTOTABLEtmpFIELDSTERMINATEDBY','LINESTERMINATEDBY'\n';");PREPAREstmtFROM@query;EXECUTEstmt;DEALLOCATEPREPAREstmt;另外,我编写了一个名为main.sh的bash脚本:mysql-h"localhost"-u"root""-pmypassword""mydb"

PHP Prepared MySQL 语句开始加引号

因此,我已经在多个项目中使用准备好的语句一段时间了,这是与MySQL数据库交互的一种非常干净的方式,但今天我遇到了一个奇怪的问题。我准备好的语句已经开始向sql语句添加额外的'并且对于我的生活我不知道为什么......代码如下:_db->prepare($sql);$stmt->bindParam(":sortby",$sortby,PDO::PARAM_STR);$stmt->bindParam(":offset",$offset,PDO::PARAM_INT);$stmt->execute();?>所以上面没有返回任何东西,所以查看数据库日志,这就是查询的样子SELECTimg_i

php - 准备好的 SQL 语句不是 'preparing'

我正在尝试制作一个可以在我所有网站上使用的基本点击计数器。我有一个准备好的语句查询我的GoDaddyMySQL服务器和我的MAMPMySQL服务器,并且该语句不会“准备”。在这里:functionhit_counter($url){if($mysqli=newmysqli('localhost','root','','DB')){$crack="SELECThc-id,hc-url,hc-unique_hits,hc-total_hits,hc-last_viewedFROMhit_counterWHEREhc-url=?";if($stmt=$mysqli->prepare(crac

java - 在 Java 中使用带有 Prepared Statement 的 LIMIT 命令的 MySQL 语法错误

我正在用Java编写代码,每次运行这段代码时我都想从MySQL表中取出下一行。我第二次运行这段代码时是这样的。Stringtimh1="1";Stringtimh2="2";PreparedStatementst=null;StringsqlGrammes="SELECTSURNAME,KATHGORIA,AFM,NAMEFROMEMPLOYEELIMIT?,?";try{st=connection.prepareStatement(sqlGrammes);st.setString(1,timh1);st.setString(2,timh2);但它向我显示了这个错误:com.mysql

java - 如果其中一个字段可能为空,如何更新表中的多个字段?

我想在名为Personnel-table的表中更新用户个人信息的5字段。用户可能想要更新所有字段、部分字段或根本不更新任何字段。用户可能想要更新的字段是:FirstName、LastName、Password、UserName和地址.该代码执行此操作:publicbooleanupdateUserInfo(String_idnumber,String_usernameNew,String_passwordNew,String_addressNew,String_firstNameNew,String_lastNameNew)throwsSQLException{ResultSetres

PHP PDO Prepared Statement MySQL Count of Select where X LIKE

使用PHPv.5.2.14和PDO-MySQL扩展。我是准备好的陈述的新手。需要创建一个搜索表单(以便用户输入)和一个“选择所有X,其中X喜欢……”的工作查询。代码和结果:$sql='SELECTCOUNT(*)asnum_booksfromt_bookswheretitleLIKE:search_term';//Lateraccessasnum_books$prep=$dbh->prepare($sql);$num=$prep->execute(array(':search_term'=>'%'.$search_term.'%'));$total=$num->fetchColumn(

php - "No data supplied for parameters in prepared statement"

所以我正在重新编写一个脚本以包含准备好的语句。之前它工作正常,但现在我在脚本运行时收到“没有为准备好的语句中的参数提供数据”。这里有什么问题?error;$result=mysqli_query($mysqli,$stmt);if($result===false){echo"Errorenteringdata!";echomysqli_error($mysqli);}else{echo"User$firstnameadded";}?>提前致谢。 最佳答案 您只通过控制字符串“sssd”绑定(bind)了四个参数,但您有很多参数。my

php - PDO : Error not caught when executing prepared statement 故障排除

这个问题在这里已经有了答案:WhydoesthisPDOstatementsilentlyfail?(1个回答)关闭1年前。我在使用PDO时遇到了问题,因为没有捕获到错误。代码很简单并且工作得很好,我将包含一个示例以避免混淆:$sql='INSERTINTOsomedatetable(something)VALUES(:something)ONDUPLICATEKEYUPDATEsomething=:something';$values=array(":something"=>$something);try{$stmt=$dbh->prepare($sql);$stmt->execut