MYSQL建表语句转换成oracle建表语句

Posted 天蝎承载梦想

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MYSQL建表语句转换成oracle建表语句相关的知识,希望对你有一定的参考价值。

-- 建表语句

SELECT CONCAT('CREATE TABLE ',T.TABLE_NAME,'  (') cre_sql FROM TABLES T  WHERE T.TABLE_NAME = 'WM_TCMPAT_INFO_B'

UNION ALL 

#字段信息

SELECT CONCAT(T.COLUMN_NAME,'   ',

       REPLACE(REPLACE(REPLACE(REPLACE(T.COLUMN_TYPE,'varchar','varchar2'),'datetime','date'),

       'decimal','number'),'text','clob') ,

       '  ',(CASE WHEN T.IS_NULLABLE = 'NO' THEN 'NOT NULL ' ELSE 'NULL' END), '  ,') ZD                                  

FROM COLUMNS  T WHERE  T.TABLE_NAME = 'WM_TCMPAT_INFO_B' 

UNION ALL

#主键信息

SELECT CONCAT('CONSTRAINT PK_',T.TABLE_NAME,' PRIMARY KEY (',GROUP_CONCAT(T.COLUMN_NAME SEPARATOR ','),')')  

 FROM COLUMNS  T WHERE  T.TABLE_NAME = 'WM_TCMPAT_INFO_B' AND T.COLUMN_KEY = 'PRI'

UNION ALL

SELECT ') ;'

UNION ALL

#表注释

SELECT CONCAT('COMMENT ON table','  ',T.TABLE_NAME,'  IS  ''',T.TABLE_COMMENT,'''  ;'FROM TABLES T  WHERE T.TABLE_NAME = 'WM_TCMPAT_INFO_B'

UNION ALL

#字段注释

SELECT CONCAT('comment on column  ',T.TABLE_NAME,'.',T.COLUMN_NAME,'  IS  ''',T.COLUMN_COMMENT,'''  ;')                                    

FROM COLUMNS  T WHERE  T.TABLE_NAME = 'WM_TCMPAT_INFO_B' ;

以上是关于MYSQL建表语句转换成oracle建表语句的主要内容,如果未能解决你的问题,请参考以下文章

oracle建表语句

oracle建表语句

怎样用oracle查建表语句

mysql和oracle建表语句的区别

MySQL数据同步到HIVE,自动生成MySQL表对应HIVE的建表语句

根据javabean转换为mysql建表语句