Oracle-04:DDL语言数据表的操作
------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥-------------
DDL操作:
--创建学生表
create table student(
sno number(4) not null,
sname varchar2(10) not null,
birthdday date
);
--向student表中添加两个字段
alter table student add(sal number(7,2),wechat varchar2(20));
--修改sname字段的长度
alter table student modify(sname varchar2(20));
--新增性别字段
alter table student add(sax char(2));
--修改字段的名称
alter table student rename column sax to sex;
--给表增加主键约束
alter table student add constraint pk_student_sno primary key(sno);
--给表中的sname增加唯一约束
alter table student add constraint uk_student_sname unique(sname);
--给表中的sex字段增加检查约束
alter table student add constraint ck_student_sex check(sex in('男','女'));
--给表中新增一个年级编号字段
alter table student add(gid number(4));
--创建年级表 主表
create table grade(
gradeId number(4) not null primary key,
gradename varchar2(10) not null
);
--创建外键约束
alter table student add constraint fk_student_grade_gid foreign key (gid)
references grade(gradeId);
------------------------------------------------------
序列有些像mysql的自增列,sqlserver的标识列
--创建序列
create sequence sq_studet_sno --序列的名称
start with 10 --序号的开始数值
increment by 10 --步长 每次序号增长的值
maxvalue 9999999999 --序号的最大值
cycle --nocycle 达到最大值时是否重新开始循环序列号
cache 20 --是否缓存序列号,默认是20个,假如步长是10,缓存20就是200个数,可以用nocache
--修改序列名称
rename sq_student_no to sq_student_sno
--查询创建的序列,系统默认视图
select * from user_sequences;
--使用序列 nextval
select sq_student_sno.nextval from dual;
--查看当前序列的值 currval
select sq_student_sno.currval from dual;
--模拟向grade表中使用序列新增数据
insert into grade(gradeid,gradename)
values(sq_student_sno.nextval,'三年级');
--查询年级
select * from grade;
Oracle-04:DDL语言数据表的操作的更多相关文章
- Oracle-06:DML语言数据表的操作
------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 开篇放上一个SQL脚本,供测试使用 create table DEPT ( deptno ) not null ...
- Oracle数据库 — DDL:数据定义语言
1.数据定义语言:用于定义数据库的结构,比如创建.修改或删除数据库对象: 包括: CREATE TABLE:创建数据库表:创建表的命名规则: 2.以字母开头:在 1–30 个字符之间:只能包含 A–Z ...
- socketserver模块、MySQL(数据库、数据表的操作)
一.socketserver实现并发 基于tcp的套接字,关键就是两个循环,一个链接循环,一个通信循环. socketserver模块中分两大类:server类(解决链接问题)和request类(解决 ...
- (Oracle)已有数据表建立表分区—在线重定义
今天在做数据抽取的时候,发现有一张业务表数据量达到了5000W,所以就想将此表改为分区表.分区表的有点如下: 1.改善查询性能:对分区对象的查询可以仅搜索自己关心的分区,提高检索速度.2.增强可用性: ...
- Oracle 11g系列:数据表对象
Oracle数据库的下一层逻辑结构并非数据表,而是表空间.每个数据表都属于唯一的表空间. 1.Oracle表空间 与数据表相同,Oracle表空间是一个逻辑对象,而非物理对象,是数据库的组成部分.当使 ...
- MySQL学习3 - 数据表的操作
本节掌握 一.存储引擎(了解) 二.mysql支持的存储引擎 1.InnoDB 存储引擎 2.MyISAM 存储引擎 3.NDB 存储引擎 4.Memory 存储引擎 5.Infobright 存储引 ...
- Oracle通过PLSQL进行数据表之间的同步
昨天被要求拉取第三方oracle中的一个表数据,起初以为要导出表数据,然后再自己库中建个相同的表,然后导入数据,查过资料之后oracle可以通过dblink的方式同步表数据. 1.首先利用PLSQL工 ...
- MySQL数据表查询操作
准语法结构:编写DQL时一定要严格按照此语法的顺序来实现!/* SELECT [ALL | DISTINCT] ALL表示查询出所有的内容 DISTINCT 去重 {* | 表名.* | 表名.字段名 ...
- MySQL第五个学习笔记 该数据表的操作
MySQL在创建表,创建.frm文件保存表和列定义.索引存储在一个.MYI(MYindex)且数据存储在有.MYD(MYData)扩展名的文件里. 一.用SHOW/ DESCRIBE语句显示数据表 ...
随机推荐
- netstat 的10个基本用法(转)
本文转载自一译作. *注:netstat即network state缩写. Netstat 简介 Netstat 是一款命令行工具,可用于列出系统上所有的网络套接字连接情况,包括 tcp, udp 以 ...
- java http缓存
HTTP/1.1中缓存的目的是为了在很多情况下减少发送请求,也即直接返回缓存:同时在许多情况下可以不需要发送完整响应.前者减少了网络回路的数量,挺高响应速度,HTTP利用一个"过期(expi ...
- Git错误一例
Bitbucket一直不稳定,push, pull经常失效.幸好还有goagent可以用. 把git的全局配置改为走goagent代理,可以正常使用: [http] proxy = http://12 ...
- 【Android 应用开发】Android之Bluetooth编程
Android Bluetopth 编程大牛文章 http://my.oschina.net/u/994235/blog?catalog=313604 ViewGroup 相关资料 : http:// ...
- HBase快照
CDH是Cloudera的完全开源分布式Apache Hadoop及相关项目(包括Apache HBase).CDH的当前版本(4.2)引入的一个HBase新特性最近加入到了主干中,允许用户对指定表进 ...
- 开源项目AndroidReview学习小结(2)
读书破万卷下笔如有神 作为入门级的android码农的我,还是需要多多研读开源代码 下面继续接着上一篇的分析,这一篇主要介绍第一个tab,ReviewFragment的分析,界面看起来简单,背后的逻辑 ...
- 如何使用firefox适用于javascript的debugger命令
首先安装firebug,在firefox的扩展里搜索安装即可. 然后在页面中启用firebug中的脚本: 然后在网页某些位置加入debugger命令,比如如下页面代码: <!DOCTYPE ht ...
- RHEL 6.9 udev 将lv绑定raw devices
环境 RHEL6|RHEL7,LVM2,RAW device 用途 使用LVM的lv逻辑卷绑定裸设备 1. 编辑 /etc/udev/rules.d/60-raw.rules 添加如下: ACTION ...
- 分割url
$(document).ready(function () { var spurl = document.location.toString().split("/"); //把ur ...
- 排序算法入门之快速排序(java实现)
快速排序也是一种分治的排序算法.快速排序和归并排序是互补的:归并排序将数组分成两个子数组分别排序,并将有序的子数组归并以将整个数组排序,会需要一个额外的数组:而快速排序的排序方式是当两个子数组都有序时 ...