mysql - 是否可以在 mysql 中使用 "Index"作为列名

标签 mysql command-line

我必须通过 mysql 命令行创建数据库和表,因为这是访问服务器的唯一方法。我尝试创建一个带有索引列(而不是更常见的“ID”列)的表,但它一直给我一个错误。

我发现“Index”是 mysql 中的一个命令,但我宁愿不必更改列的名称以与我为处理我正在创建的数据库而设置的处理程序保持一致。

如何阻止 mysql 命令行将“Index”解释为命令?

最佳答案

您可以将名称括在反引号中。这允许将保留字用作列名和表名,尽管这是个糟糕的主意。

create table t (
    `index` int primary key,
    . . .
);

每当您引用该列时,您都需要使用反引号。

关于mysql - 是否可以在 mysql 中使用 "Index"作为列名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17241286/

相关文章:

mysql - 如何在 UBUNTU 中从 Hive 到 HiveServer2

java - ReadyStatement 的安全性如何?

mysql - 我必须填写外键值吗?

c++ - 为什么你会选择 "a.out file"而不是 "a.out < file",反之亦然? C++

php - 循环关联数组时优化 SQL 更新

MySQL 从第二行中选择

javascript - Minimist 中的命令验证

linux - 创建为每个后续命令运行的 bash 脚本

c - Linux/C 如何正确结束命令行程序

command-line - 在 ffmpeg drawtext 过滤器中提供时间段