DDL语言包括数据库对象的创建(create)、删除(drop)和修改(alter)的操作

1.创建表语法

create table table_name(

column_name datatype  [null | not null],

column_name datatype  [null | not null],

..........

[constraint]

)

constraint 是为表中的列设置约束,常见的有主键约束、外键约束、检查约束等等。

示例:创建productionfo 表

CREATE TABLE productionfo(
productId VARCHAR2(10),
priductName Varchar2(20),
prioducePrice NUMBER(8,2),
productName NUMBER(10),
productType VARCHAR2(10),
origin VARCHAR2(10)

)

对表的操作

1.删除表

drop table productionfo

2.清空表的数据

truncate table productionfo

3.修改表名

Alter table tableName  rename to  newTableName  语法结构

Alter table productionfo rename to production

4.修改列明

alter table productionfo rename  column productType to type

5.修改列的类型

alter table productionfo modify productType varchar(30)

6添加列

Alter table productionfo add miaoshu varchar2(20)

7.删除数据表一列

Alter table productionfo drop column miaoshu 

8.添加注释

comment on  column 表名.字段名 is '注释内容'  语法

comment on column productionfo productType is '产品类型'

二.约束

oracle 数据库约束 ,主键约束、外键约束、唯一约束、检查约束、非空约束。

1.主键约束

  主键约束每一个表中只有一个添加方式有两种:

     创建表时添加 crreate table tableName(

column datatype  primary key

      .........

      )

使用constraints 关键字添加

语法:alter table tableName  add constraints pk_productId  primary key (productid)

示例:ALTER TABLE productionfoo ADD CONSTRAINTS pk_productid PRIMARY KEY(productid)

特点:该表productid 这一列数据不能重复也不能为空

1.1 移除主键约束

  alter table production drop constraints pk_productid             -------pk_productid  是添加主键时的名字。

2.外键约束

  外键约束可以保证使用外键约束的数据表列与所运用的主键约束的数据列一致,外键约束可以再同一表中添加多个  

语法:alter table table1add constraint  fk_name(外键名称) foreign key (要设为外键的列名) references table2(columnName)(与哪个表有关联表2中该列列名);

3.检查约束--check约束

  check约束是检查约束,能规定每一个列能输入的值,以保证数据的正确性

  添加方式:创建表的时候

 CONSTRAINT constraint_name CHECK (column_name condition)
如:constraint constraint_productId  check(productId <100)
修改表的时候添加 add constraint constraint_name check(column condition)
4.UNIQUE 约束 唯一性约束
可以设置表中输入的字段都是唯一的。
CONSTRAINT constraint_name UNIQUE(column_name)
5.NOT NULL 约束
创建表的时候直接在字段后边添加 not null 关键字即可
修改表时:alter table table_name modify column not null;
 

  

oracle 数据定义语言(DDL)语法的更多相关文章

  1. MySQL之数据定义语言(DDL)

    写在前面 本文中 [ 内容 ] 代表啊可选项,即可写可不写. SQL语言的基本功能介绍 SQL是一种结构化查询语言,主要有如下几个功能: 数据定义语言(DDL):全称Data Definition L ...

  2. <MySQL>入门三 数据定义语言 DDL

    -- DDL 数据定义语言 /* 库和表的管理 一.库的管理:创建.修改.删除 二.表的管理:创建.修改.删除 创建:create 修改:alter 删除:drop */ 1.库的管理 -- 库的管理 ...

  3. ODPS SQL <for 数据定义语言 DDL>

    数据定义语言:(DDL) 建表语句: CREATE TABLE [IF NOT EXISTS] table_name [(col_name data_type [COMMENT col_comment ...

  4. 30441数据定义语言DDL

    数据定义:指对数据库对象的定义.删除和修改操作. 数据库对象主要包括数据表.视图.索引等. 数据定义功能通过CREATE.ALTER.DROP语句来完成. 按照操作对象分类来介绍数据定义的SQL语法. ...

  5. SQLite基础-4.数据定义语言(DDL)

    目录 一.创建数据库 1. 创建方式 2. 数据库命名规范 二. 创建表 1. 基本用法 2. 数据表命名规范 3. 字段命名规范 三. 删除表 一.创建数据库 1. 创建方式 在第二章中我们讲了如何 ...

  6. mysql数据定义语言DDL

    库的管理 创建 create 语法:create database 库名 [character set 字符集] # 案例:创建库 create database if not exists book ...

  7. 【MySQL笔记】数据定义语言DDL

    1.创建基本表   create table <表名> (<列名><数据类型>[列级完整性约束条件]                                 ...

  8. mysql数据库-mysql数据定义语言DDL (Data Definition Language)归类(六)

    0x01 创建数据库并指定字符集和排序规则 -- 三种实例写法 create database temptab2 character set utf8 collate utf8_general_ci; ...

  9. SQL语句整理(二) 数据定义语言DDL

    前言: 这是我学数据库时整理的学习资料,基本上包括了所以的SQL语句的知识点. 我的教材是人大王珊老师的<数据库系统概论>. 因为是手打的,所以会用一些细节打错了,但都挺明显也不多(考完试 ...

随机推荐

  1. 页面跳转、URL直接访问限制

    问题 URL控制是为了避免以下错误 当前页需要读取上一页缓存,但是当前页直接通过URL访问无法获得相应的缓存 当前页需要通过入口,清楚历史中保留的缓存,但是当前页直接通过URL访问没有清除 本质上是为 ...

  2. PHP等值判断中,常量与变量在左在右的区别

    在平时写代码过程中,经常会用到判断变量与常量相等的情况,比如if($a==1){…..} 或者if(1==$a) ,从执行效率上来说,1==$a比 $a==1的效率更高. 这个写法的另一个好处,当使用 ...

  3. [原创]标记下Kendo使用中的问题, 持续更新中ing.....

    使用kendo UI 遇到的问题: 1. Kendo DropdownList 加载完毕后, 显示 [object object]的问题: 解决: 尝试了添加dataTextField.dataVal ...

  4. 吴裕雄 python深度学习与实践(17)

    import tensorflow as tf from tensorflow.examples.tutorials.mnist import input_data import time # 声明输 ...

  5. 这可能是史上最全的windows10装ubuntu双系统教程

    一. 先搞清楚自己电脑的类型: A  MBR传统bios+单硬盘 B  MBR传统bios+双硬盘(SSD固态硬盘+机械硬盘) C  UEFI新式bios+单硬盘 D  UEFI新式bios+双硬盘( ...

  6. python day11 函数(第三篇)

    2019.4.11 S21 day11笔记总结 1. 函数小高级 ( 5* ) 1 函数名可以当作变量来使用 def func(): print(123) v1 = func # func代表函数的地 ...

  7. 教师派day1

    终于决定好要冲刺了. 昨天开了一个短会,又详细分配了一下任务. 问题是:我的android装了好久好久才可以用~ 今天要把android里的各个文件.控件搞清楚.

  8. 第二次oo博客作业--多线程电梯

    这次的系列作业是写一个电梯调度,主要目的是让我们熟悉多线程. 第一次作业是一个傻瓜电梯的调度问题,要求也很简单,即每次接一个人就行了.我只用了两个线程,一个是输入线程,一个是电梯线程,输入线程负责从标 ...

  9. 从裸机到实时操作系统RTOS

    最近有点闲,公司新年过后一直没有项目,手头上维护的两个程序也比较稳定. 想起来去年做的商业时钟,做了一半,销售反馈回来说,市场不明朗,不建议往下开展,就搁置了,趁着现在有空,把他捡起来. 原来的代码都 ...

  10. 16. 3Sum Closest (JAVA)

    Given an array nums of n integers and an integer target, find three integers in nums such that the s ...