2.Alter Table
--添加字段
alter table table_name add column_name varchar2(100);
--修改字段
alter table table_name modify column_name varchar2(50);
--删除字段
alter table table_name drop column column_name;
3.Truncate Table
--快速删除表中内容
truncate table column_name;
--删除表及表结构
drop table column_name;
5.使用TCL事务控制语言
数据存储的逻辑单位是数据块,数据操作的逻辑单位是事务
1.提交
--当我们在插入数据时,只有当我们使用了Commit后,数据才正真插入的数据表中
--此情况只存在与使用SQL*plus时
insert into emp values(207,'张三丰','12-2月-10',90)
--此时以创建一行,我们查询是却看不到
--只有当我们Commit了,才可以看到数据
commit;
2.回滚
--仅限于使用SQL*Plus
--先删除emp表所有数据
delete from emp;
--此时再查询时,emp表中没有数据
--当我们使用rollback回滚后
rollback;
--查询时,数据依然存在
3.回滚部分事务
--删除emp_id为101的员工
delete from emp where emp_id=101;
--设置保存点
savepoint p1;
--再删除emp_id为102的员工
delete from emp where emp_id=102;
--此时使用rollback回滚到p1
6.Orcale中常用函数
在书函数之前,向大家介绍Orcale中的虚拟表dual,它有一行一列,所有者是sys,但可以被所有账户使用。
1.单行函数
(1).日期函数
a.ADD_MONTHS:用于返回指定的日期加上指定的月数后的日期值
--根据dual表获取系统当前时间
select sysdate 当前系统时间 from dual;
--比如当前时间是10-7月-11(2011年7月10日)
select add_months(sysdate,1) 新的日期 from dual;
--则返回新的日期是:10-8月-11(2011年8月10日)
b.MONTHS_BETWEEN:用于返回两个日期之间的月份数
--假设当前系统时间为:10-7月-11
select months_between('10-10月-11',sysdate) 相差的月份 from dual;
--此时可能返回的是一个小数,我们可以使用floor函数取整
select floor(months_between('10-10月-11',sysdate) 相差的月份 from dual;)
c.LAST_DAY:用于返回指定日期对应月份的最后一天
--假设当前时间是:10-7月-11
select last_day(sysdate) 当月的最后一天 from dual;
--此时返回:31(7月的最后一天是31号)
d.NEXT_DAY:用于返回指定下一个星期几的日期
--假设当前时间为10-7月-11(星期日)
select next_day(sysdate,'星期五') next_day from dual;
--返回下个星期五的日期(如果当前时间是星期一,则返回当前星期五的日期)
--上面的SQL语句返回15-7月-11(星期五)
分享到:
相关推荐
Oracle 一次请求执行多条sql语句 在.net 中查询Sql Server 一次请求执行多条sql语句很简单 拼接起来就好了 初次接触oracle 在网上寻找了很多方法终于被我解决了 我把问题想复杂了 例子中提供了2种解决方案 一种...
BLOG_Oracle一次缩小表空间的处理过程.pdfBLOG_Oracle一次缩小表空间的处理过程.pdfBLOG_Oracle一次缩小表空间的处理过程.pdf
本文将深入探讨如何在C#中利用Oracle自带的驱动来实现批处理,以一次执行多条SQL语句。 首先,我们需要了解Oracle的数据驱动,即ODP.NET(Oracle Data Provider for .NET)。这是Oracle公司为.NET开发者提供的一个...
oracle数据库一行拆成多行.sql
在Oracle数据库管理中,权限管理是一项至关重要的任务,它确保了数据的安全性和访问控制的有效性。本文将深入探讨如何在Oracle中将一个用户的所有表的权限授予另一个用户,这一过程通常在PL/SQL环境下通过执行特定的...
redhat 7.6 oracle 11.0.2.4 DataGuard 搭建详细步骤
Oracle统计一天内每小时的数据量。在某小时内有数据,该时间段会被统计出来;该时间段内没有交易,该时间段不会被统计出来,默认为0即可
Oracle左连接返回多条记录中一条记录的查询语句,更具指定条件分组排序,返回各组中第一条记录
开发的时候debug到一条update的sql语句时程序就不动了,然后我就在plsql上试了一下,发现plsql一直在显示正在执行,等了好久也不出结果。但是奇怪的是执行其他的select语句却是可以执行的。 原因和解决方法 这种...
这个文件是用oracle的脚本的如的,往oracle中插入的数据量可能会使用
C#连接Oracle数据库(查询数据)方法,好东西,分享一下
介绍了将多行转为字符串的三种方案,并比较了三种方案的执行效率. 1.sys_connect_by_path + start with ... connect by ... prior + 分析函数 2.自定义Function/SP 3.使用 Oracle 10g 内置函数 wmsys.wm_concat
该函数主要对oracle 中数据表中存在的多选字典值进行翻译
一周循环备份oracle数据库,只用修改链接,设置任务管理器就可以. set oracle_username="l_sys" set oracle_password="123456" set local_tnsname="oradb" 修改以上配置,定时执行即可
Centos7 Oracle19c 一主一备搭建 Oracle 19c 是 Oracle 公司推出的关系数据库管理系统(RDBMS),是目前最流行的数据库管理系统之一。Centos7 是一个基于 Linux 的操作系统,广泛应用于服务器领域。因此,本文将...
Oracle 数据库开发培训中根据某一列的值修改另一列的值 Oracle 数据库是一种关系型数据库管理系统,广泛应用于企业级应用程序中。在 Oracle 数据库中,我们可以使用 update 语句来修改某一列的值根据另一列的值。...
1.查询时间段内执行的sql、Produce select * from v$sqlarea a where 1=1 and a.LAST_ACTIVE_TIME >= to_date( '2013-02-21 18:23:00','yyyy-MM-dd HH24:mi:ss') and a.LAST_ACTIVE_TIME <...
1、实现Python批量数据入库。 2、统一提交事物,保证数据的完整性
oracle存储过程中入参是逗号分隔,并且参数要使用在in过滤语句中查询数据。处理的方法与实现
Oracle 19c是Oracle数据库产品线的最新稳定版本,它提供了一系列的新功能和改进,以支持企业级应用程序。为了使Java开发者能够充分利用Oracle 19c的特性,Oracle发布了与之兼容的JDBC驱动,确保了在新的数据库版本下...