为了工作,我的 CREATE TABLE 中缺少什么? mySQL 8.X
What is missing in my CREATE TABLE in order to work? mySQL 8.X
我以前使用 mySQL 5.x 编码,现在我切换到 8.x 版本,我很困惑。
这个短代码有什么问题?
[我的代码截图]
错误信息
"You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'rank VARCHAR(50) NOT NULL, discipline VARCHAR(1), yr_start INT(11), ' at line 3"
rank
is now a MySQL reserved word。它用于 rank()
window 函数
改用 ranking
等变体。
这些功能是在 MySQL 8.
中引入的
如果由于某种原因更改架构不切实际,您也可以使用带引号的标识符。默认情况下在 MySQL 中使用反引号字符,例如:
create table foo (
`rank` varchar(50)
)
如果您想在不修改应用程序逻辑的情况下从旧 mysql 版本移植预先存在的模式,应该可以使用。
我以前使用 mySQL 5.x 编码,现在我切换到 8.x 版本,我很困惑。 这个短代码有什么问题?
[我的代码截图]
错误信息
"You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'rank VARCHAR(50) NOT NULL, discipline VARCHAR(1), yr_start INT(11), ' at line 3"
rank
is now a MySQL reserved word。它用于 rank()
window 函数
改用 ranking
等变体。
这些功能是在 MySQL 8.
中引入的如果由于某种原因更改架构不切实际,您也可以使用带引号的标识符。默认情况下在 MySQL 中使用反引号字符,例如:
create table foo (
`rank` varchar(50)
)
如果您想在不修改应用程序逻辑的情况下从旧 mysql 版本移植预先存在的模式,应该可以使用。