精华内容
下载资源
问答
  • --建表语句 SELECTCONCAT('CREATETABLE',T.TABLE_NAME,'(')cre_sqlFROMTABLESTWHERET.TABLE_NAME='WM_TCMPAT_INFO_B' UNIONALL #字段信息 SELECTCONCAT(T.COLUMN_NAME,'', REPLACE(REPLACE(REPLACE(REPLACE(T....

    -- 建表语句

    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' ;

    展开全文
  • ORACLE建表语句转化为MySQL建表语句

    千次阅读 2020-07-13 14:45:22
    转载自:... 1. fnc_table_to_mysql 主体程序 create or replace function fnc_table_to_mysql ( i_owner in string, i_table_name in string, i_number_default_type in

    转载自:https://www.cnblogs.com/chinesern/p/9127970.html

    1. fnc_table_to_mysql 主体程序

    create or replace function fnc_table_to_mysql  
    ( i_owner                       in string,  
      i_table_name                  in string,  
      i_number_default_type         in string := 'decimal',  
      i_auto_incretment_column_name in string := '%ID'  
    )  
    /*  
      功能:ORACLE表生成MYSQL建表DDL  
      作者:叶正盛 2013-07-27  
      新浪微博:@yzsind-叶正盛  
      参数说明:  
      i_owner:schema名  
      i_table_name:表名  
      i_number_default_type:NUMBER默认转换的类型,缺省是decimal  
      i_auto_incretment_column_name:自增属性字段名称规则,默认是%ID  
    
      已知问题:  
      1.不支持分区  
      2.不支持函数索引,位图索引等特殊索引定义  
      3.不支持自定义数据类型,不支持ROWID,RAW等特殊数据类型  
      4.不支持外键  
      5.不支持自定义约束  
      6.不支持与空间、事务相关属性  
      7.DATE与TIMESTAMP转换成datetime,需注意精度  
      8.超大NUMBER直接转换为bigint,需注意精度  
      9.auto incretment 是根据字段名规则加一些判断,设置不一定准确,需检查  
      */  
     return clob is  
      Result         clob;  
      cnt            number;  
      data_type      varchar2(128);  
      column_str     varchar2(4000);  
      pk_str         varchar2(4000);  
      table_comments varchar2(4000);  
      is_pk_column   number := 0;  
    begin  
      select count(*)  
    	into cnt  
    	from all_tables  
       where owner = i_owner  
    	 and table_name = i_table_name;  
      if (cnt = 0) then  
    	RAISE_APPLICATION_ERROR(-20000,'can''t found table,please check input!');  
      else  
    	Result := 'CREATE TABLE `' || lower(i_table_name) || '`(';  
    	--column  
    	for c in (select a.column_name,  
    					 a.data_type,  
    					 a.data_length,  
    					 a.data_precision,  
    					 a.data_scale,  
    					 a.nullable,  
    					 a.data_default,  
    					 b.COMMENTS  
    				from all_tab_cols a, all_col_comments b  
    			   where a.owner = i_owner  
    				 and a.table_name = i_table_name  
    				 and a.HIDDEN_COLUMN = 'NO'  
    				 and a.owner = b.OWNER  
    				 and a.TABLE_NAME = b.TABLE_NAME  
    				 and a.COLUMN_NAME = b.COLUMN_NAME  
    			   order by a.column_id) loop  
    	  if (c.data_type = 'VARCHAR2' or c.data_type = 'NVARCHAR2') then  
    		data_type := 'varchar(' || c.data_length || ')';  
    	  elsif (c.data_type = 'CHAR' or c.data_type = 'NCHAR') then  
    		data_type := 'char(' || c.data_length || ')';  
    	  elsif (c.data_type = 'NUMBER') then  
    		if (c.column_name like '%ID' and c.data_scale is null) then  
    		  data_type := 'bigint';  
    		elsif (c.data_precision<3 and c.data_scale = 0) then  
    		  data_type := 'tinyint';  
    		elsif (c.data_precision<5 and c.data_scale = 0) then  
    		  data_type := 'smallint';  
    		elsif (c.data_precision<10 and c.data_scale = 0) then  
    		  data_type := 'int';  
    		elsif (c.data_precision is not null and c.data_scale = 0) then  
    		  data_type := 'bigint';  
    		elsif (c.data_precision is not null and c.data_scale is not null) then  
    		  data_type := 'decimal(' || c.data_precision || ',' ||  
    					   c.data_scale || ')';  
    		else  
    		  data_type := i_number_default_type;  
    		end if;  
    	  elsif (c.data_type = 'DATE' or c.data_type like 'TIMESTAMP%') then  
    		data_type := 'datetime';  
    	  elsif (c.data_type = 'CLOB' or c.data_type = 'NCLOB' or  
    			c.data_type = 'LONG') then  
    		data_type := 'text';  
    	  elsif (c.data_type = 'BLOB' or c.data_type = 'LONG RAW') then  
    		data_type := 'blob';  
    	  elsif (c.data_type = 'BINARY_FLOAT') then  
    		data_type := 'float';  
    	  elsif (c.data_type = 'BINARY_DOUBLE') then  
    		data_type := 'double';  
    	  else  
    		data_type := c.data_type;  
    	  end if;  
    	  column_str := '  `' || lower(c.column_name) || '` ' || data_type;  
    	  if (c.column_name like i_auto_incretment_column_name and  
    		 (c.data_scale is null or c.data_scale = 0)) then  
    		select count(*)  
    		  into is_pk_column  
    		  from all_constraints a, all_cons_columns b  
    		 where a.owner = i_owner  
    		   and a.table_name = i_table_name  
    		   and a.constraint_type = 'P'  
    		   and a.OWNER = b.OWNER  
    		   and a.TABLE_NAME = b.TABLE_NAME  
    		   and a.CONSTRAINT_NAME = b.CONSTRAINT_NAME  
    		   and b.COLUMN_NAME = c.column_name;  
    		if is_pk_column > 0 then  
    		  column_str := column_str || ' AUTO_INCREMENT';  
    		end if;  
    	  end if;  
    	  if c.nullable = 'NO' then  
    		column_str := column_str || ' NOT NULL';  
    	  end if;  
    	  if (trim(c.data_default) is not null) then  
    		column_str := column_str || ' DEFAULT ' ||  
    					  trim(replace(replace(c.data_default, chr(13), ''),  
    								   chr(10),  
    								   ''));  
    	  end if;  
    	  if c.comments is not null then  
    		column_str := column_str || ' COMMENT ''' || c.comments || '''';  
    	  end if;  
    	  Result := Result || chr(10) || column_str || ',';  
    	end loop;  
    	--pk  
    	for c in (select a.constraint_name, wm_concat(a.column_name) pk_columns  
    				from (select a.CONSTRAINT_NAME,  
    							 '`' || b.COLUMN_NAME || '`' column_name  
    						from all_constraints a, all_cons_columns b  
    					   where a.owner = i_owner  
    						 and a.table_name = i_table_name  
    						 and a.constraint_type = 'P'  
    						 and a.OWNER = b.OWNER  
    						 and a.TABLE_NAME = b.TABLE_NAME  
    						 and a.CONSTRAINT_NAME = b.CONSTRAINT_NAME  
    					   order by b.POSITION) a  
    			   group by a.constraint_name) loop  
    	  Result := Result || chr(10) || '  PRIMARY KEY (' ||  
    				lower(c.pk_columns) || '),';  
    	end loop;  
    	--unique  
    	for c in (select a.constraint_name, wm_concat(a.column_name) uk_columns  
    				from (select a.CONSTRAINT_NAME,  
    							 '`' || b.COLUMN_NAME || '`' column_name  
    						from all_constraints a, all_cons_columns b  
    					   where a.owner = i_owner  
    						 and a.table_name = i_table_name  
    						 and a.constraint_type = 'U'  
    						 and a.OWNER = b.OWNER  
    						 and a.TABLE_NAME = b.TABLE_NAME  
    						 and a.CONSTRAINT_NAME = b.CONSTRAINT_NAME  
    					   order by b.POSITION) a  
    			   group by a.constraint_name) loop  
    	  Result := Result || chr(10) || '  UNIQUE KEY `' ||  
    				lower(c.constraint_name) || '`(' || lower(c.uk_columns) || '),';  
    	end loop;  
    	-- index  
    	for c in (select a.index_name, wm_concat(a.column_name) ind_columns  
    				from (select a.index_name,  
    							 '`' || a.COLUMN_NAME || '`' column_name  
    						from all_ind_columns a  
    					   where a.table_owner = i_owner  
    						 and a.TABLE_NAME = i_table_name  
    						 and not exists  
    					   (select index_name  
    								from all_constraints b  
    							   where a.TABLE_OWNER = b.owner  
    								 and a.TABLE_NAME = b.TABLE_NAME  
    								 and a.INDEX_NAME = b.INDEX_NAME)  
    					   order by a.COLUMN_POSITION) a  
    			   group by a.index_name) loop  
    	  Result := Result || chr(10) || '  KEY `' || lower(c.index_name) || '`(' ||  
    				lower(c.ind_columns) || '),';  
    	end loop;  
    	Result := substr(Result, 1, length(result) - 1) || chr(10) || ')';  
    	--table comments  
    	select max(a.COMMENTS)  
    	  into table_comments  
    	  from all_tab_comments a  
    	 where owner = i_owner  
    	   and table_name = i_table_name;  
    	if (table_comments is not null) then  
    	  Result := Result || 'COMMENT=''' || table_comments || '''';  
    	end if;  
    	Result := Result || ';';  
      end if;  
      return(Result);  
    end fnc_table_to_mysql;  
    /
    

    2 需要转换的oracle 表

    CREATE TABLE  "TEST_MYSQL"."UC_CUST_SY_CPZX" 
       (	"BUSI_DATE" NUMBER(*,0), 
    	"TRADE_DATE" NUMBER(*,0), 
    	"YEAR_ID" NUMBER(*,0), 
    	"MONTH_ID" NUMBER(*,0), 
    	"DAY_ID" NUMBER(*,0), 
    	"CPLX" CHAR(2 BYTE), 
    	"CPDM" VARCHAR2(100 BYTE), 
    	"PRODUCT_NAME" VARCHAR2(300 BYTE), 
    	"DWJZ" NUMBER(19,4) NOT NULL ENABLE, 
    	"LJJZ" NUMBER(19,4) NOT NULL ENABLE, 
    	"RZZL" NUMBER(19,4) NOT NULL ENABLE, 
    	"FQJZ" NUMBER(19,4) NOT NULL ENABLE, 
    	"LJJZSYL" NUMBER(19,4) NOT NULL ENABLE, 
    	"CPGLMS" NUMBER(*,0)
       );
    

    3 转换

    SQL> select dbms_lob.substr(fnc_table_to_mysql('TEST_MYSQL','UC_CUST_SY_CPZX','decimal','ID')) FROM DUAL;
    CREATE TABLE `uc_cust_sy_cpzx`(
      `busi_date` decimal,
      `trade_date` decimal,
      `year_id` decimal,
      `month_id` decimal,
      `day_id` decimal,
      `cplx` char(2),
      `cpdm` varchar(100),
      `product_name` varchar(300),
      `dwjz` decimal(19,4),
      `ljjz` decimal(19,4),
      `rzzl` decimal(19,4),
      `fqjz` decimal(19,4),
      `ljjzsyl` decimal(19,4),
      `cpglms` decimal
    );
    展开全文
  • 如何手动将ORACLE的sql建表语句转换为MYSQL建表语句 ORACLE sql建表语句 CREATE TABLE "SCOTT"."BUG" ( "BUG_ID" NUMBER NOT NULL , "BUG_TYPE" VARCHAR2(200 BYTE) NULL , "BUG_STATE...
    
    

    ORACLE sql建表语句
    CREATE TABLE "SCOTT"."BUG" (
    "BUG_ID" NUMBER NOT NULL ,
    "BUG_TYPE" VARCHAR2(200 BYTE) NULL ,
    "BUG_STATE" VARCHAR2(200 BYTE) NULL ,
    "BUG_PROP" VARCHAR2(200 BYTE) NULL ,
    "BUG_MAKER" VARCHAR2(200 BYTE) NULL ,
    "BUG_CREATOR" VARCHAR2(200 BYTE) NULL ,
    "BUG_PLAN_DATE" DATE NULL ,
    "BUG_CREATE_DATE" DATE NULL ,
    "BUG_SIGNER" VARCHAR2(200 BYTE) NULL ,
    "BUG_REPAIR_DATE" DATE NULL ,
    "BUG_CHECK_DATE" DATE NULL ,
    "BUG_PLAN_VERSION" VARCHAR2(200 BYTE) NULL ,
    "BUG_LASTED_DATE" DATE NULL ,
    "BUG_ENVIRONMENT" VARCHAR2(200 BYTE) NULL ,
    "BUG_EFFECTIVE_VERSION" VARCHAR2(200 BYTE) NULL ,
    "BUG_TITLE" VARCHAR2(200 BYTE) NULL ,
    "BLOCK_ID" NUMBER NULL ,
    "BUG_DESCRIBE" VARCHAR2(200 BYTE) NULL ,
    "PRODUCE_NAME" VARCHAR2(200 BYTE) NULL ,
    "PROGRAM_ID" NUMBER NULL ,
    "BUSER_ID" NUMBER DEFAULT ''  NULL ,
    "BUG_UPDATE" VARCHAR2(200 BYTE) NULL ,
    "BUG_PHOTO" VARCHAR2(255 BYTE) NULL ,
    "BUG_FU" VARCHAR2(255 BYTE) NULL ,
    "BUG_PROP_FLAG" NUMBER NULL ,
    "BUG_TOMAN" VARCHAR2(255 BYTE) NULL ,
    "BUG_FU_NAME" VARCHAR2(255 BYTE) NULL ,
    "CASE_ID" NUMBER NULL ,
    "BUG_KEYS" VARCHAR2(255 BYTE) NULL
    )
    INSERT 插入数据语句:
    INSERT INTO "SCOTT"."BUG" VALUES ('336000001', '任务', '未解决', '中', '杨东川', '杨东川', TO_DATE('2017-08-18 08:05:07', 'YYYY-MM-DD HH24:MI:SS'), TO_DATE('2017-08-18 08:05:07', 'YYYY-MM-DD HH24:MI:SS'), '杨东川', TO_DATE('2017-08-18 08:05:07', 'YYYY-MM-DD HH24:MI:SS'), null, null, TO_DATE('2017-08-09 00:00:00', 'YYYY-MM-DD HH24:MI:SS'), 'Windows', null, '测试帮助台中文字是否可用', null, '测试帮助台中文字是否可用', '分析研判库模块', '3430001', '35800001', '杨东川', null, null, '2', '杨东川', null, '0', 'nullnull');
    MYSQL sql建表语句
    DROP TABLE  `BUG`;
    CREATE TABLE  `BUG` (
    `BUG_ID` int(11) NOT NULL ,
    `BUG_TYPE` varchar(200) NULL ,
    `BUG_STATE` varchar(200) NULL ,
    `BUG_PROP` varchar(200) NULL ,
    `BUG_MAKER` varchar(200) NULL ,
    `BUG_CREATOR` varchar(200) NULL ,
    `BUG_PLAN_datetime` datetime NULL ,
    `BUG_CREATE_datetime` datetime NULL ,
    `BUG_SIGNER` varchar(200) NULL ,
    `BUG_REPAIR_datetime` datetime NULL ,
    `BUG_CHECK_datetime` datetime NULL ,
    `BUG_PLAN_VERSION` varchar(200) NULL ,
    `BUG_LASTED_datetime` datetime NULL ,
    `BUG_ENVIRONMENT` varchar(200) NULL ,
    `BUG_EFFECTIVE_VERSION` varchar(200) NULL ,
    `BUG_TITLE` varchar(200) NULL ,
    `BLOCK_ID` int(11) NULL ,
    `BUG_DESCRIBE` varchar(200) NULL ,
    `PRODUCE_NAME` varchar(200) NULL ,
    `PROGRAM_ID` int(11) NULL ,
    `BUSER_ID` int(11)  NULL ,
    `BUG_UPdatetime` varchar(200) NULL ,
    `BUG_PHOTO` varchar(255) NULL ,
    `BUG_FU` varchar(255) NULL ,
    `BUG_PROP_FLAG` int(11) NULL ,
    `BUG_TOMAN` varchar(255) NULL ,
    `BUG_FU_NAME` varchar(255) NULL ,
    `CASE_ID` int(11) NULL ,
    `BUG_KEYS` varchar(255) NULL
    )
    INSERT 插入数据语句:
    INSERT INTO BUG VALUES ('336000001', '任务', '未解决', '中', '杨东川', '杨东川', STR_TO_DATE('2017-08-18 08:05:07', '%Y-%m-%d %H:%i:%s'), STR_TO_DATE('2017-08-18 08:05:07', '%Y-%m-%d %H:%i:%s'), '杨东川', STR_TO_DATE('2017-08-18 08:05:07', '%Y-%m-%d %H:%i:%s'), null, null, STR_TO_DATE('2017-08-09 00:00:00', '%Y-%m-%d %H:%i:%s'), 'Windows', null, '测试帮助台中文字是否可用', null, '测试帮助台中文字是否可用', '分析研判库模块', '3430001', '35800001', '杨东川', null, null, '2', '杨东川', null, '0', 'nullnull');

    两者差异区别:

    ORCLE
    MYSQL
    number
    int(XX)
    varchar2
    varchar
    date
    datetime
    “”(双引号修饰字段名)
    ``(Tab建 上一位)
    TO_DATE(?, 'YYYY-MM-DD HH24:MI:SS')
    STR_TO_DATE(?, '%Y-%m-%d %H:%i:%s')
    STR_TO_DATE
    mysql内置函数,在mysql里面利用str_to_date()把字符串转换为日期。
    示例:
    str_to_date('2017-04-02 15:23:42','%Y-%m-%d %H:%i:%s');
    str_to_date('2017-04-02 02:19:50', '%Y-%m-%d %h:%i:%s');
    展开全文
  • 在实际工作中,一张表,我们可能需要在...本篇文章,以Oracle数据库表为源表,通过PowerDesigner工具将其转化成Mysql数据库建表语句。 1、以 oracle_to_student(学生表)为例,Oracle数据库中建表语句如下所示。...

          在实际工作中,一张表,我们可能需要在Mysql数据库中建表,又要在Oracle数据库中建表。表中每个字段的数据类型、中文注释、是否可为NULL 问题,非常影响我们建表的效率。本篇文章,以Oracle数据库表为源表,通过PowerDesigner工具将其转化成Mysql数据库建表语句。
     

    1、以 oracle_to_student(学生表)为例,Oracle数据库中建表语句如下所示。需要注意的是,若要相对完美的将Oracle数据库表转换成Mysql数据库表,需要严格按照以下Oracle数据库表结构方式,标点符号都不能多、不能少。

     

         1.1、表名、字段名,需要去除 ` 符号  ;

         1.2、若字段定义过程中缺少 'NOT NULL'、 'DEFAULT NULL', 请添加 ;

         1.3、若Oracle表中含主键,需要添加命令设置主键。
     

    -- 使用PowerDesigner将Oracle建表语句转换成Mysql建表语句。
    create table oracle_to_student
    (
      
      stu_id       NUMBER(16)      NOT NULL,
      stu_name     VARCHAR2(32)    NOT NULL,
      stu_tuition  NUMBER(9, 2)    NOT NULL,
      stu_address  VARCHAR2(500)   DEFAULT NULL,
      stu_age      NUMBER(3) 	   DEFAULT NULL,
      create_date  DATE 		   DEFAULT NULL
    )
    tablespace STT_TBS_DATA
      pctfree 10
      initrans 1
      maxtrans 255
      storage
      (
        initial 1
        next 1
        minextents 1
        maxextents unlimited
      );
    
    comment on table oracle_to_student
      is '学生表';
    
    -- 新增语句
    alter table oracle_to_student add constraint pk_student001 primary key(stu_id);
      
    
    comment on column oracle_to_student.stu_id
      is '学生编码';
      
    comment on column oracle_to_student.stu_name
      is '学生姓名';
    
    comment on column oracle_to_student.stu_tuition
      is '学费';
      
    comment on column oracle_to_student.stu_address
      is '学生地址';
    
    comment on column oracle_to_student.stu_address
      is '学生年龄';  
      
    comment on column oracle_to_student.create_date
      is '创建时间';
    
    

     

    2、 打开 PowerDesigner 软件, 选择 文件 ---> 反向工程 ---> Database ,如下图1所示。

                                                                                      图1

     

    3、 之后,会弹出 New Physical Date Model 窗口。 在该窗口 "常规" 选项界面, 由于我们是将Oracle数据库中表转成Mysql数据库中表,所以 "DBMS" 行选择 "ORACLE Version 11g" 选项,如图2所示。

                                                                                      图2

     

    4、之后,会弹出 "Database Reverse Engineering Options" 窗口, 在该窗口点击 "Add Files (Ctrl + N)" 图标,选择Mysql数据库student表sql脚本,如图3、 图4所示。

                                                                                      图3

     

                                                                                      图4

     

    5、由步骤4操作后,PowerDesigner 软件界面如下图5所示。

                                                                                      图5

     

    6、在 PowerDesigner 软件上,选择 "数据库" ---> "Change Current DBMS..." 选项,如下图6所示。 

                                                                                      图6

     

    7、之后,会弹出 "Change DBMS" 窗口。 由于我们是将Oracle数据库表转化成Mysql数据库表,在这里 "New 数据库管" 一行选择 "MySQL 5.0" 。 "Current 数据库管" 一栏,会随着这一步操作完成后,自动更改成 "MySQL 5.0" ,如下图7、图8所示。

                                                                                      图7

     

                                                                                      图8

     

    8、使用快捷键: Ctrl + G,调用出 "Database Generation" 窗口,选择生成Mysql建表语句文件的路径,并对文件进行命名,如下图9所示。

                                                                                      图9

     

    9、之后,会弹出 "Generated Files" 窗口,由log日志、生成的sql脚本文件可知,程序运行成功。点击 "Generated Files" 窗口中的 "关闭(C)" 按钮后,会弹出 "结果列表" 窗口,该窗口无实际意义,直接关闭。 如下图10、图11所示。

                                                                                      图10

     

                                                                                      图11

     

    10、由Oracle建表语句中文字段含义可知,stu_id、stu_age 这2个字段为普通数字数据类型字段,stu_tuition 字段为金额数据类型字段,需保留2位小数。经过PowerDesigner软件生成后的Mysql建表语句,这3个字段的数据类型并非是我们需要的数据类型,因此需要更改。

     

            将  stu_id numeric(16, 0)  更改为 stu_id bigint(16) ;  将 stu_age numeric(3, 0) 更改为 stu_age int(3);  将 stu_tuition numeric(9, 2) 更改为 stu_tuition decimal(9, 2) 。 如下图12、 图13 所示。

                                                                                      图12

     

                                                                                      图13

     

    11、经过上述处理之后,SQL脚本即可放到Navicat软件中直接运行使用。 图14、图15是效果展示图。

    Oracle数据库表转成Mysql数据库表的SQL语句如下所示:

    /*==============================================================*/
    /* DBMS name:      MySQL 5.0                                    */
    /* Created on:     2020/3/12 9:34:59                            */
    /*==============================================================*/
    
    
    drop table if exists ORACLE_TO_STUDENT;
    
    /*==============================================================*/
    /* Table: ORACLE_TO_STUDENT                                     */
    /*==============================================================*/
    create table ORACLE_TO_STUDENT
    (
       STU_ID               bigint(16) not null comment '学生编码',
       STU_NAME             varchar(32) not null comment '学生姓名',
       STU_TUITION          decimal(9,2) not null comment '学费',
       STU_ADDRESS          varchar(500) default NULL comment '学生年龄',
       STU_AGE              int(3) default NULL,
       CREATE_DATE          datetime default NULL comment '创建时间',
       primary key (STU_ID)
    );
    
    alter table ORACLE_TO_STUDENT comment '学生表';
    
    

     

     

                                                                                      图14

     

                                                                                      图15

     

     

    参考文章:  PowerDesigner,如何将Mysql数据库建表语句转化成Oracle数据库建表语句。    

     

    姊妹篇文章: PowerDesigner,如何将Mysql数据库建表语句转化成Oracle数据库建表语句。     

     

     

    展开全文
  • mysql DROP TABLE IF EXISTS `order`;CREATE TABLE `order` ( `id` int(11) NOT NULL AUTO_INCREMENT, `number` varchar(255) NOT NULL COMMENT '工单编号', `applicant` varchar(255) NOT NULL COMMENT '工单申请...
  • 在实际工作中,一张表,我们可能...本篇文章,以Mysql数据库表为原表,通过PowerDesigner工具将其转化成Oracle数据库建表语句。 1、以 student(学生表)为例,Mysql数据库中建表语句如下所示。需要注意的是,...
  • oracle建表语句

    2012-02-02 14:21:55
    如何查看oracle中某张表的建表语句 mysql中有这个,不知道oracle能不能看到呢
  • 下列 SQL 语句把 "Persons" 表中的 "P_Id" 列定义为 auto-increment 主键: CREATE TABLE Persons ( P_Id int NOT NULL AUTO_INCREMENT, LastName varchar(255) NOT NULL, FirstName varchar(255), Address ...
  • 个人习惯用MySQL workbench EER数据建模,然后生成SQL语句到数据库中执行,这样表之间的关系比较直观。 像下面这样: 画图 正向工程,生成DDL语句: 忽略生成外键,以及外键索引啥的: ...
  • oraclemysql建表语句的迁移。 直接表结构的生成sql脚本
  • application.yml spring: application: name: ora datasource: type: com.zaxxer.hikari.HikariDataSource driver-class-name: oracle.jdbc.OracleDriver url: jdbc:oracle:thin:@192.168.0.0...
  • 本文转载: 原文地址: 怎么将oracle的sql文件转换成mysql的sql文件
  • oracle测试表,emp,dept,salgrade的mysql建表语句及测试数据, 直接复制到数据库运行或者导入sql文件, 即可
  • ORACLE库的操作首先选择navicat作为这个文件的工具,作为数据库的导入和导出工具。 导出的时候 会连结构和数据都导出来,会形成一个sql文件 也可以只倒视图或者表都可以的。但是以导出的这个文件导入的时候 会有...
  • ---C 字符型 --varchar2  ---N 数字型 --number  ---B 二进制型 --blob  ---T 大文本型 --clob  ----------------------------------------------------- ...jbpm4 建表语句 oracle crea
  • activity mysql 建表语句

    2018-02-05 11:35:21
    activity mysql 建表语句 23张表 oracle数据库脚本的改版
  • 用 navicat 9.0 1、先新建一个mysql的数据库,然后把这个脚本导入进去(肯定会成功的) 2、在新建导入的数据库上,右击,数据传输,右边的目标选择文件,然后右边第二个选择sql格式,选择oracle就行了 ...
  • 但是我要将ddl语句取出在mysql中建表的时候,只需要 CREATE TABLE "SCOTT"."DEPT" ( "DEPTNO" NUMBER(2,0), "DNAME" VARCHAR2(14), "LOC" VARCHAR2(13), CONSTRAINT "PK_DEPT" PRIMARY KEY ("DEPTNO")) ...
  • 基于网络版本,做了一定的处理和优化,后面继续添加Oracle版本 import lombok.extern.slf4j.Slf4j; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.lang.reflect...
  • Oracle建表SQL语句

    2021-07-13 08:05:43
    CREATE TABLE CHECK_LOG ( CHECK_ID NUMBER, INV_NO VARCHAR2(50 BYTE), PALLET_NO VARCHAR2(50 BYTE), CHECK_RESULT VARCHAR2(50 BYTE), CREATE_TIME DATE...
  • 1.1 Oracle建表语句(quartz 2.x版本)   DROP TABLE QRTZ_FIRED_TRIGGERS; DROP TABLE QRTZ_PAUSED_TRIGGER_GRPS; DROP TABLE QRTZ_SCHEDULER_STATE; DROP TABLE QRTZ_LOCKS; DROP TABLE QRTZ_...
  • File-》Reverse Engineer-》DataBase-》选择mysql的文件导入 DBMS选择mysql版本号 操作生成后 Database-》Change Current DBMS-》这里选择Oracle版本号,之后生成的就是Oracle的sql 可以使用Database下的...
  • 写了一个从oracle表生成mysql 建表语句的过程如下。 有些部分是定制化需求,需要根据实际使用场景微调。 create or replace procedure p_wjf_ora_to_mysql(i_tablename in varchar2, i_tab_owner in varchar...
  • sybase库中导出全部表的oraclemysql和sybase格式的建表语句
  • oracle中emp,dept,bonus,salgrade练习用表在 MYSQL 中的建表语句
  • mysql: drop table if exists tableA; create table tableA  (  id bigint(20) not null primary key AUTO_INCREMENT,  operator_id bigint(20) not null,  res_source_key bigint(20) not null,  res_source_...
  • * oracle sql语句转mysql sql语句 */ public class OracleToMysqlInsert { public void doChange(String filePath) { try { File file = new File(filePath); FileReader rd = new FileReader(file); // ...
  • 准备一张维度表:dim_ddl_convert,建表语句如下: DROP TABLE IF EXISTS `dim_ddl_convert`; CREATE TABLE `dim_ddl_convert` ( `source` varchar(100) NOT NULL, `data_type1` varchar(100) NOT NULL, `target`...
  • 生成hive建表语句的首尾只需拼接,主要通过数据库元数据读取字段类型...在MySQL中生成hive建表语句: SELECT CONCAT('create table ',@tbl_name,'(') UNION ALL SELECT CONCAT( COLUMN_NAME, ' ', CASE ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 15,050
精华内容 6,020
关键字:

oracle建表语句转mysql

mysql 订阅