Mysql建库语句(导出的):

DROP TABLE IF EXISTS `tablename`;

CREATE TABLE `tablename` (

`C_DI_CDE` varchar(40) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,

/*Mysql添加注释方法:在创建字段后直接填写COMMENT '注释内容'*/

`C_PATER_CDE` varchar(40) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL COMMENT '  父代码',

`C_NAME` varchar(200) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL COMMENT '  名称',

`C_DESCRIBE` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT '0' COMMENT '  描述',

`C_STATE` varchar(10) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT '0' COMMENT '  状态',

PRIMARY KEY (`C_DI_CDE`),

/*MySQL中的KEY为键的含义和索引定义相同,是索引约束,即主键外键也是索引的一种,故Unique KEY表示唯一性索引*/

UNIQUE KEY `PK_WEB_BAS_DIC_DT` (`C_DI_CDE`) USING BTREE,

KEY `IDX_WEB_BAS_DIC_DT_C_DICT_TYPE` (`C_DICT_TYPE`) USING BTREE

) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='CLM_C_DICD_DATAS';

备注:表名和表字段上的符号不是单引号而是tab键上面的那个键的英文状态下的符号,加或不加都可以,在表字段名为关键字是需要加该符号防止与关键字冲突而建表失败。

Oracle建表语句:

CREATE TABLE WEB_TABLE (

C_TABLE_ID VARCHAR2(50 BYTE) DEFAULT ''  NOT NULL  PRIMARY KEY,   /*创建主键方法之一*/

C_DPT_CDE VARCHAR2(30 BYTE) DEFAULT NULL  NULL ,

C_KIND_NO VARCHAR2(2 BYTE) DEFAULT NULL  NULL ,

C_PROD_NO VARCHAR2(10 BYTE) DEFAULT NULL  NULL  UNIQUE,    /*创建Unique约束方法之一*/

C_LEV_TYP VARCHAR2(2 BYTE) DEFAULT NULL  NULL ,

C_LEV_CDE VARCHAR2(5 BYTE) DEFAULT NULL  NULL ,

C_LEV_NME VARCHAR2(100 BYTE) DEFAULT NULL  NULL ,

C_FLG VARCHAR2(2 BYTE) DEFAULT NULL  NULL ,

CONSTRAINT PK_WEB_CLM_ADJUST PRIMARY KEY (C_TABLE_ID),       /*创建主键方法之二*/

CONSTRAINT PK_WEB_RISK_CLM_SEQ UNIQUE (C_DPT_CDE,C_PROD_NO)              /*创建Unique约束方法之二*/

) ;

/*Oracle添加注释方法:COMMENT ON  表名.字段名 IS '注释内容' */

COMMENT ON COLUMN WEB_TABLE.C_TABLE_ID IS '主键';

COMMENT ON COLUMN WEB_TABLE.C_DPT_CDE IS '机构编码';

COMMENT ON COLUMN WEB_TABLE.C_PROD_NO IS '产品编码';

COMMENT ON COLUMN WEB_TABLE.C_LEV_TYP IS '级别类型';

COMMENT ON COLUMN WEB_TABLE.C_LEV_CDE IS '级别编码';

COMMENT ON COLUMN WEB_TABLE.C_LEV_NME IS '级别名称';

COMMENT ON COLUMNWEB_TABLE.C_FLG IS '发送状态';

-- ---------------------------- -- Indexes structure for table WEB_CLM_AUTH -- ----------------------------

CREATE INDEX IYA_AUTH_LEV_TYP ON WEB_TABLE (C_LEV_TYP ASC) ;        /*创建普通索引*/

CREATE UNIQUE INDEX UIYA_AUTH_DPT_CDE ON WEB_TABLE (C_DPT_CDE ASC, C_PROD_NO ASC, C_LEV_TYP ASC, C_LEV_CDE ASC) ;               /*创建Unique索引*/

-- ---------------------------- -- Primary Key structure for table WEB_CLM_AUTH -- ----------------------------

/*该方法需要命名约束名称时可使用CONSTRAINT属性的写法来*/

ALTER TABLE WEB_TABLE ADD PRIMARY KEY (C_TABLE_ID);                       /*创建主键方法之三*/

ALTER TABLE WEB_TABLE ADD Unique (C_PROD_NO);                       /*创建唯一约束方法之三*/

补充说明:

1.一个表只能有一个primary key,可以有多个unique约束,Oracle中不容许在相同列上既创建主键又创建唯一性约束
2.Oracle中当创建primary key的时候,会同时建立一个索引,名字和primary key的名称相同.
3.当某属性为primary key,会默认新增not null约束,当删除primary key后,not null属性取消.
4.表的一个属性可以同时设定not null和primary key约束.

关于CONSTRAINT

http://blog.csdn.net/lengyue_wy/article/details/6712258

数据库转换Mysql-Oracle之建表语句的更多相关文章

  1. oracle基本建表语句

    oracle基本建表语句 2010-09-20 10:37:33|  分类: 数据库 |  标签:数据库  oracle  |字号 订阅 --创建用户create user han identifie ...

  2. oracle的建表语句

    oracle数据库的建表语句,具体语法如下: CREATE TABLE tablename (column_name datatype [null,not null], column_name dat ...

  3. oracle得到建表语句

    第一种方法是使用工具,如:pl/sql developer,在[工具]--[导出用户对象]出现就可以得到建表脚本. 第二种方法是,sql语句. DBMS_METADATA.GET_DDL包可以得到数据 ...

  4. 五、oracle基本建表语句

    --创建用户create user han identified by han default tablespaceusers Temporary TABLESPACE Temp;grant conn ...

  5. mysql workbench 导出建表语句

    导出建表语句和数据 server—–>data export—–>选中表  注意,export to dump project folder,这种方式是每个表对应一个sql文件.  导出建 ...

  6. 【MySQL】查看建表语句

    命令如下: SHOW CREATE TABLE tbl_name 例子: mysql> show create table m_zhbess_vehicle_report\G ********* ...

  7. [Oracle] 简单建表语句

    // 注意表名,字段名,索引名 尽量不要带引号 CREATE TABLE FIRSTTB    ( "ID" NUMBER(8,0) not null primary key, & ...

  8. 三种常用的MySQL建表语句

    MySQL建表语句是最基础的SQL语句之一,下面就为您介绍最常用的三种MySQL建表语句,如果您对MySQL建表语句方面感兴趣的话,不妨一看. 1.最简单的: CREATE TABLE t1(    ...

  9. mysql 常用命令,连接数据库,查看建表语句,批量导入数据,批量更新数据,连接查询

    1. 1)MySQL 连接本地数据库,从cmd中进入mysql命令编辑器: root root分别为用户名和密码 mysql -uroot -proot 2)MySQL 连接本地数据库,用户名为“ro ...

随机推荐

  1. 【读书笔记】--《编写高质量iOS与OS X代码的52个有效方法》

    1.Objective-C 起源: 在 C 语言基础上添加了面向对象特性,是 C 语言的超集.Objective-C 由 SmallTalk 语言演变过来,使用消息结构,运行环境由运行环境决定. OC ...

  2. Hadoop 启动/停止集群和节点的命令

    集群启动/停止Hadoop集群:start-all.sh    stop-all.sh 1) 启动NameNode, DataNode 2) 启动JournalNode, JournalNode在hd ...

  3. java.net.URISyntaxException: Illegal character in query at index 147

    这是url出现了特殊字符,需要将特殊字符进行替换

  4. liux 命令行

    查找文件 () find / -name httpd.conf #在根目录下查找文件httpd.conf,表示在整个硬盘查找 () find /etc -name httpd.conf #在/etc目 ...

  5. Django - 后台admin不显示带auto_now, auto_now_add选项的字段

    https://stackoverflow.com/questions/6386172/datetimefield-doesnt-show-in-admin-system 解决办法 class Rat ...

  6. ubuntu mysql新增用户并开启远程连接

    1.首先用root用户登录mysql mysql -u root -p 输入密码后登录成功 2.新建用户 use mysql; select host,user from user;(查看现有用户) ...

  7. 吴裕雄 python 人工智能——基于Mask_RCNN目标检测(2)

    import os import sys import itertools import math import logging import json import re import random ...

  8. Java 通过身份证获取生日和性别

    /** * 通过身份证号获取生日和性别 * @param identifyNumber * @return */ private String[] getBirthAndSexByIdNo(Strin ...

  9. provide 和 inject高阶使用

    provide 在祖先里授权导出 inject在后代负责接收 foo可以是本组件的函数方法 或者 变量foo 也可以是祖先组件自己 祖先组件foo: this 后代组件 foo.$options.da ...

  10. Top 9 colleges in the world from 2010 to 2020, AI and interdisciplinary areas.

    http://csrankings.org/