Oracle数据库的增删改操作介绍
前面的博文介绍了Oracle的简单查询操作,博客地址:http://blog.csdn.net/weixin_36380516/article/details/65935879
这里再对Oracle的更新操作即Oracle的增删改操作进行简单的介绍
首先要掌握对表结构的基本操作。
增加字段:
alter table 表名 add(字段名 字段类型和长度)
alter table table_name add(one_column varchar2(10));
一次增加多个字段的话,每个字段直接以,分开。
例如:
alter table table_name add(one_column varchar2(10),two_column varchar2(5),....);
删除字段:
alter table 表名 drop(字段名)
alter table table_name drop(one_column);
一次删除多个字段,要在括号中,每个字段以,分开。
例如:
alter table table_name drop(one_column,two_column,...)
修改字段名:
alter table 表名 rename column 旧字段名 to 新字段名
alter table table_name rename column old_column to new_column;
修改字段类型或者长度:
alter table 表名 modify 字段名 字段类型 (字段长度)
alter table table_name modify column_name varchar (10);
查看表结构:
desc 表名;
对表中数据的操作是重点。
新建一个test表,以此表为例,进行更新操作
create table test( id number, name varchar2(20), age number(2) );
插入数据操作:
1,insert into 表名 values (所有列的值);
2,insert into 表名 (列) values(对应列的值);
insert into test values(1,'熊九天',20);
insert into test(name,age) values('大熊',20);
两种插入操作中,推荐使用第二种。
删除数据操作:
delete from 表名 where 条件
delete from test where id = 1;
删除所有数据:
delete from test
delete方法删除数据,删除的时候会记录日志,commit之前,被删除的数据是可以恢复的,由于删除之前要进行日志的记录,所以这种删除速度较慢。
truncate table 表名;
truncate删除方式不会记录日志,属于永久删除,数据不能恢复,删除速度会很快。这种删除不会影响表的结构。
drop table 表名;
删除所有数据,连同表的结构,一并删除,数据无法恢复,也不会记录日志,删除速度很快。
修改数据操作:
update 表set 列 = 新的值[where 条件] ;
更新满足条件的记录。
update test set name='熊九天2号' where name='熊九天'
Oracle数据库中主要几种数据类型我们应该掌握:
varchar2(n):表示定义的是字符串,n表示的是字符串的最大长度
number(n):表示定义为整数,其中n表示的是整数的最大长度
number(n,m):表示最长有n位,小数为最长可以为m位,整数为最长可以有n-m位。
date:表示的是日期时间的数据类型
clob:表示的是大文本字段,最多可以保存4G大小的文字信息
blob:表示的是二进制数据,可以保存文本、文档、音乐、图片、视频等等,最多也是4G的大小
oracle 数据库 数据表的5个约束类型:
1,主键约束:用来唯一标示表中的一个列,一个表中的主键约束只能有一个,但是可以在一个主键约束中包含多个列,也称为联合约束。
主键约束= 唯一约束+非空约束,在创建数据表的时候可以通过primary key进行设置。
2,外键约束:用来约束两个表中列之间的关系。
语法格式:
CONSTRAINT constraint_name FOREIGN KEY (column_name)REFERENCE table_name (column_name)ON DELETE CASCADE
[语法说明:]
CONSTRAINT:创建约束的关键字
FOREIGN KEY:外键约束的关键字
REFERENCE:引用外表的关键词
table_name:需要引用的外表,column_name表示该表的列。
举例:创建BOOKINFO表,带一个外键约束,约束名称为"FK_PUBLISH"。相关列为publish,该外键和PUBLISHINFO表中的publishid列相关联。
create table bookinfo
(bookid int,bookname char,publish varchar2(20),pubdate varchar2(20),price decimal,author char,store int,reader int,remarks varchar2(50),constraint fk_publish foreign key(publish) references publishinfo(publishid) on delete cascade
);
3,唯一约束:用来唯一标示表中的列。与主键约束不同的是,在一个数据表中可以有多个唯一约束。
语法格式:
CONSTRAINT constraint_name UNIQUE(column_name)
【语法说明】
UNIQUE:唯一约束的关键词
column_name:唯一约束的名称。
举例:创建BOOKINFO表时,为图书名称(BOOKNAME)列添加唯一约束
create table bookinfo
(bookid int,bookname char,publish varchar2(20),pubdate varchar2(20),price decimal,author char,store varchar2(1),reader int,remarks varchar2(50),CONSTRAINT UN_BOOKNAME UNIQUE (bookname)
);
4,检查约束:用来约束表中列的输入值得范围,比如在输入性别时,要求数据库中只能输入男或者女,就可以使用检查约束来约束该列。
语法格式:
CONSTRAINT constraint_name CHECK(condition)
[语法说明:]
CONSTRAINT:关键词
constraint_name:约束名称
condition:约束条件
举例:创建BOOKINFO表时,给图书价格加上一个检查约束,要求图书价格在10元到100元之间。
CREATE TABLE BOOKINFO
(BOOKID INT,BOOKNAME CAHR,PUBLISH VARCHAR2(20),PUBDATE VARCHAR2(20),PRICE DECIMAL,AUTHOR CHAR,STORE VARCHAR2(1),READER INT,REMARKS VARCHAR2(50),CONSTRAINT CK_PRICE CHECK(PRICE>=10 AND PRICE <= 100)
);
5,非空约束:约束该列一定要输入值。
非空约束的概念就是指一个字段上的内容不能为null,如果要制定非空约束,只需要在创建表的时候加上 not null。
举例:在创建BOOKINFO表时,给图书名称加上一个非空约束。
CREATE TABLE BOOKINFO
(
BOOKID INT NOT NULL,
BOOKNAME CHAR NOT NULL,
PUBLISH VARCHAR2(20),
PUBDATE VARCHAR2(20),
PRICE DECIMAL,
AUTHOR CHAR,
STORE VARCHAR2(1),
READER INT,
REMAERKS VARCHAR2(50)
);
这下,我们对表结构的操作,以及对表中数据的操作有了一个大概的认识,同时也了解了Oracle中的几种主要数据类型和五种约束类型。
Oracle数据库的增删改操作介绍相关推荐
- MySQL——数据库的增删改操作
数据库的增删改操作 数据库的增操作 数据库的增操作主要涉及数据库的增加.数据表的增加.表记录增加以及表字段增加等.数据库的增加非常简单,就是新创建一个数据库:表记录的增加指的就是新增表的数据行,可以是 ...
- java连接oracle增删改查,java连接oracle数据库实现增删改查
package com; import java.sql.*; import java.util.Scanner; public class testOracle { static final Str ...
- 【接口测试】Day5-使用pymysql库对mysql数据库进行增删改查操作
目录 今日目标 一.数据库介绍 二.数据库基本操作 1.安装 2.操作流程(重点) 1. 创建连接 2. 获取游标 3. 执行sql 4. 关闭游标 5. 关闭连接 3.数据准备 4.数据库基本操作 ...
- php修改数据库字段内容,php对数据库的增删改查操作
在我看来数据库是个既复杂又高深莫测的东西,但百分之八十左右的程序员都不需要去精通他,对于我们前端开发来说,只要会数据库的增删改查语句就差不多了.首先我们来说说sql的增删改查语句. 一.增删改查 插入 ...
- shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查)
shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查)Shell脚本与MySQL数据库交互(增删改查)# 环境准备:安装mariadb 数据库 [root ...
- PHP操作MySQL数据库(连接、增删改操作)
MySQL 是跟 PHP 配套使用的最流行的开源数据库系统,我们知道MySQL是PHP的最佳搭档,下面是系统的总结PHP与MySQL联合使用的方法.主要是使用MySQL扩展,下面就通过归纳总结来提升. ...
- 第一节: 结合EF的本地缓存属性来介绍【EF增删改操作】的几种形式
一. 背景 说起EF的增删改操作,相信很多人都会说,有两种方式:① 通过方法操作 和 ② 通过状态控制. 相信你在使用EF进行删除或修改操作的时候,可能会遇到以下错误:" The obj ...
- mysql 编辑数据库内容_详解mysql数据库增删改操作
插入数据 insert into 表名(列名1,列名2,列名3) values(值1,值2,值3); insert into user(user_id,name,age) values(1,'nice ...
- JDBC-03:PreparedStatement如何实现对数据库的增删改查操作
文章目录 一.使用PreparedStatement实现CRUD操作 (1)使用PreparedStatement实现增删改操作 1.PreparedStatement介绍 2.实现数据库的添加操作 ...
最新文章
- 开源sk-dist,超参数调优仅需3.4秒,sk-learn训练速度提升100倍
- 万物之始正则表达式全解析三部曲(中篇)-正则表达式运算符优先级及匹配规则
- JavaScript实现rabin-karp算法(附完整源码)
- 无招胜有招之Java进阶JVM(三)内存模型
- mysql根据经纬度搜周边_mysql根据经纬度获取附近的商家
- 对 makefile 中 $(MAKE) 的学习体会
- ffmpeg 命令画中画效果
- 前端学习(2248)git是怎么运作的
- mysql数字连接,MySQL - 已达到数字连接
- 前端为什么要工程化?
- 为什么派生的子类报错不能实例化抽象类_C# 接口与抽象类实例分析
- 计算机课数据排序与筛选ppt,《EXCEL 数据排序与筛选》教学设计
- 整合ecshop与discuz论坛
- 通常所说的微型计算机的主机主要包括(),微型计算机的主机主要包括
- 从技术新趋势到云原生应用开发,云计算下一个十年将走向何方
- php添加数据数据库乱码,php添加数据数据库乱码
- STM8在STVD下开发所需的中断向量表模版
- 数位笔的笔芯磨损到什么程度需要更换?压感笔笔芯怎么更换?
- LED灯亮灭模拟小星星第一句
- 该网页无法访问未连接上服务器是什么意思,浏览器打不开该网页,因为无法连接到服务器...
热门文章
- 荣耀赵明评苹果发布会掉队5G:意料之中 情理之外
- 芯片人才平均薪资近万元 2020年芯片人才缺口超30万
- 探探被安卓市场下架 官方回应:深入开展整改
- 特斯拉最廉价车型——基础版Model 3将取消网售
- 都安排上了!春晚主持阵容、春晚直播平台、春晚餐桌C位
- malloc()与 alloc()区别(转)
- vscode如何添加头部注释、作者注释
- mpu6050 z轴校准_大渡口区上门校正检定量具外校-第三方检测计量出校准证书
- Qt实践录:非窗体代码片段
- 【kafka】Group coordinator xx is unavailable or invalid, will attempt rediscovery