oracle 解鎖,修改欄位名,複製資料SQL

2021-07-08 09:37:10 字數 1282 閱讀 5843

➹鎖表查詢的**有以下的形式:

select count(*) from v$locked_object;

select * from v$locked_object;

➹檢視哪個表被鎖:

select b.owner,b.object_name,a.session_id,a.locked_mode from v$locked_object a,dba_objects b where b.object_id = a.object_id;

➹檢視是哪個session引起的:

select b.username,b.sid,b.serial#,logon_time from v$locked_object a,v$session b where a.session_id = b.sid order by b.logon_time; 

➹殺掉對應程序:

執行命令:alter system kill session'32,241';

其中32為sid

,241為serial#.

➹假設欄位有資料,則改為nvarchar2(20)可以直接執行:

alter table tb modify (name nvarchar2(20));

若不能修改則用下面

alter table sft_bfwo rename column bfwoid to wid;

alter table sft_bfwo add bfwoid char(16);

update sft_bfwo set bfwoid=trim(wid);

alter table sft_bfwo drop column wid;

➹複製表結構及其資料:

create table table_name_new as select * from table_name_old

➹只複製表結構:

create table table_name_new as select * from table_name_old where 1=2;

或者:create table table_name_new like table_name_old

➹只複製表資料:

如果兩個表結構一樣:

insert into table_name_new select * from table_name_old

如果兩個表結構不一樣:

insert into table_name_new(column1,column2...) select column1,column2... from table_name_old

oracle 修改 欄位名稱

暫時應該沒有對應的方法,所以我用自己想好的方法去修改 修改原欄位名 name 為name tmp,是將想改名稱的字段改為沒用 臨時的字段 alter table 表名 rename column 老欄位 to 新字段 增加乙個和原欄位名同名的字段 name alter table 表名 add 老欄...

Oracle中修改表中欄位名

更改欄位名 modify 不能用於更改欄位名 alter table emp modify address address err 解決方法 create table ut as select name,tel,id empid from emp 將 emp中資料取出並存到新建的表ut中,並將字段i...

Mysql修改字段型別,修改欄位名

mysql修改字段型別 能修改字段型別 型別長度 預設值 注釋 對某欄位進行修改 alter table 表名 modify column 欄位名 新資料型別 新型別長度 新預設值 新注釋 column可以省略 alter table table1 modify column column1 dec...