精华内容
下载资源
问答
  • 数据库建表语句

    2012-03-29 09:23:04
    数据库建表语句 方便使用者使用 配置数据库 与封装数据库
  • 在实际工作中,一张表,我们可能...本篇文章,以Mysql数据库表为原表,通过PowerDesigner工具将其转化成Oracle数据库建表语句。 1、以 student(学生表)为例,Mysql数据库中建表语句如下所示。需要注意的是,...

     

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

     

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

     

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

         1.2、若字段定义过程中有 ' COLLATE utf8mb4_bin '  关键字,去掉 ;

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

     

    -- 去掉的字符:`
    -- 去掉的字符:COLLATE utf8mb4_bin 
    -- stu_name varchar(255) COLLATE utf8mb4_bin DEFAULT NULL COMMENT '性别',
    
    CREATE TABLE student (
      id int(8) NOT NULL COMMENT '主键',
      stu_name varchar(255) DEFAULT NULL COMMENT '学生姓名',
      stu_sex varchar(8) DEFAULT NULL COMMENT '性别',
      stu_age int(4) DEFAULT NULL COMMENT '学生年龄',
      stu_class varchar(255) DEFAULT NULL COMMENT '学生班级',
      stu_address varchar(255) DEFAULT NULL COMMENT '家庭住址',
      stu_mother varchar(255) DEFAULT NULL COMMENT '学生母亲姓名',
      stu_m_age varchar(255) DEFAULT NULL COMMENT '学生母亲年龄',
      stu_m_phone varchar(255) DEFAULT NULL COMMENT '学生母亲电话',
      stu_father varchar(255) DEFAULT NULL COMMENT '学生父亲姓名',
      stu_f_age varchar(255) DEFAULT NULL COMMENT '学生父亲年龄',
      stu_f_phone varchar(255) DEFAULT NULL COMMENT '学生父亲电话',
      create_date datetime DEFAULT NULL COMMENT '创建日期',
      update_date datetime DEFAULT NULL COMMENT '更新日期',
      start_date datetime DEFAULT NULL COMMENT '入学时间',
      stop_date datetime DEFAULT NULL COMMENT '毕业时间',
      PRIMARY KEY (id)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='学生表';
    
    

     

     

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

     

                                                                                        图1

     

     

    3、 之后,会弹出 New Physical Date Model 窗口。 在该窗口 "常规" 选项界面, 由于我们是将Mysql数据库中表转成Oracle数据库中表,所以 "DBMS" 行选择 "MySQL 5.0" 选项,如图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" 窗口。 由于我们是将Mysql数据库表转化成Oracle数据库表,在这里 "New 数据库管" 一行选择 "ORACLE Version 11g" 。 "Current 数据库管" 直接手动输入:ORACLE Version 11g  ,如下图7所示。

     

                                                                                        图7

     

     

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

     

                                                                                        图8

     

     

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

     

                                                                                        图9

     

                                                                                        图10

     

     

    10、打开生成好的SQL脚本,删除语句: constraint PK_STUDENT primary key (id) , 并删除一个多余的逗号。如下图11所示。  

     

                                                                                        图11

     

     

    11、将SQL脚本中所有的英文半角双引号去掉,可使用NotePad++工具直接替换。如下图12所示,在下图12中,我将转成Oracle建表语句的 student 表名改成了 student003. 因为在我的Oracle数据库中,已经存在了 student 表,这次为了测试检验,故在此将表名更换。

     

                                                                                        图12

     

     

    12、在SQL语句中,添加给表建立中文注释的命令、添加给表建立主键的命令。命令如下所示,截图如图13所示。

    
    -- 新增命令,给表命名。
    COMMENT ON TABLE student IS '学生表';
    
    -- 新增命令,给表添加主键。
    alter table student add constraint pk_student primary key(id);
    
    

     

                                                                                        图13

     

     

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

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

    /*==============================================================*/
    /* DBMS name:      ORACLE Version 11g                           */
    /* Created on:     2020/2/14 22:29:28                           */
    /*==============================================================*/
    
    
    drop table student003 cascade constraints;
    
    /*==============================================================*/
    /* Table: student003                                             */
    /*==============================================================*/
    create table student003 
    (
       id                 INTEGER              not null,
       stu_name           VARCHAR2(255)        default NULL,
       stu_sex            VARCHAR2(8)          default NULL,
       stu_age            INTEGER              default NULL,
       stu_class          VARCHAR2(255)        default NULL,
       stu_address        VARCHAR2(255)        default NULL,
       stu_mother         VARCHAR2(255)        default NULL,
       stu_m_age          VARCHAR2(255)        default NULL,
       stu_m_phone        VARCHAR2(255)        default NULL,
       stu_father         VARCHAR2(255)        default NULL,
       stu_f_age          VARCHAR2(255)        default NULL,
       stu_f_phone        VARCHAR2(255)        default NULL,
       create_date        DATE                 default NULL,
       update_date        DATE                 default NULL,
       start_date         DATE                 default NULL,
       stop_date          DATE                 default NULL
    );
    
    -- 新增命令,给表命名。
    COMMENT ON TABLE student003 IS '学生表';
    
    -- 新增命令,给表添加主键。
    alter table student003 add constraint pk_student003 primary key(id);
    
    
    comment on column student003.id is
    '主键';
    
    comment on column student003.stu_name is
    '学生姓名';
    
    comment on column student003.stu_sex is
    '性别';
    
    comment on column student003.stu_age is
    '学生年龄';
    
    comment on column student003.stu_class is
    '学生班级';
    
    comment on column student003.stu_address is
    '家庭住址';
    
    comment on column student003.stu_mother is
    '学生母亲姓名';
    
    comment on column student003.stu_m_age is
    '学生母亲年龄';
    
    comment on column student003.stu_m_phone is
    '学生母亲电话';
    
    comment on column student003.stu_father is
    '学生父亲姓名';
    
    comment on column student003.stu_f_age is
    '学生父亲年龄';
    
    comment on column student003.stu_f_phone is
    '学生父亲电话';
    
    comment on column student003.create_date is
    '创建日期';
    
    comment on column student003.update_date is
    '更新日期';
    
    comment on column student003.start_date is
    '入学时间';
    
    comment on column student003.stop_date is
    '毕业时间';
    
    

     

                                                                                        图14

     

                                                                                        图15

     

                                                                                        图16

     

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

     

     

    展开全文
  • 在实际工作中,一张表,我们可能需要在...本篇文章,以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数据库建表语句。     

     

     

    展开全文
  • Quartz 数据库建表语句 大全!
  • 数据库建表语句.txt

    2013-09-05 09:51:23
    数据库建表语句
  • SpringBatch数据库建表语句,存储springBatch批处理过程中需要保存的数据和步骤信息
  • Oracle数据库建表语句

    千次阅读 2019-08-06 10:05:11
    Oracle数据库建表语句 #1.建表语句 create table CUST_INFO ( CUST_ID VARCHAR(36) not null, CUST_TYPE VARCHAR(50), CUST_NAME VARCHAR(200), ID_NO ...

    Oracle数据库建表语句

    #1.建表语句

    create table CUST_INFO
    (
       CUST_ID                    VARCHAR(36)      not null,
       CUST_TYPE                  VARCHAR(50),
       CUST_NAME                  VARCHAR(200),
       ID_NO                      VARCHAR(20),
       ADDE                       VARCHAR(20),
       constraint P_ID primary key (CUST_ID)
    );
    

    #2.添加字段注释

    comment on column LPB_LETTER_HIS.CUST_ID is '客户编号';
    comment on column LPB_LETTER_HIS.CUST_NAME is '客户类型';
    comment on column LPB_LETTER_HIS.LOAN_ACTV_MONTH is '客户名称';
    comment on column LPB_LETTER_HIS.FEE_AMT_TOTAL is '证件号码';
    comment on column LPB_LETTER_HIS.LETTER_STS is '地址';
    
    展开全文
  • 圣达进销存odbc数据库建表语句,配合圣达进销存使用
  • 因为当前prod环境和本地开发环境有网络隔离,不能直接访问,故导出的hive数据库建表语句打包压缩后上传到HDFS上,再手动下载到本地,上传到Git; STEP 1:到处建表语句,压缩打包上传到HDFS; STEP 2:手动下载...

    因为当前prod环境和本地开发环境有网络隔离,不能直接访问,故导出的hive数据库建表语句打包压缩后上传到HDFS上,再手动下载到本地,上传到Git;

    STEP 1:到处建表语句,压缩打包上传到HDFS;

    STEP 2:手动下载建表语句包,解压移动到git代码库;

     

    文件名: export_create.sh 

    #!/bin/bash
    
    # SETP 1:
    # export table create script and put it into HDFS directory for downloading.
    # create download uri text file, used by STEP 2.(unzip_move.sh)
    
    # run on hdfs prod environment, eg 101.
    
    currentDb=$1
    workDir=/tmp/export
    scriptDir=$workDir/$currentDb
    tableFile=$scriptDir/table.txt
    hdfsDir=/user/adore.chen/hive_stats/create_script
    logFile=$workDir/export.log
    
    
    # check input parameter
    if [ ! -n "$currentDb" ];then
        echo "parameter database is empty."
        exit 1
    else
        echo "to export create script of database: $currentDb"
    fi
    
    # check script dir
    if [ ! -d $scriptDir  ];then
      mkdir -p $scriptDir
    fi
    
    # get tables of input database
    echo "use $currentDb; show tables" > ${logFile}
    if [ $currentDb != "" ];then
          hive -e "use $currentDb;show tables" > ${tableFile}
          cat $tableFile >> $logFile
    
          # get create script
          cat $tableFile | while read tab_name
          do
                  echo "show create table $currentDb.$tab_name"
                  hive -e "show create table $currentDb.$tab_name;" | grep -v createtab_stmt > ${scriptDir}/${tab_name}.sql
          done
    fi
    
    # compress sql and upload to HDFS
    cd $workDir
    tar -zcvf ${currentDb}.tar.gz $currentDb/*.sql
    $HADOOP_HOME/bin/hadoop fs -mkdir -p $hdfsDir
    $HADOOP_HOME/bin/hadoop fs -put -f ${currentDb}.tar.gz $hdfsDir
    

     

    使用方式:

    sh export_create.sh your_db_name 

     

    文件名: unzip_move.sh

    #!/bin/bash
    
    # SETP 2:
    # download the db.gz file to local,
    # and then unzip and move to git repository.
    
    # run on your local machine.
    
    currentDb=$1
    
    # check input parameter
    if [ ! -n "$currentDb" ];then
        echo "parameter database is empty."
        exit 1
    else
        echo "to unzip script of database: $currentDb"
    fi
    
    # unzip the db.gz file
    tar -xvf ~/Downloads/$currentDb.tar
    
    # move to git location
    mv -f ~/Downloads/$currentDb ~/IdeaProjects/yourProject/ops/src/main/resources/hive/
    

     

     

    使用方式:

    sh unzip_move.sh your_db_name

    先收到从HDFS下载 yourDb.tar 然后运行unzip_move.sh 就可以把建表语句导出到git库了。 

    展开全文
  • Flowable数据库建表语句-Oracle版本 在整合Flowable的过程中整理了一下建表语句,如果跑完后ACT_GE_PROPERTY中的数据显示乱码,原因是ORACLE的NVARCHAR2类型导致的,改为VARCHAR2可以解决,但是后续程序执行还是会...
  • 方便大家不用再次照着树后面的附录D敲这个纯体力活儿的建表语句,(SQL SQL入门经典 数据库建表 SQL语句)
  • mysql 数据库建表语句的规范

    千次阅读 2013-04-07 10:23:29
    -- 数据库建表语句的规范小结 建表语句的规范: 1.字段的设计  A. 数据类型尽量用数字类型,数字类型的比字符类型的要快很多。  B. 数据类型尽量小,这里的尽量小是指在满足可以预见的未来需求的前提下的,但是...
  • 开发者可以使用FullCalendar创建强大的日历日程应用,FullCalendar提供了丰富的选项设置和方法调用,使得开发者可以轻松的创建各种功能的日历程序。
  • java poi EXCLE 导入/导出 EXCLE 导入 EXCLE导出 poi 导入/导出 源代码+数据库建表语句+测试数据 mysql下建库表 源代码导入eclipse 直接运行 畅通无阻 OK!!!
  • --数据库建表语句(oracle) create table rights_menu_data (  id number(11) not null primary key,  mid number(11) not null,  pid number(11) not null,  name nvarchar2(30) not null,  layout ...
  • 因为使用数据库建表语句较为规范,你做的操作有迹可循,在本地建表以后,把语句复制在线上数据库执行一遍就可以了,手动建表的话不一定能保证两次建表一模一样,而且很麻烦(但是可以把表复制过去,但是这样的话测试...
  • https://yinglongwu.blog.csdn.net/article/details/107304208 博客配套资源(如果积分过高请评论或者私聊我降低积分)
  • MySQL数据库建表语句

    千次阅读 2019-05-26 19:15:18
    **建立一个叫student的表** CREATE TABLE`student`( **id为int类型设置不能为空值** `id` INT NOT NULL auto_increment primary key COMMENT'学生id', `name`VARCHAR(16) NOT NULL COMMENT'学生姓名', ...
  • 目录介绍需求思路思路1:一张表来表示所有数据(如下图)思路2:两张表,学生表和班级表(如下图)代码扩展1....本文将用一个简单的tip来简单介绍建表语句,可以作为建表语句的模板使用 需求 采集一个学校中学生
  • 本博文介绍三种方法,推荐使用第三种,前两种都是尝试。 方法一: 现在的导出还是有缺陷的,导出的文件中还是存在其他不必要的信息 ...#获取hive建表语句 tables=$(hive -e "use $database; show tables;") for...
  • 在线投稿审稿管理系统数据库包括以下功能:作者、审稿人的信息管理(录入、修改、删除等);稿件类型、稿件信息的管理;稿件的审阅过程管理;稿费、审稿费和版面费的管理;创建存储过程,统计指定作者的稿件信息;...
  • 今天使用PowerDesigner进行数据库建表,生成的sql执行报ora-00906missing left parenthesis 一百度发现是因为clustered关键字 需要修改PowerDesigner默认指定的数据库类型, 数据库->Change Current DBMS ...
  • 总述: 看了些文章,要么是建工程,...1.粘贴出来我们的建表语句到notepad,如下: 直接粘贴,去掉多余的行,保留字段就够了.然后全选,Shitf+Tab,对整齐. 2.现在已经把数据拿到了,接下来就是正则替换,先写一个正则表
  • 查看数据库建表语句

    千次阅读 2017-01-06 17:16:19
    打开plsql工具,找到相应的表视图界面 然后在本界面的右下角有一个ViewSQL,点击进入就可查看创建本表的sql语句
  • 客户提出一个要求,编写一个脚本,输入表名后,实现导出表的建表语句及注释。查询资料后,实现如下: 导出建表语句的SQL文件 set echo off set pagesize 0 set long 90000 set feedback off set termout off set ...
  • ![图片说明](https://img-ask.csdn.net/upload/201702/24/1487911369_535210.png)
  • 修改以下参数 innodb_file_per_table=1 innodb_file_format=Barracuda innodb_strict_mode= 0
  • 创建assest表空间 路径需要自己修改,建议放在 数据库路径\app\Administrator\oradata\实例名目录下 create tablespace ASSETS logging datafile ‘D:\Oracle11g\ASSETS.dbf’ size 5000m autoextend on next 500m ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,801
精华内容 1,920
关键字:

数据库建表语句