|
|
MySQL 教材:指令回溯 |
在 MySQL 的文字操作介面內,按向上的箭頭可以回溯前一列字串。 依此類推可以一直向前回溯,也可以按向下的箭頭返回。 如果回溯的字串本身是一個完整的指令 (有頭有尾有分號), 那麼,按 Enter 就能執行。 您也可以用左、右箭頭,或是 Backspace 或 Delete 按鍵來修改那一列的字串。
指令回溯的最大困惑是,如果前面的指令寫了不只一列,例如
mysql> create table T1 (
-> id int unsigned auto_increment primary key,
-> name char(10) not null,
-> gender enum('F', 'M') not noll,
-> birthday date,
-> phone char(32)
-> );
ERROR 1064: You have an error in your SQL syntax near 'noll,
... at line 4
其中第四列打錯字了 (noll 應該是 null),MySQL 並不會在第四列按了 Enter
之後就跟您說打錯字了。因為 MySQL 直到你輸入分號之後,才開始處理整個指令字串。
現在,當您發現錯了,可以回溯以前的字串。
但是,不可以只回溯第四列,只修改它而已。
應該要回溯到第一列、按 Enter,然後第二列、按 Enter,
然後第三列、按 Enter,然後第四列、修改、按 Enter,
然後第四列、按 Enter,如此下去。
簡言之,就是要把前述的七列指令全部回溯一遍。
這種操作,需要經驗,多說無益,讀者還是自己練習吧。
習題
mysql> CREATE TABLE text (id INT UNSIGNED, test CHAR(100));
mysql> INSERT INTO text VALUES (1, 'This is a test
'> for the \'quot mark\'
'> and line breaks'
-> );
mysql> SELECT * FROM text;