php - 这个 MySQL 语法有什么问题?

标签 php mysql

INSERT INTO homework_MarcWed30-2011 ('Teacher', 'Class', 'Period', 'Assn') 
                              VALUES ('a', 'a', 'a', 'a')

我收到以下错误:

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 '-2011 (Teacher varchar(30), Class varchar(30), Period varchar(30), Assn varchar(' at line 1

这是怎么回事?

附带说明一下,create table 语句对我不起作用:

mysql_query("CREATE TABLE homework_MarcWed30-2011 (Teacher varchar(30), Class varchar(30), Period varchar(30), Assn varchar(400))","mysql_connect('#####', '#####', '#####')") OR die(mysql_error());

最佳答案

使用

`homework_MarcWed30-2011`   

在表名中使用`来引用列名

INSERT INTO homework_MarcWed30-2011 (`Teacher`, `Class`, `Period`, `Assn`) 
                              VALUES ('a', 'a', 'a', 'a')

An identifier may be quoted or unquoted. If an identifier contains special characters or is a reserved word, you must quote it whenever you refer to it. The set of alphanumeric characters from the current character set, “_”, and “$” are not special.

http://dev.mysql.com/doc/refman/5.0/en/identifiers.html

关于php - 这个 MySQL 语法有什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5481996/

相关文章:

php - 插入具有 1 个字段的多行 codeigniter

用于读取中间记录的 SQL

结合短语和通配符的Mysql全文索引

java - 加载数据 INFILE MYSQL 错误

php - 我在 Silex 中的什么位置存储常规配置参数?

php - 是否可以检测 HTTPRequest 是否可用?

mysql - 获取重定向后的数据

php - $_POST 为空,使用 Ajax 发送表单值

java - Magento catalogProductInfo - 访问因未知原因被拒绝

java - 从Json数组中获取指定值