mysql - 将 SQL 列类型设置为 varchar(50),只接受整数

标签 mysql sql database varchar

正如标题所说,我创建了一个表,其中一列是 varchar(50) 类型,但是它拒绝第一个值为字符串的 INSERT 语句:

表创建:

CREATE TABLE Fiddy(Lname varchar(50),
-> Height int,
-> Width int,
-> Gas int);

插入尝试

insert into Fiddy VALUES(Smith, 54, 43, 1);
ERROR 1054 (42S22): Unknown column 'Smith' in 'field list'

插入尝试

insert into Fiddy values (4, 5, 5, 6);
Query OK, 1 row affected (0.00 sec)

选择 *

select * from Fiddy;
+-------+--------+-------+------+
| Lname | Height | Width | Gas  |
+-------+--------+-------+------+
| 4     |      5 |     5 |    6 |
+-------+--------+-------+------+
1 row in set (0.00 sec)

最佳答案

基本的 MySQL。字符串必须用单引号括起来。否则,假定您指的是列名。

insert into Fiddy VALUES(Smith, 54, 43, 1); -- The column "Smith" is assumed.

应该是

insert into Fiddy VALUES('Smith', 54, 43, 1); -- The string "Smith" is used.

关于mysql - 将 SQL 列类型设置为 varchar(50),只接受整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16864425/

相关文章:

php - 在数组中添加额外的值

sql - DotNetNuke,用户帐户 “sa” 的指定密码无效

mysql查询竞赛投票每天发现重复项

php - 为动态搜索引擎php添加过滤器

sql - 案例 : WHEN column1 IS NULL THEN write column2

PHP 在生成文档时在服务器上创建文档副本

MySQL Workbench 字符集

mysql select总是返回空集

sql - SQL Server 中的 pivot varchar 列?

mysql不同类型的公用表