草庐IT

Statement

全部标签

php - mysqli prepared statement查询错误在哪里?

这个问题在这里已经有了答案:CanIparameterizethetablenameinapreparedstatement?(2个答案)关闭去年。我正在尝试创建一个mysqli准备语句,其中我将表从odbc连接的数据库导入到mysql数据库,我在106列宽表查询中遇到此错误。YouhaveanerrorinyourSQLsyntax;checkthemanualthatcorrespondstoyourMySQLserverversionfortherightsyntaxtousenear'?(ID,column1,column2,column3,column4,'atline1"当

java - 在 '?' 附近使用的正确语法

我有一个Java代码:StringsearchPerson="select*frompersonswheresurnamelike?andnamelike?";//connecttoDBPreparedStatementstatement=connect.prepareStatement(searchPerson);statement.setString(1,"%"+surname+"%");statement.setString(2,"%"+name+"%");ResultSetresultPerson=statement.executeQuery(searchPerson);//.

java - 组织.hibernate.tool.schema.spi.CommandAcceptanceException : Error executing DDL via JDBC Statement

我真的需要帮助我搜索了我在stackoverflow上找到的所有问题,但没有任何效果。我以前从未使用过hibernate,我不知道自己做错了什么。我生成了表格,但是插入时我遇到了问题。我收到这个错误:20-May-201710:53:41.085WARN[http-nio-8080-exec-1]org.hibernate.tool.schema.internal.ExceptionHandlerLoggedImpl.handleExceptionGenerationTargetencounteredexceptionacceptingcommand:ErrorexecutingDDL

java - Hive 中的 Statement.setMaxRows 与 Statement.setFetchsize 之间有什么区别

我正在对Hive运行查询。相同的查询应该适用于其他JDBC驱动程序,即其他关系数据库。我不能使用Statement.setFetchSize方法,因为它在HiveJDBC0.13.0中不受支持。我正在尝试解决这个问题,因此,我想到了另一个类似的方法:Statement.setMaxRows在什么情况下我应该使用Statement.setMaxRows还是Statement.setFetchsize?是否可以互换使用它们?谢谢。 最佳答案 不,您不能互换使用它们。他们做不同的事情。setMaxRows=可以整体返回的行数。setFet

java - 如何从 MySQL 中检测空的结果集?

如果没有可能的结果,如何检测从MySQL发送的空结果集。 最佳答案 只需检查ResultSet#next()返回真。例如publicbooleanexist(Stringusername,Stringpassword)throwsSQLException{Connectionconnection=null;PreparedStatementstatement=null;ResultSetresultSet=null;booleanexist=false;try{connection=database.getConnection();

PHP/PDO : use simple prepared statement with query return/affected rows?

我是PDO对象的新手,找不到对我有帮助的文档。假设我有一个简单的代码来删除一行:$count=$dbh->exec("DELETEFROMfruitWHEREcolour='red'");这将返回受影响的行,但我将如何使用准备好的语句呢?可以使用$dbh->prepareAND$dbh->exec或query!? 最佳答案 它应该与任何其他语句相同:$stmt=$dbh->prepare("DELETEFROMfruitWHEREcolour=?");$stmt->execute(array('red'));$count=$stmt

php - 通过 PDO 和 mysql 从可能不安全的输入创建新数据库

我正在致力于自动部署我编写的一款软件,需要能够为新帐户生成新的mysql数据库。但是,我对清理输入感到担忧。我正在使用PDO;但是,显然您不能将准备好的语句与“CREATEDATABASE”一起使用。所以,我也尝试使用PDO::quote;然而,我新创建的数据库名称被单引号括起来(不是世界末日,但我仍然想避免这种情况)。有什么方法可以让它与准备好的语句一起使用吗?如果没有,我该怎么做才能尽可能地保护自己免受sql注入(inject)攻击?我唯一的另一个想法是允许一个小的字符白名单。谢谢! 最佳答案 你需要写一个storedproce

php - 页面重定向后在 session_start() 上删除的 session 数据

经过大量调试后,问题似乎(令人尴尬地)出现在我的数据库session代码中,而不是典型的session问题。你可以看到我的相关回答here-谢谢我知道这可能是类似问题的重复(例如one、two、three),但尽管遵循了这方面的最佳实践,但我仍然遇到问题。当使用session_set_save_handler()来使用我的数据库session类时,session数据在从session1.php重定向后在session2.php上开始时被清除。我的观察概述:session1.php中数据正确存入数据库session2.php中的session_start()数据丢失在重定向之后和在ses

Java文件上传到MySQL

这个问题在这里已经有了答案:WhydoIgetjava.lang.AbstractMethodErrorwhentryingtoloadablobinthedb?(14个答案)关闭6年前。我在从JFileChooser的选择中获取java.io.File以上传所述java.io.File时遇到了这个问题对象到具有此表结构的MySQL表COL_NAMECOL_TYPEATTRIBUTESEXTRA(PK)idSampleint(10)UNSIGNEDZEROFILLAUTO_INCREMENTFileNamevarchar(250)FileBinblobBINARY从这段Java代码中可

java - 如果遇到暂时性异常,我可以重新使用 PreparedStatement 吗?

我有一段代码可以更新数据库中的记录。简化示例:...statement=connection.prepareStatement("INSERTINTOthistable(name)VALUES(?)",PreparedStatement.RETURN_GENERATED_KEYS);statement.setString(1,"Fred");statement.addBatch();statement.setString(2,"Joe");statement.addBatch();statement.executeBatch();...这是一些处理大量记录的代码的一部分,代码运行大量线