DDL       数据定义       建表       建视图 建其他

drop

create table t (a varchar2 (10));可变字符串最大为10

transaction

-----------事务回退语句--------

•      rollback;                      所有语句都回退

•  -----------事务确认语句--------

•      commit;//此时再执行rollback无效

事务(Transaction)一系列操作要么同时完成    要么不完成

updata insert等也算事务事务起始于第一条语句

执行/碰到 DDL  DCL(授权) 语句事务自动提交

当正常断开连接的时候例如exit,事务自动提交。  当非正常断开连接,例如直接关闭dos窗口或关机,事务回滚

char 定长字符串   输入多少都占固定长度 (效率问题,定长效率高<如:数组>)

Number (8,3)  数字8位 小数3 位

Date              日期时间

Long             变长字符串 最长2G

Varchar2        最多4k 4096字节

五个约束条件: 非空 唯一 主键 外键 check

约束条件: 在数据库中算是一个对象

非空:  not null

唯一: unique  不能重复, 可以随意插空值,两个空值不算重复

constraint stu_name_email_uni unique(email, name) (组合约束)

主键: primary key    可以唯一标识整条记录,(语法上:唯一非空的组合)

逻辑,代表单独的每条不同记录,(现实的逻辑)(也可以组合约束)

constraint stu_id_pk primary key (id),

外键:  建立在一张表的两个字段,两个表的两个字段

  被参考字段必须是主键 有子记录不能删(有关联字段)

•  --------------外键约束   被参考字段必须是主键 -------------

   constraint stu_class_fk foreign key (class)references class(id)

修改表结构

•  ---------------修改表结构,添加字段------------------

•      alter table stu add(addr varchar2(29));

•  ---------------删除字段--------------------------

•      alter table stu drop (addr);

•  ---------------修改表字段的长度------------------

•      alter table  stu modify(修改) (addr varchar2(50));

//更改后的长度必须要能容纳原先的数据精度

•  ----------------删除约束条件----------------

•      alter table stu drop constraint  约束名

•  -----------修改表结构添加约束条件---------------

•      alter table  stu add constraint stu_class_fk foreign key(class) references class (id);

数据字典表

Desc user_tables;          当前用户下有多少张表

•       desc dictionary;

•       //数据字典表共有两个字段 table_name comments

•       //table_name主要存放数据字典表的名字

•       //comments主要是对这张数据字典表的描述

---查看当前用户下面所有的表、视图、约束-----数据字典表user_tables---

•      select table_name from user_tables;

•      select view_name from user_views;

•      select constraint_name fromu ser_constraints;

索引

-------------索引------------------

•      create index idx_stu_email on stu(email);

// 在stu这张表的email字段上建立一个索引:idx_stu_email

create index idx_stu_email on stu(email,class);

两个字段组合建索引

---------- 删除索引 ------------------

•      drop index idx_stu_email;

---------查看所有的索引----------------

•      select index_name from user_indexes;

加主键 或唯一约束   自动加索引

索引-读取效率高,插入效率低,访问量大,不轻易建立索引,索引 占据大量空间

视图

-----------创建视图-------------------

视图 是一个子查询

•      create view v$stu as selesct id,name,agefrom stu;

•  视图的作用: 简化查询 保护我们的一些私有数据,通过视图也可以用来更新数据,但是我们一般不这么用缺点:要对视图进行维护(改表结构时,需更新)

创建序列

产生一个唯一的不间断的数字序列 ,一般做主键 一般一个表对应一个

•      create sequence seq;//创建序列

•      select seq.nextval from dual;// 查看seq序列的下一个值

•      drop sequence seq;//删除序列

insert into article values(seq.nextval,'a','b');

DDL(Oracle)的更多相关文章

  1. oracle 12c 新特性之(相同字段上的多重索引、ddl 日志、限制PGA的大小、分页查询)

    1. 相同字段上的多重索引   在Oracle 12c R1之前,一个字段是无法以任何形式拥有多个索引的.或许有人会想知道为什么通常一个字段需要有多重索引,事实上需要多重索引的字段或字段集合是很多的. ...

  2. 锁(lock)和闩(latch)

    开发多用户.数据库驱动的应用时,最大的难点之一是:一方面要力争取得最大限度的并发访问,与此同时还要确保每个用户能以一致的方式读取和修改数据.为此就有了锁定(locking)机制,这也是所有数据库都具有 ...

  3. Report_Report Builder的一些基本概念(概念)

    2014-05-31 Created By BaoXinjian

  4. Oracle获取干净的建表DDL语句,不含其它存储、表空间、段属性

    早上一个同事资讯怎么获取到建表语句而且是不带存储那种SQL.Oracle自己提供了一个函数DBMS_METADATA.GET_DDL,但是获取到的建表语句含有存储.表空间.以及一些其他段的属性.如图: ...

  5. oracle使用dbms_metadata包取得所有对象DDL语句

    当我们想要查看某个表或者是表空间的DDL的时候,可以利用dbms_metadata.get_ddl这个包来查看. dbms_metadata包中的get_ddl函数详细参数 GET_DDL函数返回创建 ...

  6. oracle中DDL DML指什么?

    DDL create table 创建表 alter table 修改表 drop table 删除表 truncate table 删除表中所有行 create index 创建索引 drop in ...

  7. Oracle的DDL、DML、DCL

    DDL (Data Definition Language 数据定义语言) create table 创建表 alter table 修改表 drop table 删除表 truncate table ...

  8. Oracle DBLINK 抽数以及DDL、DML操作

    DB :  11.2.0.3.0 原库实例orcl:SQL> select instance_name from v$instance; INSTANCE_NAME--------------- ...

  9. Oracle language types(语言种类) 表的相关操作 DDL数据定义语言

    数据定义语言 Data Definition Language Statements(DDL)数据操纵语言 Data Manipulation Language(DML) Statements事务控制 ...

随机推荐

  1. jQuery Mobile_简单的爱情故事

    <!doctype html> <html> <head> <meta charset="utf-8"> <meta name ...

  2. Saiku操作界面的简化

    在安装完毕Saiku后,由于是社区版本,所以界面上存在很多升级为商业版的文字.为了使得系统不那么碍眼,可通过如下方式更改来去除相应的内容: 1.去除查询页面的升级为商业版的提示 You are usi ...

  3. mysql 1449 : The user specified as a definer ('root'@'%') does not exist 解决方法

    权限问题,授权 给 root  所有sql 权限 mysql> grant all privileges on *.* to root@"%" identified by & ...

  4. 初识MariaDB存储引擎

    在看MariaDB的存储引擎之前,可以先了解MySQL存储引擎. MySQL常用的存储引擎: MyISAM存储引擎:是MySQL的默认存储引擎.MyISAM不支持事务.也不支持外键,但其访问速度快,对 ...

  5. sql2008读取excel

    环境:win7(64位)+sql2008 sql语句: --启用Ad Hoc Distributed Queries: reconfigure reconfigure --使用完成后,关闭Ad Hoc ...

  6. API文档中,<E>、<T>、<?>分别代表什么意思

    although they are all type parameters, the convention is:E ElementT or S TypeK Key, as in <K, V&g ...

  7. bzoj2734 集合选数

    Description <集合论与图论>这门课程有一道作业题,要求同学们求出{1, 2, 3, 4, 5}的所有满足以 下条件的子集:若 x 在该子集中,则 2x 和 3x 不能在该子集中 ...

  8. android学习笔记39——使用原始资源

    原始资源 android中没有专门提供管理支持的类型文件,都被称为原始资源.例如:声音资源... android原始资源存放位置: 1.res/raw,android SDK会处理该目录下的原始资源, ...

  9. gcc和ld 中的参数 --whole-archive 和 --no-whole-archive

    首先 --whole-archive 和 --no-whole-archive 是ld专有的命令行参数,gcc 并不认识,要通gcc传递到 ld,需要在他们前面加 -Wl,字串. --whole-ar ...

  10. Linux常用命令记录

    产用Linux命令 cat /proc/partitions //查看系统分区情况 fdisk -l /dev/sdb //查看磁盘物理存储 mount /dev/目录 /mnt/目录 //挂载文件 ...