Oracle- 表的管理
一、表名和列的命名规则
1、必须以字母开头。
2、长度不能超过30字符。
3、不能使用Oracle的保留字。
4、只能使用如下字符 A-Z,a-z,0-9,$,#等。
二、Oracle支持的数据类型
1、字符型
(1) char
说明:定长,最大2000字符。
例子:char(10),'小寒'前四个字符放'小寒',后添6个空格补全
(2)varchar2(20)
说明:变长,最大4000字符。
例子:varchar(20),'小寒',Oracle分配四个字符,这样可以节省空间。
(3)clob
说明:字符型大对象,最大4G。
2、数字型
(1)number
说明:范围-10的38次方~10的38次方。可以表示整数,也可以表示小数。
(2)number(5,2)
说明:表示一个小数有5位有效数,2位小数。范围-999,99~999.99。
(3)number(5)
说明:表示一个5位整数。范围-99999~99999。
3、日期类型
(1)date
说明:包含年月日和时分秒。
(2)timestamp
说明:这是Oracle 9i对date数据类型的扩展。
4、二进制数据
(1)blob
说明:二进制数据,可以存放图片/声音。最大可以存放4G。
三、怎样创建表
建表
实例:学生表
sql>create table Students (
stuId number(4),
stuName varchar2(20),
stuGender char(2),
stuBirthday date,
stuSalary number(7,2)
);
四、修改表
1、添加一个字段
sql>alter table Students add(classId number(2));
2、修改字段的长度
sql>alter table Students modify(stuName varchar2(30));
3、修改字段的类型/或是名字(不能有数据)
sql>alter table Students modify(stuName char(30));
4、删除一个字段
sql>alter table Students drop column stuSalary;
5、修改表的名字
sql>rename Students to Student;
6、删除表
sql>drop table Students;
五、添加数据
1、所有字段都插入
sql>insert into Students values(1,'Mike','男','01-8月-1993',1232.22);
注意:Oracle中默认的日期格式'dd-mon-yy',dd日子(天),mon月份,yy年,即'08-9月-1992'为1992年9月8日。
修改日期的默认格式:
sql>alter session set nls_date_format='yyyy-mm-dd';
修改后,可以用我们熟悉的格式添加日期类型:
sql>insert into Students values(1,'Mike','男','1993-08-01',1232.22);
2、插入部分字段
sql>insert into Students(stuId,stuName,stuGender) values(1,'Tom','男');
3、插入空值
sql>insert into Students(stuId,stuName,stuGender,stuBirthday) values(1,'Tom','男',null);
六、修改数据
1、改一个字段
sql>updateStudents set stuGender='女'where stuId = 2;
2、修改多个字段
sql>updateStudents set stuGender='男',stuBirthday='09-3月-1992' wherestuId = 3;
3、修改含有null值的数据
sql>update Students set stuGender='女' where stuBirthday is null;
七、删除数据
1、delete from Students;
说明:删除所有记录,表结构还在,写日志,可以恢复的,速度慢。
2、drop table Students;
说明:删除表的结构和数据。
3、truncate table Students;
说明:删除表中的所有记录,表结构还在,不写日志,无法找回删除的记录,速度快。
七、设置还原点和回滚到还原点
1、设置还原点
sql>savepoint a;
2、回滚到还原点
sql>rollbackto a;
转截自:http://www.cnblogs.com/BeautyOfCode/archive/2010/09/15/1826575.html
Oracle- 表的管理的更多相关文章
- ORACLE表空间管理维护
1:表空间概念 在ORACLE数据库中,所有数据从逻辑结构上看都是存放在表空间当中,当然表空间下还有段.区.块等逻辑结构.从物理结构上看是放在数据文件中.一个表空间可由多个数据文件组成. 如下图所示, ...
- Oracle表空间管理
oracle表空间相关常用命令小结: 1.ALTER DATABASE SET DEFAULT BIGFILE TABLESPACE; //修改表空间数据文件类型 2.ALT ...
- oracle 表空管理方式(LMT)、ASSM段管理方式、一级位图块、二级位图块、三级位图块。
今天是2013-12-16,今天和明天是我学习oracle生涯中一个特殊的日子.今天晚上进行了一下表空间管理方式的学习,在此记录一下笔记. 对于oracle数据库最小i/0单位是数据块,最想分配空间单 ...
- oracle 表空间管理
1.创建表空间 03:01:55 sys@ORADB11G> create tablespace TSPITR datafile '/u01/app/oracle/oradata/TSPITR0 ...
- ArcSDE for Oracle表空间管理——暂时(TEMP)表空间
Oracle暂时表空间主要用来做查询和存放一些缓冲区数据.暂时表空间消耗的主要原因是须要对查询的中间结果进行排序. 重新启动数据库能够释放暂时表空间,假设不能重新启动实例,而一直保持问题sql语句的运 ...
- ORACLE表空间管理方式segment和extent
A permanent tablespace contains persistent schema objects. Objects in permanent tablespaces are stor ...
- Oracle 表结构管理
表其实是数据的'容器'.oracle有几种类型的表: 普通表(ordinary table)又叫堆组织表. 聚簇表(clustered table) 分区表(partition table) 外部表( ...
- oracle表的管理
表名和列的命名规则 必须以字母开头: 长度不能超过30字符: 不能使用oracle的保留字: 只能使用如下字符:A-Z,a-z,0-9,$,#等: 数据类型: 字符型: char 定长 ...
- 五、oracle 表的管理
一.表名和列名的命名规则1).必须以字母开头2).长度不能超过30个字符3).不能使用oracle的保留字4).只能使用如下字符 a-z,a-z,0-9,$,#等 二.数据类型1).字符类char 长 ...
- 7. oracle表的管理*
一.表名和列名的命名规则: 1.必须以字母开头 2.长度不能超过30个字符 3.不能使用oracle的保留字 4.只能使用如下字符 A-Z,a-z,0-9,$,#等 二.Oracle数据类型1.字符类 ...
随机推荐
- 再谈 retain,copy,mutableCopy(官方SDK,声明NSString都用copy非retain)
之前一直以为retain就是简单的计数器+1,copy就是重新开辟内存复制对象: 其实不是这样,原来之前的自己独自徘徊于糊涂之中. (官方SDK,对NSString属性的定义都是用copy,而不是re ...
- Vim常用命令手册
这两年工作基本都是用vim,用习惯发现到哪都离不开这玩意. 退出编辑器 :w 将缓冲区写入文件,即保存修改:wq 保存修改并退出:x 保存修改并退出:q 退出,如果对缓冲区进行过修改,则会提示:q! ...
- Shipping Transactions > Error: The action can not be performed because the selected records could not be locked.
Shipping Transactions > Action: Launch Pick Release (B: Go) Error: The action can not be performe ...
- js createElement
http://www.w3schools.com/js/js_htmldom_nodes.asp var child = document.getElementById("p1" ...
- sublime text2卸载和重新安装
很多同学使用 sublime text2 的时候,出现一些奇怪的bug,且重启无法修复. 于是,就会想到卸载 sublime text2 再重新安装. 然而,你会发现,重新安装后,这个bug任然存在, ...
- poj1026Cipher(置换群)
链接 找循环节 然后所有子循环节的最小公倍数就是总的循环节 找结果的时候也按一个个置换来进行转换 不然也TLE #include <iostream> #include<cstdio ...
- POJ 1552 Doubles (C++ STL set使用)
题目: 题意:题意:给出几个正数(2~15个),然后就是求有这些数字的2倍有没有和原先的正数相同的,求出有几个,没有就是0. 分析:水题.用数组解决,开一个数组存正数,另开一个数组用来存这些数的2倍, ...
- Java [leetcode 18]4Sum
问题描述: Given an array S of n integers, are there elements a, b, c, and d in S such that a + b + c + d ...
- hdu 2955 Robberies
Robberies Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total ...
- 【转】Android项目中编译 C的模块
原文网址:http://blog.csdn.net/Harrison_zhu/article/details/4057738 Android编译环境本身比较复杂,且不像普通的编译环境:只有顶层目录下才 ...