DDL(数据定义语言)
1.Oracle中常见的数据类型分类:(A)
1.number(x,y) 数字类型,x表示最大长度,y表示精度
对应java中除char外所有基本数据类型(byte、short、int、long、float、double、boolean)
2.varchar2(x) 可变字符串,x表示最大长度。对应java中String
3.char(x) 定长字符串,x表示最大长度。 对应java中String
4.long 长字符串,最大2G。对应java中String
5.Date,日期(年月日时分秒)对应java.sql.Date和java.sql.Time
6.TIMESTAMP 时间戳,精确到微秒 对应javal.sql.Timestamp
2.DDL的概念:(C)
数据定义语言DDL( Data definition language ):是SQL语言的一个分类,用于对数据库对象(表、视图、序列等)进行创建、修改、删除等操作。
通过以下几个关键字实现:
CREATE(新建)、 ALTER(修改) DROP(删除) RENAME(重命名) TRUNCATE(截断)
3.create关键字:(A)
3.1 作用:
用于创建数据库对象(表、视图、序列等)。
3.2 语法:
语法1:create table 表名(列1 数据类型, 列2 数据类型,...,列N 数据类型)
例:
--直接创建一张新的表
create table t_user (id number,username varchar2(30),password varchar2(30));
语法2:create table 表名 as 子查询
例:
--创建一个表查询结果的复制表
--因为where条件1=2始终不成立,所以只复制表结构
create table t_emp as (select * from emp where 1=2);
--如需复制整张表不写where子句即可
4.alter 关键字:(A)
4.1 作用:
用于修改数据库对象(表、视图、序列等)。
4.2 语法:
alter table 表名 [modify/add/drop] (列 数据类型)
modify:修改/add:增加/drop:删除
例:
--modif 一般用于修改列的数据类型或长度
alter table t_emp modify (ename varchar2(10)); --add 用于添加列
alter table t_emp add(phone varchar2(11)); --drop 用于删除列,因为删除不用管数据类型,所以不用指定数据类型
alter table t_emp drop(phone);
5.drop 关键字
5.1作用:
用来删除数据库的对象(表,视图,序列,索引等)
5.2语法:
drop table 表名
例:
drop table t_emp;
6.视图:(B)
6.1 概念:
视图(view),也称虚表, 不占用物理空间,这个也是相对概念,因为视图本
身的定义语句还是要存储在数据字典里的。视图只有逻辑定义。每次使用
的时候, 重新执行调用视图定义语句中的SQL语句。
6.2 作用:
将一些查询复杂的SQL语句变为视图,便于查询。
6.3 语法:
create [or replace] view v$_name
as 子查询
[with read only]
or replace:覆盖原有视图,一般不添加
with read only:只读,一般建议添加
6.4需要注意的点:
1.视图也可以从视图中产生
2.我们把用于产生视图的表称之为基表
3.我们对视图进行数据修改就是对基表进行数据修改,反之亦然
4.不能对多张表的数据,通过视图进行修改。
7.序列(B)
7.1 概念:
序列是oracle中专有的对象,它用来产生一个自动递增的数列。
7.2创建序列的语法:
create sequence 序列名
increment by n --每次递增n
start with m --从m开始
例:
--从1开始每次递增1
create sequence seq_emp_temp
increment by 1
start with 1
7.3 使用序列:
序列名.nextval :下一个值
序列名.currval : 当前值
例:
insert into emp_temp(empno) values(seq_emp_temp.nextval)
DDL(数据定义语言)的更多相关文章
- oracle学习笔记(三) DCL 数据控制语言与 DDL 数据定义语言
DCL 数据控制语言 Data control language 之前说过的授权和收权利语句 grant, revoke DDL 数据定义语言 Data define language create ...
- sql 两大类 DDL数据定义语言 和DCL数据控制语言
SQL分为五大类: DDL:数据定义语言 DCL:数据控制语言 DML:数据的操纵语言 DTL:数据事务语言 DQL:数据查询语言. DDL (date definition lang ...
- Hive 官方手册翻译 -- Hive DDL(数据定义语言)
Hive DDL(数据定义语言) Confluence Administrator创建, Janaki Lahorani修改于 2018年9月19日 原文链接 https://cwiki.apache ...
- mysql DDL数据定义语言
DDL数据定义语言 本节涉及MySQL关键字:create.alter(rename,add,chang,modify,drop).drop.delete.truncate等. -- 创建表:-- 数 ...
- DDL数据定义语言
DDL数据定义语言 (一)概述 DDL(Data Definition Language):数据定义语言,用来定义数据库对象,库.表.列等:创建.删除.修改 库,表结构.主要分为操作数据库的DDL和操 ...
- Oracle language types(语言种类) 表的相关操作 DDL数据定义语言
数据定义语言 Data Definition Language Statements(DDL)数据操纵语言 Data Manipulation Language(DML) Statements事务控制 ...
- 【MySQL】DDL数据定义语言的基本用法create、drop和alter(增删改)
DDL 的基础语法 文章目录 DDL 的基础语法 对数据库进行定义 对数据表进行定义 创建表结构(数据表) 设计工具 修改表结构 小结 参考资料 简单复习一波 SQL必知必会 DDL 的英文全称是 D ...
- DDL 数据定义语言
目录 创建数据库(CREATE) 删除数据库(DROP) 修改数据库(ALTER) 创建数据表(CREATE) 数据表的数据属性 数据类型属性(Type) 其他属性(Null,Key,Default, ...
- MySQL之DDL数据定义语言:库、表的管理
库的管理 常用命令 #创建库 create database if not exists 库名 [ character set 字符集名]; create database if not exists ...
- ODPS SQL <for 数据定义语言 DDL>
数据定义语言:(DDL) 建表语句: CREATE TABLE [IF NOT EXISTS] table_name [(col_name data_type [COMMENT col_comment ...
随机推荐
- Robot Framework自动化_Selenium2Library 关键字
Robot Framework自动化_Selenium2Library 关键字 培训老师:肖能尤 2016/06/12 课程目的 一.Robot framework Selenium2Library ...
- vue的生命周期钩子
生命周期过程: new vue() :vue实例进行初始化,读取所有生命周期函数,并没有执行(不会调用) beforeCreate():创建前,读取属性,计算属性,添加set/get,读取watch ...
- C# 插入、删除Excel分页符
引言 对Excel表格设置分页对我们预览.打印文档时是很方便的,特别是一些包含很多复杂数据的.不规则的表格,为保证打印时每一页的排版美观性或者数据的前后连接的完整性,此时的分页符就发挥了极大的作用.因 ...
- List数组和集合相互转换
1.List的toArray()方法用于将集合转换成数组,但实际上改方法是在Collection中定义的,所以所有的集合都具备这个功能, 其有两个方法:Object[] toArray() 和 ...
- onCreate和onStart谁的开销大?
大家都知道,onCreate方法在创建的时候开始调用一些方法来获取资源方面的东西,这个是在程序运行之初才执行的,一个完整的生命周期中,它只执行了一次,不被onDestroy掉,就一直不调用,而onSt ...
- 关于二叉查找树的一些事儿(bst详解,平衡树入门)
最近刚学了平衡树,然后突发奇想写几篇博客纪念一下,可能由于是刚学的缘故,还有点儿生疏,望大家海涵 说到平衡树,就不得不从基础说起,而基础,正是二叉查找树 什么是二叉查找树?? 大家观察一下下面的这棵二 ...
- 【数据结构】B-Tree, B+Tree, B*树介绍
[摘要] 最近在看Mysql的存储引擎中索引的优化,神马是索引,支持啥索引.全是浮云,目前Mysql的MyISAM和InnoDB都支持B-Tree索引,InnoDB还支持B+Tree索引,Memory ...
- 常用的HTML富文本编译器UEditor、CKEditor、TinyMCE、HTMLArea、eWebEditor、KindEditor简介
1.UEditor UEditor是由百度web前端研发部开发所见即所得富文本web编辑器,具有轻量,可定制,注重用户体验等特点,开源基于BSD协议,允许自由使用和修改代码... 主要特点: 轻量级: ...
- java之集合Collection 详解之4
package cn.itcast_04; public class Student { private String name; private int age; public Student() ...
- [Python]range与xrange用法对比
[整理内容]具体如下: 先来看如下示例:>>>x=xrange(0,8)>>> print xxrange(8)>>>print x[0]0> ...