Oracle壓縮表修改欄位的處理方法
今天在修改表,往表裡面添加了幾個欄位,一時疏忽將欄位型別搞錯了。
於是,試了以下幾種方法
1、嘗試用最傳統的sql修改欄位型別:
alter table table_name modify column_name column_type;
由於資料倉庫中該表的資料特別大(一年的資料,每天有上千萬條記錄),sql語句執行了好幾分鐘,都沒有出結果。網上搜索了一下modify column大資料會記錄redo和undo。為了不對資料倉庫造成影響,所以只好停掉該sql。
2、嘗試刪除欄位,再重建,結果出現ORA-39726錯誤
最後網上找了一下,使用
ALTER TABLE test SET UNUSED COLUMN ROUTERADDR;
由於該方法只是將欄位設定成unused,看不到欄位,但是在資料字典中,該欄位還是存在的。沒有深入研究怎麼刪除oracle資料字典,如有朋友對這方面有研究,請指教。
相關推薦
Oracle壓縮表修改欄位的處理方法
今天在修改表,往表裡面添加了幾個欄位,一時疏忽將欄位型別搞錯了。 於是,試了以下幾種方法 1、嘗試用最傳統的sql修改欄位型別: alter table table_name modify column_name column_type; 由於資料倉庫中該表的資料特別大(一
Oracle ORA-39726壓縮表刪除欄位處理方法
今天在往一個壓縮表增加一個欄位可以增加成功,但在刪除的時候報了個 ORA-39726 unsupported add/drop column operation on compressed tables的錯誤。 錯誤是不能對壓縮表增加或刪除欄位,奇怪的可以增加,但是不能刪
Oracle修改欄位型別方法總結
有一個表名為tb,欄位段名為name,資料型別nchar(20)。1、假設欄位資料為空,則不管改為什麼欄位型別,可以直接執行: alter table tb modify (name nvarchar2(20));2、假設欄位有資料,則改為nvarchar2(20)可以直接執行: alter table tb
SQLite左外連線查詢有重複欄位處理方法
SQLite左外連線查詢有重複欄位處理方法 sqlite在連表查詢過程中,當主表和副表有相同的欄位時,縱然結果正確,但是在處理查詢結果時,在取主表的欄位但會返回副表的欄位值。 現有表ZWAMESSAGE和表ZWAMEDIAITEM,其中兩表中有相同的三個欄位, 執行下面語句
Oracle和SQLServer修改欄位的型別和長度,不為空
在SQLServer資料庫: 修改欄位型別和長度: alter table student|表名 alter col
SQLSERVER查詢整個資料庫中某個特定值所在的表和欄位的方法
做專案中前些天要手動改資料庫中的一些欄位的值,但發現這個欄位可能會被資料庫中其他的很多張表引用,於是就得想辦法查詢出該條記錄的所有引用的表和欄位,下面的儲存過程可以查詢出整個資料庫中某個特定值所在的表和欄位。 ↓雙擊程式碼段選中複製↓注意修改資料型別xtype 1
oracle 系統表 OBJ$ 欄位type#什麼意思
SQL> set long 99999
表,欄位處理詳細, 建立使用者 ,使用者管理 表關係
---恢復內容開始--- 1.修改表名 alter table t1 rename t2; 2.修改表裡欄位型別 alter table t1 modify name char(5); 3.修改表裡欄位名 alter table t1 change name &
oracle建立表增加欄位sql指令碼
oracle comment on的用法 oracle中用comment on命令給表或欄位加以說明,語法如下: COMMENT ON { TABLE [ schema. ] { table | view } | COLUMN [ sc
MySQL新增欄位和修改欄位的方法
1、登入資料庫 >mysql -u root -p 資料庫名稱 2、查詢所有資料表 >show tables; 3、查詢表的欄位資訊 >desc 表名稱; 4.1修改表名 alter table table1 r
rails中建立model 和 修改欄位的方法
轉自:http://blog.csdn.net/remote_roamer/article/details/7977294 1. 新建一個model .用如下命令 rails g model category1 code:string name:string me
MySql表、欄位、庫的字符集修改及檢視方法
原文連結:http://www.jb51.net/article/68856.htm修改資料庫字符集:複製程式碼程式碼如下:ALTER DATABASE db_name DEFAULT CHARACTER SET character_name [COLLATE ...];
Oracle修改表結構欄位名和欄位長度
新增欄位的語法:alter table tablename add (column datatype [default value][null/not null],….); 修改欄位的語法:al
mysql 在表中新加欄位、修改欄位
新增欄位 在某個欄位之後新加一個欄位: ALTER TABEL xxx ADD column_name VARCHAR(64) NOT NULL DEFAULT '' COMMENT '' AFTER xxx; 修改欄位 ALTER TABEL xxx MODIFY co
oracle資料庫查詢某個表的欄位資訊
(1)查詢整個資料庫所有表的欄位 select t.column_name from user_col_comments t;(一般建議去執行,因為資料庫表過多執行起來會非常的慢) (2)查詢特定表名的表字段 select t.column_name, t.column_name&nbs
MySQL 增加和修改表的欄位
#刪除一個表 DROP TABLE IF EXISTS [表名] DROP TABLE IF EXISTS new_table; #增加一個欄位 ALTER TABLE [表名] ADD [欄位名] [欄位型別] [是否為空]; ALTER TABLE table_name ADD
在oracle中操作表及欄位註釋
1、查詢表註釋 SELECT * FROM USER_TAB_COMMENTS;三列:TABLE_NAME,TABLE_TYPE,COMMENTS 2、查詢欄位註釋 SELECT * FROM USER_COL_COMMENTS;三列:TABLE_NAME,COLUMN_NAME,COM
oracle中檢視所有表、欄位、表註釋、欄位註釋
oracle中檢視所有表、欄位、表註釋、欄位註釋 檢視所有表 select table_name from user_tables; //檢視當前使用者擁有的表 select table_name from all_tables; //檢視所有使用者
ORACLE——在所有表、欄位中查詢某個字串並輸出表名和欄位名
什麼都不想說,直接上乾貨 declare v_Sql varchar2(2000); v_count number; begin for xx in (select t.OWNER, t.TABLE_NAME, t.COLUMN_NAME from
MySQL修改資料庫、表、欄位字符集
修改資料庫字符集: 程式碼如下: ALTER DATABASE db_name DEFAULT CHARACTER SET character_name [COLLATE ...]; 把表預設的字符集和所有字元列(CHAR,VARCHAR,TEXT)改為