MySQL - 当我尝试 INSERT INTO 时卡住

标签 mysql

注意,我是一个相对新手,在使用书籍学习 PHP 和 Mysql 时遇到了问题。

在名为“zips”的数据库中,有一个名为“zip_codes”的现有表,我使用此代码成功在 mysql 中添加了一个名为stores 的表

 CREATE TABLE stores ( 
    store_id SMALLINT(5) UNSIGNED NOT NULL AUTO_INCREMENT, 
    name VARCHAR(60) NOT NULL, 
    address1 VARCHAR(100) NOT NULL, 
    address2 VARCHAR(100) default NULL, 
    zip_code INT(5) UNSIGNED ZEROFILL NOT NULL, 
    phone VARCHAR(15) NOT NULL, 
    PRIMARY KEY (store_id), 
    KEY (zip_code) 
    );

之后,我将下面15行左右的数据插入到表中,但在我尝试了无数次之后,它似乎卡住了东西。例如,命令行没有提供通常受影响的行输出,而是仅显示 '> 并且我无法再输入 SQL,甚至无法退出。

所以我手动关闭命令行并再次打开它并尝试相同的操作,得到相同的结果。为了保持变化,我还尝试只输入一行数据(而不是 15 行),但得到了相同的结果。

有人知道发生什么事了吗?

INSERT INTO stores (name, address1, address2, zip_code, phone) VALUES 
(‘Ray''s Shop', ‘49 Main Street', NULL, ‘63939', ‘(123) 456-7890'), 
(‘Little Lulu''s', ‘12904 Rockville Pike', ‘#310', ‘10580', ‘(123) 654- 7890'), 
(‘The Store Store', ‘8200 Leesburg Pike', NULL, ‘02461', ‘(123) 456- 8989'), 
(‘Smart Shop', ‘9 Commercial Way', NULL, ‘02141', ‘(123) 555-7890'), 
(‘Megastore', ‘34 Suburban View', NULL, ‘31066', ‘(555) 456-7890'), 
(‘Chain Chain Chain', ‘8th & Eastwood', NULL, ‘80726', ‘(123) 808-7890'), 
(‘Kiosk', ‘St. Charles Towncenter', ‘3890 Crain Highway', ‘63384', ‘(123) 888-4444'), 
(‘Another Place', ‘1600 Pennsylvania Avenue', NULL, ‘05491', ‘(111) 456- 7890'), 
(‘Fishmonger''s Heaven', ‘Pier 9', NULL, ‘53571', ‘(123) 000-7890'), 
(‘Hoo New', ‘576b Little River Turnpike', NULL, ‘08098', ‘(123) 456-0000'), 
(‘Vamps ‘'R'' Us', ‘Our Location', ‘Atwood Mall', ‘02062', ‘(222) 456- 7890'), 
(‘Five and Dime', ‘9 Constitution Avenue', NULL, ‘73503', ‘(123) 446- 7890'), 
(‘A & P', ‘890 North Broadway', NULL, ‘85329', ‘(123) 456-2323'), 
(‘Spend Money Here', ‘1209 Columbia Pike', NULL, ‘10583', ‘(321) 456- 7890');

最佳答案

问题似乎出在您的引号上——它们不匹配。您应该将字符串放在单引号 ' 或双引号 " 中(相同的开始和结束标记)。

INSERT INTO stores (name, address1, address2, zip_code, phone) VALUES 
("Ray's Shop", '49 Main Street', NULL, '63939', '(123) 456-7890'); 

...等等。

mysql命令行上的>提示符表示正在等待进一步的输入。在实践中,我发现当我省略结尾分号时通常会发生这种情况。但是,如果解释器认为您正在输入字符串,它会假设您的分号是该字符串的一部分,并愉快地等待您完成。

关于MySQL - 当我尝试 INSERT INTO 时卡住,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5704222/

相关文章:

javascript - 生成随机数和字符 - MYSQL

PHP - 从带有下拉列表的动态列表的每一行捕获多个变量

php - Silverstripe 从 CheckboxSetField 值创建无序列表 (many_many)

PHP MySQL Excel 到 xls?

MySQL 搜索具有最高组合相邻值的

Mysql:按分隔表中的两列进行分组

c# - VS 错误 : The value for column 'IsPrimaryKey' in table 'TableDetails' is DBNull

mysql - MySQL 遗留数据库的终极噩梦

MySQL EXPLAIN 行数在简单的 WHERE 条件下要高得多

php - SQLSTATE[HY000] [2002] 尝试将 Laravel 数据库连接到 Heroku 时连接被拒绝