【问题标题】:Using sql variable and add more into it使用 sql 变量并添加更多内容
【发布时间】:2016-06-30 07:28:22
【问题描述】:

我正在尝试将 sql 代码添加到也包含 sql 代码的现有变量中。

$strSQLSel = $strSQLSel + "GROUP BY historyTransactions.entityid
                           ORDER BY historyTransactions.entityid";

我收到此错误:

数组([0] => 数组([0] => 42000 [SQLSTATE] => 42000 [1] => 102 [代码] => 102 [2] => [Microsoft][ODBC Driver 11 for SQL Server][SQL 服务器]'0' 附近的语法不正确。 [消息] => [Microsoft][ODBC 驱动程序 11 for SQL Server][SQL Server]“0”附近的语法不正确。 ))

【问题讨论】:

  • 第一个语句缺少双引号。
  • ...并且 $sql 在表名和 WHERE 之间缺少空格。
  • 什么是空格? @IvanStarostin
  • Customers WHERE“空间”。现在你有 CustomersWHERE 这是一个未知的结构/关键字。

标签: sql-server


【解决方案1】:

第一个语句缺少double quote。您还应该使用参数而不是直接注入变量。这样你就可以保护你的数据库免受SQL injection

见:https://www.mssqltips.com/sqlservertip/2981/using-parameters-for-sql-server-queries-and-stored-procedures/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-12-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-27
    • 1970-01-01
    • 2023-04-06
    相关资源
    最近更新 更多