依ANSI 92標準SQL指令分為以下三種:
1.DDL(Data Definition Language)
常用的就是:Create、Alter、Drop這三個指令
2.DML(Data Manipulation Language)
常用的就是:Select、Insert、Update、Delete這四個指令
3.DCL(Data Control Language)
常用的就是:GRANT、DENY、REVOKE這三個指令
我想您先學DML這四個指令就夠了。
我是認為,你會問這樣的問題,表示你還不懂 SQL 是什麼。就像是懂 Java 語言的人,不會問 Java 常用的指令有哪些一樣。
SQL 也可以算是一種語言 (如 T-SQL),重點不是什麼指令常用,而是你要用這些指令做出什麼結果 (效果) 出來。要不然告訴你最常用的 SQL 指令是 select、insert、delete、update 你也不能拿這個來幹嘛,更何況最複雜的 select 指令千變萬化,如果一招半式就能吃遍 IT 界,那也不會有一堆人看到 SQL 就哭喪著臉了。
基本上...
最常用的是SELECT .... FROM .... WHERE ..... ORDER BY .... [DESC]
然後是 UPDATE 及 DELETE
INSERT比較會寫在應用程式中, 因為新增資料會有一些資料驗證的必要.
再來就是CREATE INDEX及ALTER INDEX...
然後是CTRATE TABLE及ALTER TABLE....
CREATE DATABASE就不會常用了....
GRANT、REVOKE指令常用在權限管理, 但....很多時候會下SQL指令的就那麼幾個使用者, 只有在資料庫剛建好時才會要設定...一般來講, 資料庫的權限會和應用程式在一起談.
其他, 不要用的指令只有一個DROP....這真的是很麻煩的一個指令...
DELETE指令少要, 如果不得以要用, 先以SELECT指令把WHERE條件下好, 查看看是不是只有要刪的資料, 然後把WHERE條件加到DELETE指令後面去執行.
以上, 其實, 我在操作資料庫時, 大多數的DDL及DCL都是在GUI介面下完成.
SELECT指令使用時機佔了80%. 所以, 能精通SELECT及其相關的JOIN、UNION、WHERE、GROUP、ORDER及HAVING的完整運用, 幾乎就可以算是好手了.
最後...如果是SQL Server或Oracle還會有些LOG檔案維護的指令比較會用到, 但這也是資料庫管理者偶爾在用而已.
iT邦幫忙MVPsimon581923提到:
不要用的指令只有一個DROP....
(筆記)...那..改用TRUNCATE好了....
有一回...有個新進工程師....
在正式機上下了一個指令: DROP DATABASE MAINERPDB
結果是...資訊全體員工被懲戒...主管被降級...當事人...被主管罵到自動辭職...可憐只到職一個星期左右...
他說: 他以為是連到測試機.....
說真的....在測試機上下DROP DATABASE的情況應該也是不多的吧...
我是認為應該離職的是那位主管.
根本沒建立好的機制,
讓新進人員可以連到上線的機器,這本身就是錯誤的開始.
建立一個user給新進人員只能查詢,這也都不難;
技術上根本就是都現成有的,資料庫基本的.
沒建立機制是主管的責任.
simon581923提到:
有一回...有個新進工程師....
該不會這位...就是simon581923大大?
simon581923提到:
他說: 他以為是連到測試機....
上個世紀的經典動作是在主管的機器上面執行
FORMAT c:/s/v
shuan0114提到:
該不會這位...就是simon581923大大?
我是被懲戒的那幾個倒霉鬼....
tecksin提到:
FORMAT c:/s/v
曾經遇到過一位電腦天才級的老闆, 去上過幾天電腦基本課程....有天叫我去他辦公室問我...賽, 我的電腦不能開機了, 幫我看看...
我: 請問老闆之前有做什麼動作...
老闆: (打開面前一本書)就打下這個指令....然後就不能用了.
我: 嗯! 很好..這台電腦被那個指令鎖住了, 我要拿回去打開機殼把鎖打開....
老闆: 喔...那個指令不能隨便用是嗎??
我: 對! 用了以後電腦就鎖住了, 要解鎖很耗時...(心裏痛罵那個87電腦講師)
老闆: 知道了...下回就不要用啦~~~(用筆劃掉那個指令)...你要弄多久?
我: 看了下手表...要到下班了...
老闆: 好吧! 等下我出去, 你弄好自己搬進來...
還好, 平常會幫老闆Copy硬碟資料.....
後來, 知道那個87電腦教師是在當時高雄的一家叫亞洲電腦補習班的....