号MySQL不支持
CREATE DOMAIN或
CREATETYPE为,例如,PostgreSQL的呢。
您可能必须再次输入所有名称。您可以使用复制和粘贴或SQL脚本来减轻执行此 *** 作所需的工作。
您还可以使用这些
INFORMATION_SCHEMA表来获取ENUM定义的文本,然后将其内插到新的
CREATE TABLE语句中。
您还可以
CREATE TABLE AS创造性地使用它来复制类型定义。这是一个示范:
CREATE TABLE foo ( f ENUM('abc', 'xyz') );CREATE TABLE bar AS SELECt f AS b FROM foo;SHOW CREATE TABLE bar;
输出:
CREATE TABLE `bar` ( `b` enum('abc','xyz') default NULL) ENGINE=MyISAM DEFAULT CHARSET=latin1
最后,我建议,如果您的ENUM中包含许多值(我想这是对的,因为您正在寻找避免输入它们的解决方案),则可能应该使用查找表而不是ENUM数据类型。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)