如何杀掉(kill)Oracle中的会话(Session)

有时,Oracle中造成一些表被死锁或者会话异常退出,如执行了更新记录操作后,既没有commit也没有rollback,网络就断开了,也会造表或记录被锁住,待到超时后才会被解开,那样都会造成应用操作被阻塞。

可以以Oralce管理员权限用户登录Oracle数据,查询到被锁的对象,然后杀除指定的会话。

用下面的语句查询被锁的对象,可以带上更多约束条件,如schemaname等更精确的匹配。 阅读全文 >>

嵌入式数据库Firebird的使用

firebird是一个十分小的开源数据库,可作为像Access一样使用的文件型数据库,单用户连接;也能够以服务方式启动,支持多用户访问,Hibernate有对该种数据库的支持,这里不详细对该数据库本身特性作介绍了。

用jdbc连接嵌入式数据库Firebird最简单的使用是只需要两个动态库文件和一个(JDBC驱动)jar包

动态库是:
fbembed.dll   ---- firebird数据库提供
jaybird.dll   ---- 下载的jdbc驱动包提供,在FirebirdSQL-1.5.5JDK_1.4中 阅读全文 >>

管理常用SQL语句 [转]

  1. 查看数据库的版本       
   select @@version

  2. 查看数据库所在机器操作系统参数       

  exec master..xp_msver
  3. 查看数据库启动的参数        

  sp_configure 阅读全文 >>

ORACLE 常用脚本(4)[转]

rem  这需要 统计某个具体用户的"Table,index,column,constraits"
rem================================================================
rem   全部表-列定义 table_cols.txt
 set lin 110 pages 3000
 column table_name format a30
 column data_type  format a12
 column data_default  format a8
 column column_name format a22
 column Cid format  999 阅读全文 >>

ORACLE 常用脚本(3)[转]


用户的管理

一、ORACLE的安全域

1、TABLESPACE QUOTAS:表空间的使用定额
2、DEFAULT TABLESPACE:默认表空间
3、TEMPORARY TABLESPACE:指定临时表空间。
4、ACCOUNT LOCKING:用户锁
5、RESOURCE LIMITE:资源限制
6、DIRECT PRIVILEGES:直接授权 阅读全文 >>

ORACLE 常用脚本(2)[转]

一、ORACLE的表的分类:

1、REGULAR TABLE:普通表,ORACLE推荐的表,使用很方便,人为控制少。
2、PARTITIONED TABLE:分区表,人为控制记录的分布,将表的存储空间分为若干独立的分区,记录按一定的规则存储在分区里。适用于大型的表。

二、建表

1 CREATE TABLE 表名 (EMPNO NUMBER(2),NAME VARCHAR2(20)) PCTFREE 20 PCTUSED 50
STORAGE (INITIAL 200K NEXT 200K MAXEXTENTS 200 PCTINCREASE 0) TABLESPACE 表空间名称 阅读全文 >>

ORACLE 常用脚本(1) [转]

1、查看表空间的名称及大小

    select t.tablespace_name, round(sum(bytes/(1024*1024)),0) ts_size
    from dba_tablespaces t, dba_data_files d
    where t.tablespace_name = d.tablespace_name
    group by t.tablespace_name;

2、查看表空间物理文件的名称及大小 阅读全文 >>

为什么Oracle的伪列rownum不支持>,>=,=,between...and,而都用<比较

对于 Oracle 的 rownum 问题,很多资料都说不支持>,>=,=,between...and,只能用以上符号(<、<=、!=),并非说用>,>=,=,between..and 时会提示SQL语法错误,而是经常是查不出一条记录来,还会出现似乎是莫名其妙的结果来,其实您只要理解好了这个 rownum 伪列的意义就不应该感到惊奇,同样是伪列,rownum 与 rowid 可有些不一样,下面以例子说明

假设某个表 t1(c1) 有 20 条记录

如果用 select rownum,c1 from t1 where rownum < 10, 只要是用小于号,查出来的结果很容易地与一般理解在概念上能达成一致,应该不会有任何疑问的。 阅读全文 >>

Oracle中的Java存储过程的操作权限

当我们在Oracle中用Java写的存储过程方法中,如果访问了本地文件系统、连接了网络、或者运行系统命令,就必须为执行该过程的模式赋予相应的权限。不然执行该存储过程就会报无该操作权限的异常。

本文所面对的是哪些会用Java写存储过程的朋友,可能你们在用Java写Oracle的存储过程也遇到过类似问题。希望对他们能有所帮助。关于如何用Java写Oracle的存储过程请参考我前面的一篇文章:Oracle8i中使用Java语言来开发存储过程,其中有相应的代码。 阅读全文 >>

Oracle8i中使用Java语言来开发存储过程

在Oracle8i之前,开发人员只能使用PL/SQL来开发存储过程。而在Oracle8i之中,不仅可以使用原有的PL/SQL开发存储过程,而且也可以使用Java语言来开发存储过程。本篇文章将简单介绍关于这方面的知识,包括以下内容:(灰色显示的部分在此将不作详细介绍)

本文是我参考网上资料,整理出来的一份,文中所有代码语句均真实可用,因只是作测试,所以代码未表现实际业务操作。

一. 存储过程简介
阅读全文 >>