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建表语句的主要内容,如果未能解决你的问题,请参考以下文章