Welcome 微信登录

首页 / 数据库 / MySQL

Oracle中RAISE异常详解

Oracle中RAISE异常详解

由三种方式抛出异常 1. 通过PL/SQL运行时引擎 2. 使用RAISE语句 3. 调用RAISE_APPLICATION_ERROR存储过程 当数据库或PL/SQL在运行时发生错误时,一个异常被PL/SQL运行时引擎自动抛出。异常也可以通过RAISE语句抛出 RAISE exception_name; 显式抛出异常是程序员处理声明的异常的习惯用法,但RAISE不限于声明了的异常,它可以抛出任何任何异常。例如,你希望用TI...
Oracle查询中rownum与Order by查询的关系(取数据的前几条)

Oracle查询中rownum与Order by查询的关系(取数据的前几条)

在开发应用的时候,把数据按照一定的规则排序后再取前几条数据这种操作是很平常的事情。我们在Oracle中常用的就是order by,然后取得rownum小于多少的数据这种方法。不过如果对Oracle不熟悉,也许就会发现你写的SQL语句检索出来的值不正确,这个是为什么呢.因为Oracle在检索的时候,会首先把数据都检索出来,然后在排序段中进行排序(也就是说,先有rownum值,然后才order by排序)。假如你有一个SQL语句如下所示。select emp_...
Oracle中使用关键字作为字段名的方法

Oracle中使用关键字作为字段名的方法

使用P/L SQL建表时,如果使用了关键字作为字段名,如:uid,type,date等,会提示出错无效的标识符(invalid identifier)。在一些情况不得不使用关键字作为字段名时,就像一些系统升级时,从其它数据库改为Oracle时,该什么办呢。经验证, 解决办法是使用双引号“”,如“type”,同样insert等语句也是一样操作create table Test_Tab( id number, “uid” number, ”type“ numb...
Oracle trunc()函数与round()函数对于数字的处理

Oracle trunc()函数与round()函数对于数字的处理

一.TRUNC函数1.TRUNC(for dates)TRUNC函数为指定元素而截去的日期值。其具体的语法格式如下:TRUNC(date[,fmt])其中:date 一个日期值fmt 日期格式,该日期将由指定的元素格式所截去。忽略它则由最近的日期截去下面是该函数的使用情况:TRUNC(TO_DATE(’24-Nov-1999 08:00 pm’,’dd-mon-yyyy hh:mi am’))=’24-Nov-1999 12:00:00 am’TRUNC(...
Hibernate各种主键生成策略与配置详解

Hibernate各种主键生成策略与配置详解

1、assigned主键由外部程序负责生成,在 save() 之前必须指定一个。Hibernate不负责维护主键生成。与Hibernate和底层数据库都无关,可以跨数据库。在存储对象前,必须要使用主键的setter方法给主键赋值,至于这个值怎么生成,完全由自己决定,这种方法应该尽量避免。<id name="id" column="id"><generator class="assigned" /></id>“ud”是自定...
如何估算Oracle数据库所需的UNDO表空间的大小

如何估算Oracle数据库所需的UNDO表空间的大小

要确定Oracle需要的UNDO 表空间的大小,需要以下三条信息:UR以秒为单位的UNDO_RETENTIONUPS每秒生成的还原数据块的数量DBSdb_block_sizeUndoSpace = [UR * (UPS * DBS)] + (DBS * 24)UNDO_RETENTION是一个参数,此参数控制为提供读一致性而保留的还原数据量,以秒为单位定义,可以在初始化文件中设置,或使用 ALTER SYSTEM 命令来动态修改。SQL>ALTER ...
Oracle数据库中的public用户的作用

Oracle数据库中的public用户的作用

public不是角色,你可以理解为所有数据库用户的集合。如果某个权限赋于了public,那么所以数据库的用户都可以有这个权限(当然有些用户可能连connect的权限都可以没有)。比如把一个对象t1给所有用户有select 权限grant select on user1.t1 to public;create public synonym t1 for t1;那么所有的public用户都可以访问该表t1再比如说grant dba to public;那么所有...
MySQL 触发器简单实例

MySQL 触发器简单实例

~~语法~~CREATETRIGGER<触发器名称> --触发器必须有名字,最多64个字符,可能后面会附有分隔符.它和MySQL中其他对象的命名方式基本相象.{BEFORE|AFTER} --触发器有执行的时间设置:可以设置为事件发生前或后。{INSERT|UPDATE|DELETE} --同样也能设定触发的事件:它们可以在执行insert、update或delete的过程中触发。ON<表名称> --触发器是属于某一个表的:当在这个...
<< 451 452 453 454 455 456 457 458 459 460 >>