五、操作表

1、表分为行和列
约定:每行数据唯一性,每列数据同类性,每列列名唯一性。
2、数据类型
字符型 -- 固定长度的字符类型
字符类型:CHAR(n)(MAX n=2000)、NCHAR(MAX n=1000)
-- 可变长度的数据类型(节省空间随着数据的大小生成相应的数据)
VARCHAR2(MAX n=4000)、NVARCHAR2(MAX n=2000)
数值型(通常使用number类型):NUMBER(p,s):
p--有效数字,
s--小数点后的位数
如果s为正数,代表从小数点到最低有效数字的位数;
如果s为负数,代表从最大有效数字到小数点的位数(数值型通常采用NUMBER类型)
例子
number(5,2) 有效数字5位,保留2位小数,如:123.12
FLOAT :用于存储二进制类型1~126位
日期型
DATE 日期类型,表示范围为公元前4712年1月1日到公元9999年12月31日,可精确到秒(日期型通常采用DATE型)
TIMESTAMP 时间戳类型,可以精确到秒
其他型
BLOB 可以存放4GB的大文件,以二进制形式存放
CLOB 可以存放4GB的大文件,字符串存放的

3、管理表的操作
创建表:创建用户信息表
例子:
create table userinfo(
user_a_id number(6,0),
user_username varchar2(20),
user_pwd varchar2(20),
user_email varchar2(30),
user_regdate date
);
修改表:修改结构
1、添加字段
例子:
alter table userinfo add user_remarks varchar2(500);

2、更改字段数据类型(最好是表中没有数据的时候进行更改)
更改原有的数据
alter table userinfo modify user_remarks varchar2(400);
更改数据的类型
alter table userinfo modify user_pwd number(6,0);
3、删除字段
alter table userinfo drop column a;
4、修改字段名
alter table userinfo rename column user_username to user_a_username;
5、修改表名
rename userinfo to user_info;
删除表
删除表中的数据,不是删除表,但是速度快
truncate table table_name;
truncate table user_info;
删除表的结构,真实被删除了
drop table user_info;

查看表
desc table_name;
desc userinfo;

4、操作表中的数据
对表的内容进行操作

1、添加数据
insert into userinfo(user_a_id,user_username,user_pwd,user_email,user_regdate) values(1,'xiaobaitu','123456','xiaobaitu@163.com',sysdate);
全添加,可以省略userinfo后边的()
insert into userinfo values(1,'xiaobaitu','123456','xiaobaitu@163.com',sysdate);
不添加全部数据
insert into userinfo(user_a_id,user_username,user_regdate) values(1,'xiaobaitu',sysdate);

为字段添加默认值
创建表时,创建默认值
create table userinfo_a(
userinfo_a_id number(6,0),
userinfo_regdate date default sysdate
);

添加数据
insert into userinfo_a(userinfo_a_id) values(1);

修改表时,添加默认值
alter table userinfo modify user_email default '无';
如果没有添加,email为默认值:
insert into userinfo(user_a_id) values(3);

select user_a_id ,user_email from userinfo;
如果添加了,就会返回添加的值
insert into userinfo(user_a_id,user_email) values(4,'aa');
select user_a_id ,user_email from userinfo;

2、复制表数据
(1)在建表时复制
(a)复制表中的全部数据
create table userinfo_2 as select * from userinfo;
select * from userinfo_2;
desc userinfo_2;
(b)复制表中部分数据
create table userinfo_3 as select user_a_id from userinfo;
select * from userinfo_3;
desc userinfo_3;
(2)在添加数据时复制
(a)添加全部数据(复制的两个表必须结构相同)
create table user_new(
user_a_id number(6,0),
user_username varchar2(20),
user_pwd varchar2(20),
user_email varchar2(30),
user_regdate date
);
insert into user_new select * from userinfo;
(b)添加部分数据(添加时数据类型要相同)
insert into user_new(user_a_id,user_username) select user_a_id,user_username from userinfo;

3、修改数据(更新操作)
(1)无条件更新
update userinfo set user_pwd='111111';
(2)有条件更新
update userinfo set user_pwd='6666' where user_username='xiaobaitu';

4、删除数据(行删除,不能删除列)
创建一个实验用表
create table user_new2 as select * from userinfo;
(1)无条件删除
delete from userinfo_3; 等同于 truncate table userinfo_3;
(2)有条件删除
delete from user_new2 where user_username='xiaobaitu';

Oracle学习笔记(三)的更多相关文章

  1. Oracle学习笔记三 SQL命令

    SQL简介 SQL 支持下列类别的命令: 1.数据定义语言(DDL) 2.数据操纵语言(DML) 3.事务控制语言(TCL) 4.数据控制语言(DCL)  

  2. Oracle学习笔记三

    一.创建表空间 表空间是ORACLE数据库的逻辑单元.数据库--表空间 一个表空间可以与多个数据文件(物理结构)关联一个数据库下可以建立多个表空间,一个表空间可以建立多个用户个用户下可以建立多个表. ...

  3. oracle 学习笔记(三)

    1. SQL(基础查询) 1.1. 基本查询语句 1.1.1. FROM子句 SQL查询语句的语法如下:   SELECT <*, column [alias], -> FROM tabl ...

  4. oracle学习笔记第一天

    oracle学习笔记第一天 --oracle学习的第一天 --一.几个基础的关键字   1.select select (挑选) 挑选出显示的--列--(可以多列,用“,”隔开,*表示所有列),为一条 ...

  5. Oracle学习笔记—数据字典和常用命令(转载)

    转载自: oracle常用数据字典和SQL语句总结 Oracle常用命令大全(很有用,做笔记) 一.Oracle数据字典 数据字典是Oracle存放有关数据库信息的地方,其用途是用来描述数据的.比如一 ...

  6. [Firefly引擎][学习笔记三][已完结]所需模块封装

    原地址:http://www.9miao.com/question-15-54671.html 学习笔记一传送门学习笔记二传送门 学习笔记三导读:        笔记三主要就是各个模块的封装了,这里贴 ...

  7. JSP学习笔记(三):简单的Tomcat Web服务器

    注意:每次对Tomcat配置文件进行修改后,必须重启Tomcat 在E盘的DATA文件夹中创建TomcatDemo文件夹,并将Tomcat安装路径下的webapps/ROOT中的WEB-INF文件夹复 ...

  8. java之jvm学习笔记三(Class文件检验器)

    java之jvm学习笔记三(Class文件检验器) 前面的学习我们知道了class文件被类装载器所装载,但是在装载class文件之前或之后,class文件实际上还需要被校验,这就是今天的学习主题,cl ...

  9. VSTO学习笔记(三) 开发Office 2010 64位COM加载项

    原文:VSTO学习笔记(三) 开发Office 2010 64位COM加载项 一.加载项简介 Office提供了多种用于扩展Office应用程序功能的模式,常见的有: 1.Office 自动化程序(A ...

随机推荐

  1. C#.NET通过Socket实现平行主机之间网络通讯(含图片传输的Demo演示)

    在程序设计中,涉及数据存储和数据交换的时候,不管是B/S还是C/S模式,都有这样一个概念:数据库服务器.这要求一台性能和配置都比较好的主机作为服务器,以满足数目众多的客户端进行频繁访问.但是对于一些数 ...

  2. win7 安装redis服务

    Redis官方是不支持windows的,只是 Microsoft Open Tech group 在 GitHub上开发了一个Win64的版本,项目地址是: https://github.com/MS ...

  3. 黄聪:360、chrome开发插件扩展如何跨域调用其他网站的信息并且显示在扩展、tab中的api

    chrome插件提供了查找tab的api chrome.tabs.get(integer tabId, function callback) 但是出于安全的考虑,tab的属性中没有document 因 ...

  4. iis 在站点中新建虚拟目录站点之后,虚拟目录中的 web.config 与 主站点中的 web.config冲突解决方案

    在虚拟目录站点中增加如下配置即可:<clear/>

  5. webpack和webpack-dev-server安装配置

    本文转载自:https://www.cnblogs.com/xuehaoyue/p/6410095.html 跟着Webpack傻瓜式指南(一)这个教程在安装webpack和webpack-dev-s ...

  6. struts2学习(1)struts2 helloWorld

    一.struts2简介: 二.helloWorld: 1)工程结构: HelloWorldAction.java: package com.cy.action; import com.opensymp ...

  7. php error_log记录日志的使用方法和配置 (日志目录一定要手动创建)

    对于PHP开发者来 说,一旦某个产品投入使用,应该立即将 display_errors选项关闭,以免因为这些错误所透露的路径.数据库连接.数据表等信息而遭到黑客攻击.但是,任何一个产品在投入使用后,都 ...

  8. php错误:Uncaught exception com_exception with message Failed to create COM object

    本文为大家讲解的是php错误:Uncaught exception com_exception with message Failed to create COM object,感兴趣的同学参考下. ...

  9. 磁盘IO计算

    看了篇文章,突然想写点磁盘IO的东西,也算是对磁盘的一点点总结. 以下以理论为主,辅助结合实际情况.不明白这句话的出去. 今年是2018年,目前市场上早已经没有国产的硬盘,以前的长城.易拓早早的被拍死 ...

  10. MySQL与PostgreSQL相比哪个更好?

    网上已经有很多拿PostgreSQL与MySQL比较的文章了,这篇文章只是对一些重要的信息进行下梳理.在开始分析前,先来看下这两张图: MySQL MySQL声称自己是最流行的开源数据库.LAMP中的 ...