2012-05-07 60 views
0

在MySQL Workbench(Mac)中,如果不在语句之前放置分号,则语句不会执行。所以DROP,USE和CREATE TABLE不能没有执行;和下一个声明给出了错误..MySQL工作台。分号之后的评论之前的评论?

-- Comment 
;DROP DATABASE IF EXISTS dbDataBase; 

CREATE DATABASE dbDataBase 
    CHARACTER SET 'utf8' 
    COLLATE 'utf8_general_ci'; -- define set of rules to compare characters 

;USE dbDataBase; 


-- Make a table 
;CREATE TABLE Teams 
(
    teamID INTEGER UNSIGNED NOT NULL, 
    teamName VARCHAR(50)  NOT NULL 
); 

回答

0

我试着运行它,没有分号。它适用于我。由于列定义之间缺少逗号,因此在CREATE TABLE语句中出现错误。也许这就是造成混淆的原因(以及在状态报告中注释行与以下内容联合的事实,但这只是一条消息)。

我在Linux的最新版本中运行了这个版本。你能澄清,如果你仍然得到这种行为?

+0

是的,仍然得到这种行为。对不起,昏迷。花了很长时间来排查故障,并找出为什么有些语句不能执行。如果在DROP之前删除分号,则下一个语句CREATE DATABASE会给出错误 - 由于数据库已经存在,因此无法创建数据库。如果在USE之前删除分号 - > CREATE TABLE不执行,并且如果在CREATE TABLE之前 - 表格根本就没有创建。重新安装工作台的最新版本没有帮助。 – Dmitry

+0

在XP上没有这样的问题.. – Dmitry

+0

尝试使用不同的MySQL实例,官方和MAMP http://mamp.info – Dmitry

0

我已经发布了这个http://bugs.mysql.com/bug.php?id=67747

你的情况下,错误报告对我的作品,但下面的失败对我来说:

SELECT 1; 
DELIMITER ; 
/* comment */ 
SELECT 2; 
+0

MySQL已经在最新的工作台中解决了这个问题。 – Yoseph