Oracle数据的维护(增删改查)

一、SQL

1.SQL-Structured Query Language 结构化查询语言,数据库的查询和程序设计语言,由ISO标准化组织发布。

2.SQL是面向集合的操作,只描述需求,不考虑过程,如何完成由DBMS负责解决。

3.SQL包括DDL语言和DML语言

①create table 、alter table、drop table和truncate table等属于DDL语言。

②insert、update、delete和select等属于DML语言

二、最常用的运算符和函数

1.算术运算符:+,-,*,/;

2.赋值运算符:  =;

3.字符串连接符: ||;

4.模运算(求余运算)函数:mod(被除数,除数)。

5.逻辑运算符

运算符

含义

AND

连接两个布尔表达式并两者都为TRUE时返回TRUE

OR

连接两个布尔表达式并且其中之一为TRUE时返回TRUE

NOT

对任何布尔表达式取反

IN

操作数等于表达式列表之一时返回TRUE

BETWEEN

操作数在某个范围之内时返回TRUE

LIKE

操作数与字符串模式相匹配时返回TRUE

EXISTS

当查询结果不为空时返回TRUE

三、SQL通配符

字符串通配符 

通配符

含义

%

指定位置有零个或多个字符

_

指定位置有1个字符

示例:

①搜索所有以‘tom’开始的名字,可以指定搜索条件  LIKE ‘tom%’;

②搜索书名中第3个字符为‘k’的记录,可以指定搜索条件 LIKE ‘__k%’;

③搜索地名中包括‘西’的记录,可以指定搜索条件为 LIKE ‘%西%’。

四、select语句

1.select语句是从关系型数据库中提取记录的 SQL 语句,SELECT 语句并不更新表中的任何数据。

2.select语句可以是简单的“select *  from 表名”,从某个表或视图中查询全部记录的全部字段,也可以附加大量的查询子句。

例如:select  [distinct] <结果字段列表> from<表/视图名> 

[where <查询条件>]

[group by<分组字段>]

[having<分组筛选条件>]

[order by <排序字段>[desc|asc]]

[for update]

3.在 select语句的结果字段列表、查询条件以及分组筛选条件中可以使用字段的直接值进行运算,也可以使用列值的计算结果。

五、insert语句

1.insert语句向表中添加一个新行,语法格式如下:

insert into table_or_view [(column_list)]  values(value_list)

2.insert 语句向表中批量添加多个新行,语法格式如下:

insert into table_or_view [(column_list)]   select 子句

3.insert  语句将 一行或多行插入指定的表或视图。column_list 是列名的列表,列名以逗号分隔,用于指定为其提供数据的列。如果未指定 ,表或视图中的所有列都将接收到数据。 当 column_list 未指定表或视图中的所有列时,系统会将默认值(如果为列定义了默认值)或 NULL 插入未在列表中指定的任一列。未在列表中指定的所有列必须允许空值或分配了默认值。 4.insert 语句不指定标识类型列的值,因为 Oracle 数据库实例将为这些列生成值。

六、update语句

1.update语句可以更改表或视图中单行、行组或所有行的数据值。引用某个表或视图的 UPDATE 语句每次只能更改一个基表中的数据 。

update table_or_view set column_name = { expression | DEFAULT | NULL } , column_name = { expression | DEFAULT | NULL } ,  …… where search_condition

2.update语句包括以下主要子句:

①set:包含要更新的列和每个列的新值的列表(用逗号分隔),格式为 column_name = expression。表达式提供的值包含多个项目,如常量、从其他表或视图的列中选择的值或使用复杂的表达式计算出来的值。

②where:指定搜索条件,该搜索条件定义源表和视图中可以为 SET 子句中的表达式提供值的行。

七、delete语句

①delete语句可删除表或视图中的一行或多行,delete 语法形式为:

delete table_or_view   where search_condition

②参数 table_or_view 指定要从中删除行的表或视图。table_or_view 中所有符合 WHERE 搜索条件的行都将被删除。如果没有指定 WHERE 子句,将删除 table_or_view 中的所有行。

③任何已删除所有行的表仍会保留在数据库中。delete语句只从表中删除行,要从数据库中删除表,可以使用 drop table语句。

八、merge语句-合并记录行语句

merge语句利用源表中的数据将目标表中的数据更新,即可以通过设置指定匹配条件,更新或插入的字段。

九、truncate语句

1.truncate语句属于DDL语句

功能:删除表中的所有行,而不记录操作日志。

2.truncate table 在功能上与没有 where子句的 delete语句相同;但是,truncate table速度更快,使用的系统资源和事务日志资源更少。

语法:truncate table table_name

示例:删除全部记录而不记录操作日志 truncate table report.

发布了74 篇原创文章 · 获赞 32 · 访问量 9970

猜你喜欢

转载自blog.csdn.net/qq_41629684/article/details/104412984