是否可以使用SQL语句在MySQL工作台中创建表?

是否可以使用SQL语句在MySQL工作台中创建表?,mysql,mysql-workbench,Mysql,Mysql Workbench,我正在使用MySQL Workbench设计一个新的模式,我有一个用于新表的现有create语句。是否可以使用create语句来创建表,而不是手动写出所有列和类型 例如,下面是我的SQL: CREATE TABLE IF NOT EXISTS `mydb`.`user` ( `user_id` INT UNSIGNED NOT NULL, `last_updated` DATETIME NOT NULL DEFAULT now(), `user_stamp` INT UNSIGNED NO

我正在使用MySQL Workbench设计一个新的模式,我有一个用于新表的现有create语句。是否可以使用create语句来创建表,而不是手动写出所有列和类型

例如,下面是我的SQL:

CREATE TABLE IF NOT EXISTS `mydb`.`user` (
 `user_id` INT UNSIGNED NOT NULL,
 `last_updated` DATETIME NOT NULL DEFAULT now(),
 `user_stamp` INT UNSIGNED NOT NULL DEFAULT 1,
 `user_name` VARCHAR(15) NOT NULL,
 `company_code` INT UNSIGNED NOT NULL,
 `email` VARCHAR(50) NULL DEFAULT '',
 `active` CHAR(1) NULL DEFAULT 'Y',
 `first_name` VARCHAR(20) NULL,
 `last_name` VARCHAR(20) NULL,
 PRIMARY KEY (`user_id`),
 INDEX `fk__user__company_idx` (`company_code` ASC),
 CONSTRAINT `fk__user__company`
 FOREIGN KEY (`company_code`)
 REFERENCES `mydb`.`company` (`company_code`)
 ON DELETE CASCADE
 ON UPDATE NO ACTION 
);

我希望能够在MySQL Workbench中的某个地方运行此语句,以便将表添加到我的模式中,然后在我的图表中使用它。

是的,确实如此。只需将您拥有的create语句粘贴到查询窗口中并执行它。

您可以将
create TABLE
语句保存到一个文件中,然后在MySQL工作台(8.0版)中选择
file>Import>Reverse engineering MySQL create Script…
。如果表之间存在关系,Mysql Workbench应该能够猜到它。

要做到这一点,您必须有一个活动连接吗?现在我实际上没有连接到数据库,因为我正在尝试在更新数据库之前设计模式。只需创建另一个“虚拟”数据库,用于测试和schmera更改。好的,这是一个不同的问题-您最初的问题询问是否可以“创建表”-显然,如果要在该数据库中创建表,您必须连接到该数据库。因此,您需要的是一种解析create语句并将其转换为本地模式描述的方法。。。我不知道有什么方法可以做到这一点,尽管这是可能的。基本上,我只是在寻找一种更简单的方法在我的模型中创建表,而不是键入每一列