gpt4 book ai didi

当一个表名没有被单引号括起来时,Mysql 会报错

转载 作者:行者123 更新时间:2023-11-29 01:30:04 25 4
gpt4 key购买 nike

我正在构建一个简单的应用程序,其中列出了球队和比赛。 Team 和 Match 数据库是使用以下脚本构建的(我使用的是 PhpMyadmin):

CREATE TABLE IF NOT EXISTS `Team` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(120) NOT NULL,
`screen_name` varchar(100) NOT NULL,
`sport_id` int(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=5 ;

CREATE TABLE IF NOT EXISTS `Match` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`sport_id` int(11) NOT NULL,
`team_one_id` int(11) NOT NULL,
`team_two_id` int(11) NOT NULL,
`venue` varchar(80) NOT NULL,
`kick_off` datetime NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;

如果我这样做:

SELECT * FROM Team

脚本运行,我得到一个空结果。但是,令人难以置信的是,如果我这样做了

SELECT * FROM Match

我收到以下错误:

1064 - 您的 SQL 语法有误;检查与您的 MySQL 服务器版本对应的手册,了解在第 1 行的“匹配”附近使用的正确语法

相反,我必须这样做:

SELECT * FROM `Match`

而且它有效。我在数据库中还有其他表,但这是唯一的行为。有什么想法吗?

最佳答案

match是SQL中的保留字

在这里阅读更多: https://drupal.org/node/141051

关于当一个表名没有被单引号括起来时,Mysql 会报错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18004056/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com