0

与 Tony 一起编程中解释的准备好的语句将参数放在 SQL 字符串之外。

所以我的问题是:

  1. MySQL 中的小写大写有多重要?(选择 v 选择;AND v 和)
  2. “反引号”去掉名字有多重要?(SELECT 'name' FROM 'table' WHERE variable = :variable) [我不知道如何在此处添加反引号]
  3. 我应该将整数/数字作为字符串输入吗?
4

5 回答 5

1

1.- MySQL 中小写大写有多重要?(选择 v 选择;AND v 和)

SQL 命令不区分大小写。将它们大写是一种常见的做法,这样它们更容易被发现,但这不是强制性的。

2.-“反引号”去掉名字有多重要?(从“表”中选择“名称”WHERE 变量 =:变量)

当对象名称为保留字或包含特殊字符(如空格)时,您必须对其进行转义。否则,它完全是可选的。

反引号语法仅适用于 MySQL。其他数据库使用双引号或方括号。

[我不知道如何在这里添加反引号]

使用“代码示例”工具栏按钮:

代码示例

3.- 我应该将整数/数字作为字符串输入吗?

如果这样做,MySQL 将不得不将它们转换为数字。您不会注意到性能损失,但没有特定理由使用字符串。它与在 PHP 中这样做一样多余:

echo "$name";

此外,您的编辑器的语法高亮不会区分数字:

数字作为字符串

于 2013-02-21T09:51:53.050 回答
0
  1. 使用 UPPER CASE 因为它更容易看出什么是 SQL 关键字,什么不是。
  2. 养成始终使用反引号的习惯,例如,如果您有一个名为“Dec”的列并且不在查询中使用反引号,您将收到错误,因为 DEC() 是一个 SQL 函数。
  3. 绝对地。SQL 自动将数字字符串转换为数值。
于 2013-02-21T09:34:50.107 回答
0

回答

  1. 是的,您可以同时使用这两种情况(大写,小写)。

  2. 当您使用 mysql 的一些保留字作为列名时,您必须使用反引号。

  3. 是的,您可以将整数/数字作为字符串放入。

于 2013-02-21T09:32:28.903 回答
0
  1. 我个人认为大写有助于区分 SQL 关键字与表名和列名。
  2. 反引号很有帮助,因为在某些时候,您最终可能会得到一个包含特殊字符或 MySQL 保留关键字的标识符。要使用标识符或特殊字符,您必须用反引号将其引用。
  3. 是的。
于 2013-02-21T09:36:12.677 回答
0

MySQL 中的小写大写有多重要?(选择 v 选择;AND v 和)

使用大写字母很重要,但仅出于可读性目的。

“反引号”去掉名字有多重要?

这取决于。
对于硬编码的标识符,它们是可选的,但对于动态标识符,它们是强制性的,因为您不知道将传递哪个值。当然,您还必须通过将反引号加倍来逃避传递值内的反引号。

我应该将整数/数字作为字符串输入吗?

这取决于。
一般来说没有区别。
如果您使用带有动态绑定的丑陋mysqli,将所有变量绑定为“s”会更容易。
但是在使用 PDO 时,必须小心将 LIMIT 参数设置为字符串 - 模拟模式下的 PDO 会破坏 SQL。

于 2013-02-21T10:51:46.197 回答