Web安全學習筆記(八):SQL-結構化查詢語言
SQL概述:
結構化查詢語言(Structured Query Language)簡稱SQL,是一種特殊目的的編程語言,是一種數據庫查詢和程序設計語言,用於存取數據以及查詢、更新和管理關系數據庫系統;同時也是數據庫腳本文件的擴展名。
具體的用途也就一句話概括:訪問和操作數據庫。
簡單來說SQL就是一套標準,另外還可以針對自己的數據庫做相應的擴展。
常見的數據庫:MySql,ACCESS,DB2,Oracle,SQL Server.....
不同的數據庫,有些語法地方有些出入,但是整體還是以SQL這套標準執行的。
waring:
SQL語句對大小寫不敏感。
SQL語句中以 ;代表語句結束。
SQL實驗環境:(以MySql為例)
phpstudy環境下的Mysql命令行,通過這個可以簡單的對sql操作數據庫有個基本的了解了。
SQL語法:(以MySQL為例)
三大操作步驟:
操作數據庫:創建,查看,切換/使用數據庫,刪除數據庫。
操作數據表:創建,查看,插入數據表,查詢數據表中的數據。
操作具體數據:更改數據,刪除數據。
一、操作數據庫:
創建數據庫:
CREATE DATABASE 要被創建數據庫的名稱;
查看數據庫:
SHOW databases;
切換/使用數據庫:
USE 目標數據庫名稱;
刪除數據庫:
DROP DATABASE 要刪除數據庫的名稱;
二、操作數據表:
這就是一個數據表,一個數據表中,有表頭,鍵值,行值,列值。
創建數據表:
CREATEA TABLE 表名(
id int(4) not null primary key auto_increment,
列名1 not null,
列名2 not null
);
查看數據表:
SHOW tables;
插入數據:
INSERT INTO 表名(列名1,列名2) VALUES (‘具體數據1‘,‘具體數據2‘);
查詢數據表中的數據:
SELECT * FROM 數據表名;
刪除數據表:
DROP TABLE 數據表名;
Waring:
創建數據表前應先切換到某個數據庫中,否則創建不成功,提示錯誤。
not null:意思為不能為空。
primary key:意思為鍵值。
auto_increment:意思為自增長。
*:通配符,意思為所有數據。
三、數據操作:
更新/更改數據:
UPDATE 數據表名 SET 列名=‘要替換的值‘ WHERE id=鍵值;
刪除數據:
DELETE FROM 數據表名 WHERE 列名=‘具體數值‘;
DELETE FROM 數據表明 WHERE id=鍵值;
四、SQL幾個基本語法:
WHERE 句子(從哪裏來~):
SELECT 你要的信息 FROM 數據表(或多個) WHERE 滿足的條件(條件判斷);
ORDER BY 句子(排排序~):
SELECT 你要的信息 FROM 數據表(或多個) ORDER BY 字段(可以是表頭名) ASC/DESC
ASC:升序(默認)
DESC:降序
UNION 句子(連在一起~):
SELECT 你要的信息 FROM 數據表1 UNION SELECT 你要的信息 FROM 數據表2
UNION:不顯示重復數據
UNION ALL:顯示重復數據
五、其他一些東西:
1.MySql註釋:
# :單行註釋
-- :單行註釋
/*...*/ :多行註釋從/* 開始到 */結束
2.常見內置函數:
database():獲取當前數據庫名稱
current_user():獲取當前用戶
load_file():返貨一個文件的內容
verison():獲取當前數據庫版本
into + outfile:寫入文件
使用方法:
SELECT 你要用的函數;
------不要假裝你很努力-----
Web安全學習筆記(八):SQL-結構化查詢語言