我正在做一些数据库的事情,我需要将一个表从一个模型复制到另一个模型,但我尝试了很多方法没有效果。 有没有办法做到这一点?
答案 0 :(得分:19)
如果你只是想通过MySQL Workbench做一个表。
在MySQL Workbench中:
该表的create语句将被复制到您的剪贴板,类似于以下内容:
CREATE TABLE `cache` (
`cid` varchar(255) NOT NULL DEFAULT '',
`data` longblob,
`expire` int(11) NOT NULL DEFAULT '0',
`created` int(11) NOT NULL DEFAULT '0',
`headers` text,
`serialized` smallint(6) NOT NULL DEFAULT '0',
PRIMARY KEY (`cid`),
KEY `expire` (`expire`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
在新数据库中创建表
更改创建表代码以包含数据库以在其上创建表。
CREATE TABLE `databaseName`.`cache` (
`cid` varchar(255) NOT NULL DEFAULT '',
`data` longblob,
`expire` int(11) NOT NULL DEFAULT '0',
`created` int(11) NOT NULL DEFAULT '0',
`headers` text,
`serialized` smallint(6) NOT NULL DEFAULT '0',
PRIMARY KEY (`cid`),
KEY `expire` (`expire`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
然后单击执行按钮(看起来像闪电箭)
这将使用MySQL工作台将表模式从一个db复制到另一个db。只需刷新数据库中的表,您就会看到新添加的表
答案 1 :(得分:18)
您最好的选择可能是创建一个包含您想要携带的对象的模型的精简版本。然后打开目标模型并运行File -> Include Model...
。选择精简的源模型,然后就可以了。
答案 2 :(得分:9)
答案 3 :(得分:3)
我认为值得一提的是
答案 4 :(得分:0)
像.m_property_nature一样创建表.m_property_nature;
从.m_property_nature中插入* .m_property_nature;
答案 5 :(得分:0)
您可以从表信息中获取板条箱表查询,并在不同的数据库实例上使用相同的查询。
答案 6 :(得分:0)
您可以仅使用select语句。在这里,我正在创建从“ original_schema”模式/数据库到“ new_schema”模式的“ original_table”表的副本:
CREATE TABLE new_schema.duplicate_table AS
Select * from original_schema.original_table;
您可以只放置所需的任何select语句,添加条件并选择列:
CREATE TABLE new_schema.duplicate_table AS
SELECT column1, column2
FROM original_schema.original_table
WHERE column2 < 11000000;
答案 7 :(得分:0)
如果您已经创建了表并且只想复制数据,则建议使用“导出数据向导”和“导入数据向导”。它基本上是在程序中选择要导出的东西,然后再导入数据,并且易于使用。
MySQL在以下向导中有一篇文章:Table Data Export and Import Wizard
要使用向导复制数据,请执行以下操作:
选择一个位置来保存带有复制数据的* .csv或* .json文件。
查找表以将复制的数据插入到其中。
答案 8 :(得分:0)
第1步:右键单击表格>复制到剪贴板>创建语句
步骤2:将剪贴板粘贴到工作台的查询字段中。
第3步:从表名称和模型名称(模式)中删除(``),后跟点。
例如:`cusine_menus`-> schema_name.cusine_menus
执行