關於提問的一些建議(r5筆記第41天)
今天看到一個網友的提問,在晚上分析了問題之後還是有一些感慨的。
網友的問題做move tablespace的操作時,報了類似下面的錯誤。
alter table a move to users
*
ERROR at line 1:
ORA-14133: ALTER TABLE MOVE cannot be combined with other operations
看到這個問題,第一印象就是常規錯誤,即通過baidu,google,能夠得到一些有用的資訊。這類問題的原因雖然五花八門,但是原理都是類似的。
根據網友的反饋說已經查了些資料,自己就從一些技術角度進行了分析,首先baidu上找了一圈,發現問題發生的原因也確實有不少的場景,檢視metalink,裡面這個問題相關的帖子有3個,比較貼近的就1個帖子,但是裡面描述的問題發生原因竟然是和parallel相關。和這個網友提供的資訊還是有些出入,所以暫時沒有發現有效的資訊輔助。這個時候自己就在想,為什麼我自己做過的move tablespace操作就沒有出現過問題,這個問題發生前的操作和當時的環境是不是也有一定的影響。但是網友提供的就一個簡單的錯誤,自己也著實想了不少的招,自己模擬了quota的問題,模擬了許可權的問題,模擬了表中存在LOB欄位的move操作,甚至模擬了幾個並行的案例,都沒有發現問題,最後還是在一個baidu帖子裡面琢磨那個問題,發現原來是語法的問題。
move_test@TEST11G> alter table a move tablespace move_test_ts;
Table altered.
move_test@TEST11G> alter table a move users;
alter table a move users
*
ERROR at line 1:
ORA-14133: ALTER TABLE MOVE cannot be combined with other operations
move_test@TEST11G> alter table a move to users;
alter table a move to users
*
ERROR at line 1:
ORA-14133: ALTER TABLE MOVE cannot be combined with other operations
mysql> help create procedure
Name: 'CREATE PROCEDURE'
Description:
Syntax:
CREATE
[DEFINER = { user | CURRENT_USER }]
PROCEDURE sp_name ([proc_parameter[,...]])
[characteristic ...] routine_body