草庐IT

PDO_ODBC

全部标签

PHP PDO 和 MySQLi

这个问题在这里已经有了答案:mysqliorPDO-whataretheprosandcons?[closed](13个回答)关闭9年前。我刚刚完成了一个PHP入门类(class),在整个stackoverflow论坛上,人们都建议我切换到PDO、preparedstatements或MYSQLi,我简要地查看了手册,但大部分内容都超出了我的想象。到目前为止,我一直在使用mysql_*函数,所以这些概念对我来说是新的。我认为它们用于访问和执行特定于数据库的操作,但我不确定。那么PDO、preparedstatements和MySQLi之间有什么区别,它们是完成相同任务的不同功能吗?它们

excel - 在 Excel 2013 中连接 Hortonworks Hive ODBC 时出错

我正在尝试通过Excel2013中的ODBC驱动程序查询HortonworksHive。我在这里下载了驱动程序(32位):http://hortonworks.com/downloads/霍顿工厂2.5配置单元2.5.0.0-1245然后我在ODBC数据源管理器(32位)中添加配置一切似乎都很好。然后当我进入Excel2013构建查询时:我遇到了这个错误:谁知道为什么? 最佳答案 问题出在Hortonworks的Hive驱动程序上。由于某些原因,它与Excel或PowerBI不兼容。我从https://www.microsoft.c

php - 函数 mysql_real_escape_string 的 PDO 等价物是什么?

我正在将我的代码从使用mysql_*修改为PDO。在我的代码中,我有mysql_real_escape_string()。在PDO中这个等价物是什么? 最佳答案 不,没有!技术上存在PDO::quote(),但它很少使用,并且不等同于mysql_real_escape_string()没错!如果您已经按照使用preparedstatements记录的正确方式使用PDO,那么它将保护您免受MySQL注入(inject)。#Example:下面是一个使用准备好的语句(pdo)的安全数据库查询示例try{//firstconnecttod

php - 函数 mysql_real_escape_string 的 PDO 等价物是什么?

我正在将我的代码从使用mysql_*修改为PDO。在我的代码中,我有mysql_real_escape_string()。在PDO中这个等价物是什么? 最佳答案 不,没有!技术上存在PDO::quote(),但它很少使用,并且不等同于mysql_real_escape_string()没错!如果您已经按照使用preparedstatements记录的正确方式使用PDO,那么它将保护您免受MySQL注入(inject)。#Example:下面是一个使用准备好的语句(pdo)的安全数据库查询示例try{//firstconnecttod

PHP PDO 无法获取 OUT 参数值

我刚开始将PHPPDO与MySQL存储过程一起使用,我对如何从过程调用中获取OUT参数有疑问。我查看了许多类似的stackoverflow主题,但不幸的是我找不到解决问题的方法:|详情如下:该过程有1个输入参数和2个强制输出参数,并在其中返回结果状态。我是这样调用它的:$input=5;$mydb=newPDO("mysql:host=localhost;dbname=mydb","user","pass");$proc=$mydb->prepare("CALLproc_name($input,@o_code,@o_message)");$proc->execute();该过程在@o_

php - 如何在不让字符串被引号包围的情况下使用 PDO::quote?

我尝试使用PDO::quote对LIKE表达式中的字符串进行转义,因此用户字符串不能像在:中那样被包围LIKE"%userStringToEscape%"有办法吗? 最佳答案 $var="%userStringToEscape%";$var=$stmt->quote($var);$sql="SELECT*FROMtableWHEREfieldLIKE$var";准备好的语句也是如此 关于php-如何在不让字符串被引号包围的情况下使用PDO::quote?,我们在StackOverflow

php - PDO getColumnMeta() 的 PHP native_type 列表

我正在使用PDO数据库抽象库来确保我的代码是可移植的。但是,我现在发现我需要列信息,所以我求助于PDOStatement->getColumnMeta()希望它会有点标准化的方法-但据我发现,它实际上似乎是开放式的。例如,当从SQLite调用该方法时,您似乎得到了一组可能的值:http://gcov.php.net/PHP_5_3/lcov_html/pdo_sqlite/sqlite_statement.c.gcov.phpnulldoubleblobstringinteger...虽然来自MySQL数据库的调用列出了各种其他奇怪的值:http://gcov.php.net/PHP_

php - 此适配器需要 PDO 扩展,但未加载扩展

当我尝试使用Zend_Db_Table_Abstract类的fetchall方法时出现以下异常...Anerroroccurred4545EXCEPTION_OTHERExceptioninformation:Message:ThePDOextensionisrequiredforthisadapterbuttheextensionisnotloadedStacktrace:#0D:\www\TestProject\library\Zend\Db\Adapter\Pdo\Mysql.php(96):Zend_Db_Adapter_Pdo_Abstract->_connect()#1D:

PHP - PDO 'config' 等效文件

这可能是一个之前已经回答过的问题-如果是这样,请在下面发表评论,我会删除这个问题。我一直在学习PHP类(class),同时正在跳转到PDO。我似乎找不到的一个概念是如何用类完成与此等效的概念:config.phpanother.php我还没有完全弄清楚如何为PDO连接创建配置文件/类,然后在另一个类中使用它,即如下用户:prepare("SELECTidFROMusersWHEREusername=:username");$sth->bindParam(':username',$username);...}}?>谢谢大家:) 最佳答案

PHP ODBC 不接受带空格的列名的别名

基本上,我需要使用PHP从SQLServer2005中获取一些数据。以前我们使用mssql_*函数,但是由于各种服务器问题,我们现在只能使用odbc_*函数。该表有各种列,其名称中有空格,在建议之前....不,我不能更改它们,因为这是另一种语言的完全独立的软件,它会破坏它,我只是从中获取统计信息。任何人,我以前通过将它们的名称放在方括号中来访问这些列,例如[列名]它在mssql_*函数下运行良好,但是当我这样做时:$sql="selecttop1[assessmentname]asAssessmentNamefrombksb_Assessments";$result=odbc_exec