MySQL 如何在 MySQL 中将’from’作为列名?
在 MySQL 中,有些常见的词语,例如’from’、’select’、’order by’等被作为了关键字,它们在 SQL 语句中有特殊的用途。但是,如果我们需要在表中使用这些关键字作为列名,该怎么办呢?本文将介绍如何在 MySQL 中将’from’作为列名的方法。
阅读更多:MySQL 教程
方法一:使用反引号
在 MySQL 中,可以使用反引号将关键字引起来,以示其为一个列名。下面是示例代码:
CREATE TABLE mytable (
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
`from` VARCHAR(100),
`to` VARCHAR(100)
);
在上面的代码中,我们在创建表的时候,可以在列名两侧加上反引号,这样就可以使用’from’作为列名了。同时,在这个示例中,我们也将’to’作为一个列名,同样使用了反引号。
方法二:使用关键字别名
在 MySQL 中,可以使用 AS 关键字给列名取别名。通过给列名取别名,我们就能够使用关键字作为列名了。下面是示例代码:
SELECT
id,
`from` AS `send_from`,
`to` AS `send_to`
FROM mytable;
在上面的代码中,我们使用 AS 关键字将’from’列名取了一个别名’send_from’,’to’列名取了一个别名’send_to’。这样,我们就可以在 SQL 语句中使用关键字作为列名了。
方法三:修改 SQL 模式
在 MySQL 中,我们也可以修改 SQL 模式,使得 MySQL 不再将关键字作为关键字对待,而是将其作为普通的标识符处理。下面是示例代码:
SET sql_mode='NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
在上面的代码中,我们将 SQL 模式修改为’NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION’。这样,在此之后,MySQL 就不会将关键字作为关键字对待了。
结论
在 MySQL 中,我们可以使用反引号或者关键字别名的方式来使用关键字作为列名。不过,在实际开发中,建议使用常用的列名,以避免使用关键字作为列名带来的一些问题。