1. 程式人生 > >MySQL的SQL語句編寫——[面試系列]

MySQL的SQL語句編寫——[面試系列]

六種關聯查詢:
內連線(INNER JOIN,分類等值連線、不等值連線、自連線)
外連線(LEFT JOIN/RIGHT JOIN)
聯合查詢(UNION JOIN/UNION ALL)
交叉連線(CROSS JOIN)
全連線(FULL JOIN,即查詢完累積,MySQL不支援全連線,通過擴充套件實現)

SQL注入安全

一、SQL注入攻擊的總體思路 :
1.尋找到SQL注入的位置
2.判斷伺服器型別和後臺資料庫型別
3.針對不通的伺服器和資料庫特點進行SQL注入攻擊

二、防止SQL注入的五種方法:

  1. 檢查變數資料型別和格式
  2. 過濾特殊符號
  3. 繫結變數,使用預編譯語句
  4. 使用正則表示式過濾傳入的引數
  5. 字串過濾

MySQL管理安全方案
使用預處理語句防SQL注入
寫入資料庫的資料要進行特殊字元的轉義
查詢錯誤資訊不要返回給使用者,將錯誤記錄到日誌
儘量用PDO、MySQLi。MySQL函式在新版本中趨於淘汰,不能很好的支援預處理語句
定期做資料備份
不給查詢使用者root許可權,合理分配許可權
關閉遠端訪問資料庫許可權
修改root口令,不用預設口令,使用較複雜的口令
刪除多餘的使用者
改變root使用者的名稱
限制一般 使用者瀏覽其他庫
限制使用者對資料檔案的訪問許可權