日期:2014-05-16  浏览次数:20405 次

Oracle应用中的一些小知识

?

1.oracle如何查看后台正在运行着的sql语句


select a.program,b.spid,c.sql_text from v$session a,v$process b,v$sqlarea c where a.paddr=b.addr and a.sql_hash_value=c.hash_value and a.username is not null;

2.数据库解锁。
(1).查询有哪些死锁进程
select t2.username,t2.sid,t2.serial#,t2.logon_time from v$locked_object t1,v$session t2 where t1.session_id=t2.sid ;

(2).杀掉进程 SID,SERIAL#
alter system kill session '66,18940';



3.后台运行sql.
建一个xxx.sql脚本,在linux在运行 sqlplus username/password@TNS < xxx.sql &

?

4.Oracle添加字段的sql

alter table table_name add (列名1 数据类型1,列名2 数据类型2...);

也可以用过程实现

declare

  vstr_sql varchar2(2000):='alter table your_table add (column1 col_type1,clumn2 col_type2...)';

  begin

  execute immediate vstr_sql;

  end;

?

修改单列数据类型:

ALTER TABLE?table_name ?MODIFY 列名 数据类型

修改多列数据类型:

ALTER TABLE?table_name MODIFY ( 列名1 数据类型1,列名2 数据类型2)

删除单列:

ALTER TABLE?table_name DROP COLUMN 列名

删除多列:

ALTER TABLE?table_name DROP (列名1,列名2)

?