【SQL】匯入資料、預存程式、自訂函數、觸發程式

匯入資料

  • 建立資料庫
  • 右鍵>工作>匯入資料
  • 若資料檔案為.txt,則選擇資料來源為flat file source
  • 確定資料規格後按下一步,到最後選擇本機為目的地
  • 確後無誤後,一直下一步、finish

預存程式

  • 預存優點:
  1. 執行效率高:將一些經常使用的操作寫成預存程序,來節省時間。
  2. 統一的操作流程:避免使用者操作錯誤。
  3. 重複使用:可模組化、使用者皆可呼叫。
  4. 安全性:可加密。
  • 預存種類:
  1. 系統預存(system stored procedures):sp_開頭,系統本身就有,用來進行各項設定、取得資訊或相關管理工作。
  2. 延伸預存(Extended stored procedures):xp_開頭,大多是以傳統的程式語言(例如C++)撰寫而成,其內容不是儲存在SQL中,而是以DLL的形式單獨存在。
  3. 自訂預存(User-defined stored procedures):dbo.開頭,會被加入所屬資料庫的可程式性/預存程序中,以物件的形式儲存。

自訂函數

return--函數最後一個敘述必是return 若要傳回字串,傳回指定變數前不可以有其他return數值的敘述,否則指定變數會被轉為int並轉換失敗。

觸發程式

  • 觸發種類:

  1. 條件約束(constraint):直接設定於資料表內,通常不需另外撰寫程式。ex:defult、check
  2. 觸發程序(trigger):對單一資料表所撰寫的特殊預存程序。

  • 用途:

  1. 檢查是否為合法的更改
  2. 進行其他相關資料的更改
  3. 發出更改或預警的通知
  4. 自訂錯誤訊息
  5. 更改原來所要進行的資料操作
  6. 檢視表(view)也可以有觸發

  • 種類與觸發時機:

  1. after:在資料變動完成後,才會被啟動並進行必要的善後處理或檢查。
  2. instead of:取代原本要進行的操作(保護你的資料表)
*觸發程序會在設定的資料表底下顯示,不在「可程式性」底下

  • 觸發程序的暫存表:

  1. 新增inserted
  2. 刪除deleted

*更改的時候新增、刪除兩個表都要看

*check只能在一個資料表底下,after觸發程序可以透過其他資料表來觸發

這個網誌中的熱門文章

【醫院資訊系統】筆記整理

【MIS】管理資訊系統Ch1+2

【Mongo】cmd命令