文档解释
Error number: 3943; Symbol: ER_TABLE_VALUE_CONSTRUCTOR_CANNOT_HAVE_DEFAULT; SQLSTATE: HY000
Message: A VALUES clause cannot use DEFAULT values, unless used as a source in an INSERT statement.
。
错误说明:
ER_TABLE_VALUE_CONSTRUCTOR_CANNOT_HAVE_DEFAULT错误提示表值构造函数不能有默认值。当用户试图在SQLSELECT语句或者UPDATE语句的VALUES子句中用默认值构造表值构造函数时,就会报这个错误。
常见案例
比如,数据库中有一个表user,字段信息如下:
+————-+———-+——+—–+———+——-+
| Field | Type | Null | Key | Default | Extra |
+————-+———-+——+—–+———+——-+
| id | int(11) | NO | PRI | 0 | |
| name | char(50) | NO | | NULL | |
| address | char(50) | YES | | NULL | |
| phone | int(11) | YES | | NULL | |
+————-+———-+——+—–+———+——-+
假设我们使用VALUES子句来构造表值构造函数,例如:
INSERT INTO user VALUES(DEFAULT, ‘Andy’, ‘Taipei’, ‘1234567’);
这时会报ER_TABLE_VALUE_CONSTRUCTOR_CANNOT_HAVE_DEFAULT错误提示表值构造函数不能有默认值。
解决方法:
解决该错误的方法就是,只能用显式的值来构造表值构造函数,不能使用默认值。因此,正确的语句应为:
INSERT INTO user VALUES(0, ‘Andy’, ‘Taipei’, ‘1234567’);
香港美国云服务器首选树叶云,2H2G首月10元开通。
树叶云(shuyeidc.com)提供简单好用,价格厚道的香港/美国云服务器和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。
文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/264937.html<

