草庐IT

sql语句SQLServer

全部标签

php - 当您只进行一次选择时,使用准备好的 Select 语句是否更好?

我目前正在使用PDO在PHP中编写一个CRUD类。我喜欢准备语句提供的安全性,但我听说它们还可以防止像mysql这样的数据库使用queryCache。当您一次只进行一个选择时,使用准备好的Select语句是否更好?或者只是$pdo->quote()就足够了(或者有任何其他优势,比如缓存?)。我所有的更新、删除和插入都是使用准备好的语句完成的。我只是对选择感到好奇。 最佳答案 MySQLPerformanceBlog.com在一篇关于“PreparedStatements”的文章中做了一些基准测试。彼得扎伊采夫写道:I’vedonea

php - 通过 if 语句 PHP 进行字符串匹配

我有一个输入文本区域,当填写并发送时,将输入的内容放入变量$input然后通过if语句检查它是否为字母a。如果是则回显-你写了字母a,否则-你没有写字母a。";if($input="a"){echo"Youwrotea";}else{echo"Youdidnotwritea";}?>它确实有效,但方式不对。我输入的每个字母都显示为“你写了一个”。我只希望它在用户键入a时回显。否则,回显'你没有写一个'。编辑:当我尝试使用==而不是=时,它会针对所有内容显示“您没有写a”。即使我输入a.编辑2:当我尝试字符串比较参数时,它没有用。我哪里出错了有什么建议吗?两页的完整脚本:索引.phpFu

php - if 语句中的空花括号可以吗?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭6年前。Improvethisquestion此代码适用于我想要的,但我想知道是否可以在if语句的大括号内不执行任何操作。有没有更好的写法?if(empty($data)||$data=="unanswered")){//donothing}else{//displaydataecho$data;}

php - 如何简化这个php switch语句?

我想改变这个://useappropiatelang.xx.phpfileaccordingtothevalueofthe$langswitch($_SESSION['lang']){case'en':$lang_file='lang.en.php';break;case'es':$lang_file='lang.es.php';break;case'zh-tw':$lang_file='lang.zh-tw.php';break;case'zh-cn':$lang_file='lang.zh-cn.php';break;default:$lang_file='lang.en.php'

PHP - 在 if 语句中赋值

前几天我读到,在if语句中赋值并不是一个好主意。老实说,我实际上经常使用它,例如if(isset($_POST)&&$post=$_POST){print_r($post)}知道为什么这不是最优的吗? 最佳答案 尤其是因为忘记赋值运算符和相等运算符是不同的是一个常见的新手错误,因此很容易导致混淆或难以检测的错误。代码的可读性比任何微优化都重要 关于PHP-在if语句中赋值,我们在StackOverflow上找到一个类似的问题: https://stackove

php - 日期应该存储为 Datetime 还是 SQL 中的 int?

我将所有发帖日期存储在日期时间(0000-00-0000:00:00)中。我看到phpBB、punBB和所有流行的论坛都以int格式存储日期?什么更好? 最佳答案 如果您将日期存储为INT,那么连接到您的数据库的每个应用程序或工具都必须知道如何将该INT转换为有意义的东西。我建议坚持使用适合数据的数据类型,除非您的特定RDBMS对特定数据类型存在严重缺陷。还有一个问题需要考虑...如果您将它们存储为INT,那么您也将无法访问许多特定于日期的函数,并且必须自己编写它们。例如,返回特定日期的日期名称(星期一、星期二等)。

php - 奇怪的php if语句问题

if($country==224||$country==223||$country==39&&$zip==''){$_SESSION['sess_msg']="PleaseenteraValidzipcode";header("location:$SITE_PATH?p=account.profile.name");exit;}variablevalue-------------$country224$zip11111我知道$zip不是空的,但代码执行时就好像它是空的一样。我什至在调试语句中将其打印到浏览器以验证它是否具有值。是什么导致我的程序表现得好像$zip没有值?

php - 在 Windows 上使用 PHP 时,(1) SQL Server 的 native 驱动程序或 (2) PDO 驱动程序哪个更好?

我在Windows上使用PHP5.3.6并连接到SQLServer2008数据库。根据MSDN处的文档有两个驱动程序供我选择。php_sqlsrv_53_nts_vc9.dllphp_pdo_sqlsrv_53_nts_vc9.dll关于如何使用每一个的文档很棒,但我不确定为什么我会使用一个而不是另一个。有人可以提供一些基本差异(语法除外)的见解以及为什么一个比另一个更好吗? 最佳答案 使用PDO的好处是,如果您的托管环境更改为Linux或SQLServer不可用,那么您几乎不需要更改。连接字符串,您可以在其中指定哪种数据库(SQL

php - 将空字符串绑定(bind)到 pdo 准备查询时出现 HY104 Sql 服务器错误

我应该将一个应用程序从mssql函数移动到PDO。一切都运行得很顺利,直到我发现自己遇到了一个我似乎无法解决的小错误。这是我准备好的请求:$req_action="INSERTINTO[".DB_SCHEMA."].[dbo].[".ACTION_TABLE."]([ID_CONTACT],[ID_ADN],[TYPE_ACTION],[MOTIF_ENTRANT],[COMMENTAIRES_APPEL],[CODE_CAMPAGNE],[EMAIL],[SUJET],[STATUT_EMAILING],[DATE_ENVOI],[DELAI_OUVERTURE],[MAIL_CLI

php - mysqli准备好的语句和事务可以一起使用吗?

我想知道的是mysqli的prepare、execute、rollback能不能一起使用?$m=newmysqli($dbhost,$dbuser,$dbpassword,$dbname);$m->autocommit(FALSE);$stmt=$m->prepare("INSERT`table`(`name`,`gender`,`age`)VALUES(?,?,?)");$stmt->bind_param("ssi",$name,$gender,$age);$query_ok=$stmt->execute();$stmt=$m->prepare("INSERT`table`(`nam