oracle数据库逐步学习总结【基础二】
原创作品,转载请在文字开头明显位置注明出处:https://www.cnblogs.com/sunshine5683/p/10067872.html
接着上一篇,继续总结!
五、oracle表管理
首先,在开头说一下sys用户和system用户的区别:sys用户是超级管理员,权限最大,system是系统管理员,权限次之,一般在管理系统时使用system足以。
1、命名规则:
1> 表名必须以字母开头
2> 长度不能超过30字符
3> 不能使用oracle的保留字
4>只能使用A-Z、a-z、0-9、$、#等
2、数据类型:
char:固定大小,占内存,比如char(10)中存放两个字符,那么其余的8个字符就用空字符占用,也在占内存
varchar2:可变大小,占空间小,查询速度相对char慢,比如存放两个字符,其余的位置不占用,也就是只要不超过定义的范围,实际用多少占多少,最大4000个字符
number:可以表示小数,也可以表示整数,大小在-10的38次方到10的38次方
number(3,2):表示一个数有3位有效数字,其中小数位占两位,即-9.99----9.99
number(5):表示一个五位整数,即-99999---99999
date:时分秒
blob:二进制数据,可以存放图片、声音,最大4G
3、建表
新建一张表,语句:

给一个表增加一个字段

修改字段的长度:
alter table student modify(xm varchar2(30));
删除一个字段:
alter table student drop column sal; 该操作风险,注意慎用
修改表名字
rename student to stu;
删除表
drop table student;
查询表;
select * from student;
添加数据:
insert into student values('A001','黎明','男','01-05月-2018','3.03',12); 注意日期格式,默认日月年
修改日期默认格式:
alter session set nls_date_format='yyyy-mm-dd';
这时候insert into student values('A001','黎明','男','01-05月-2018','3.03',12); 语句就会报错,必须改为
insert into student values('A001','黎明','男','2018-05-01','3.03',12);
插入部分字段:
insert into student (xh,xm,sex) values ('A002','jonn','男')
插入空值:
insert into student (xh,xm,sex,birthday) values('A003','marry','男',null);
此时要查询出生日期为null的字段:
select * from student where birthday is null;
查询出生日期不为空的字段:
select * from student where birthday is not null;
修改字段值
update student set sal = sal/2 where sex='男';
修改多字段:
update student set sal=sal/2,classId=4 where sex='男';
删除数据
delete from student ; //删除了所有的记录,表结构保存,进行了写日志,可以快速回复
恢复:在删除之前创建回滚点:savepoint xx;
然后删除数据
然后:rollback回滚,数据恢复完成,但是再删除后还未commit的时候起作用,一旦commit了,就无效了,如下过程


删除表的结果和数据:
drop table student
删除表中的所有记录,表结构还在,不写日志,无法找回(速度快):
truncate table student
六、oracle的表查询(下次继续总结....)
oracle数据库逐步学习总结【基础二】的更多相关文章
- 数据库学习---SQL基础(二)
数据库学习---SQL基础(一) 数据库学习---SQL基础(二) 数据库学习---SQL基础(三) 上篇复习的sql的增删改查,and ,or ,>=, <=,!=等逻辑运算符,还有in ...
- Oracle数据库之PL/SQL基础
介绍PL/SQL之前,先介绍一个图像化工具:Oracle SQL Developer 在oracle的开发过程中, 我们难免会使用第三方开发的软件来辅助我们书写SQL, pl/sql是一个不错的sql ...
- javaWeb项目(SSH框架+AJAX+百度地图API+Oracle数据库+MyEclipse+Tomcat)之二 基础Hibernate框架搭建篇
我们在搭建完Struts框架之后,从前台想后端传送数据就显得非常简单了.Struts的功能不仅仅是一个拦截器,这只是它的核心功能,此外我们也可以自定义拦截器,和通过注解的方式来更加的简化代码. 接下来 ...
- 【Oracle教程资源大合集】Oracle数据库免费学习资源汇总
Oracle的产品非常丰富,各类学习资源也五花八门,本文将介绍Oracle官方的免费教程与风哥整理的Oracle视频教程: 1.Oracle帮助中心 Oracle帮助中心也称为Oracle文档中心,这 ...
- Oracle数据库初级学习 2
今天我们介绍Oracle数据库中剩余的查询方法,今天的查询方法会比昨天的更为复杂一些(PS:我也是个初学者,请见谅..). 一.分组函数 分组函数是为了区分同一个表中的不同数据而建立,其关键字为GRO ...
- oracle数据库管理系统常见的错误(二)
oracle数据库,对于新手来说总会遇到这样的问题: 相信大家都遇到了这样的问题,说实话,我曾经就遇到过这样的问题,但是不好意思问旁边的技术大咖,都有点怀疑人生了,然后自己在网上去查找原因,结果发现, ...
- oracle 数据库的学习1
1.oracle 数据库常用的基本类型 char(10) -->存储固定长度的字符串 varchar2(10)-->存储可变长的字符串 Date INTEGER -->存储整数 N ...
- oracle数据库逐步学习总结【基础一】
原创作品,转载请在文章开头显眼位置注明出处:https://www.cnblogs.com/sunshine5683/p/10059955.html 一.oracle的基本命令 1.连接命令 用法:c ...
- Oracle数据库连接工具的使用(二)
一.SQL Plus介绍 1.简介 Oracle的sql plus是与oracle进行交互的客户端工具.在sql plus中,可以运行sql plus命令与sql语句. 我们通常所说的DML.DDL. ...
随机推荐
- const的详解
1.const的成员变量 常成员变量的值不能被更新,将在构造函数时候进行初始化 2.const的成员函数 常成员函数只能调用常成员函数,常成员函数不能修改任何成员变量的数值 3.const的成员对象 ...
- 栈的实现——java
和C++一样,JDK包中也提供了"栈"的实现,它就是集合框架中的Stack类.关于Stack类的原理,在"Java 集合系列07之 Stack详细介绍(源码解析)和使用示 ...
- Jmeter-正则表达式提取器获取token-小实例
步骤一:在需要获取token的接口上,添加正则表达式提取器 说明: (1) Apply to:应用范围 Main sample and sub-samples:匹配范围包括当前父取样器并覆盖至子取样器 ...
- 使用hex编码绕过主机卫士IIS版本继续注入
本文作者:非主流 测试文件的源码如下: 我们先直接加上单引号试试: http://192.168.0.20/conn.asp?id=1%27 很好,没有报错.那我们继续,and 1=1 和and 1= ...
- webpack快速入门——CSS中的图片处理
1.首先在网上随便找一张图片,在src下新建images文件夹,将图片放在文件夹内 2.在index.html中写入代码:<div id="pic"></div& ...
- 【JavaScript】 js立即执行函数
( function(){…} )()和( function (){…} () )是两种javascript立即执行函数的常见写法,一般理解是一个括号包裹匿名函数,再在后面加个括号调用函数,最后达到函 ...
- 恢复xfs文件系统superblock实验
1. 创建一个XFS文件系统[root@localhost ~]# mkfs.xfs -f /dev/vdb1meta-data=/dev/vdb1 isize=256 ...
- 【xsy1122】 路径 点分治+trie
题目大意:给你一棵n个点的树,树边上有边权,对于每一个点,你要求出经过该点的所有的路径中,路径异或和最大的值. 数据范围:$n≤10^5$,边权$≤10^9$. 我们考虑枚举每一条路径,显然这个是会T ...
- .Net Core 发布WindowsServices
项目代码文件夹 执行命令 dotnet publish -c Release -r win-x64
- 关于MyBatis的工作流程和与JDBC的比较与Hibernate的比较
一.传统的JDBC的方式 1.从一个jdbc程序开始 public static void main(String[] args) { Connection connection = null; Pr ...