SQL隱碼攻擊預備知識-sql基礎

germo發表於2021-09-09

0.show datebases;//檢視庫列表

1.use testbase;//用於選擇資料庫

show tables;//檢視當前庫中的表列表

2.set names utf8;//用於設定使用的字符集

3.select * from testform;//從testform表中讀取全部資料

4.selec name,country from testform;//從testform表中讀取name,country列的資料

5.select distinct country from testform;//從testform表中的country列讀取不重複的內容

6.select * from testform where country='CN';//從testform表中讀取country列內容為CN所有資料

7.select * from testform where id=1;//同上

8.where中的運算子:

= //等於

<> //不等於

!= //不等於

> //大於

< //小於

>= //大於等於

<= //小於等於

between //在某個範圍內

like //搜尋某種模式

in //指定針對某個列的多個可能值

9.select * from testbase where iq=7000;//從testform表中獲取iq=7000的資料

10.select * from testbase where iq >200 and iq < 250;//從testform表中獲取iq大於200小於250的資料

11.select * from testbase where iq >200 or iq > 250;//從testform表中獲取iq大於200或者iq大於250的資料

12.select * from testbase where not iq >250;//從testform表中取出不滿足iq大於250的資料(iq小於250)

13.select * from testbase where iq is null;//從testform表中取出iq列中的空值

14.select * from testbase where iq between 1500 and 2500;//從testform表中取出iq列大於1500小於2500的值

15.select * from testbase where iq in (250,1000,15000);//查詢表testform的iq列中等於250,1000,15000的值

16.select * from testbase where iq like '7%';//從testbase表中獲取iq列中以7開頭的內容

% 表示多個字值,_ 下劃線表示一個字元;

 M% : 為能配符,正規表示式,表示的意思為模糊查詢資訊為 M 開頭的。

 %M% : 表示查詢包含M的所有內容。

 %M_ : 表示查詢以M在倒數第二位的所有內容。

17.WHERE 子句並不一定帶比較運算子,當不帶運算子時,會執行一個隱式轉換。當 0 時轉化為 false,1 轉化為 true。例如:

SELECT studentNO FROM student WHERE 0

則會返回一個空集,因為每一行記錄 WHERE 都返回 false。

SELECT  studentNO  FROM student WHERE 1

返回 student 表所有行中 studentNO 列的值。因為每一行記錄 WHERE 都返回 true。

18.select * from testform where country='CN' and iq > 250;//從testform表中取出country為‘CN’並且iq>250的內容

19.select * from testform where country='CN' or iq >250;//從testform表中取出country為‘CN’或者iq>250的內容

20.select * from testform where iq > 250 and (country='CN' or country='USA');//從testform表中取出iq>250且country是CN或者USA的內容

21.select * from testform order by iq;//從testform表中取出全部資料並按iq升序排列(預設的asc)

22.select * from testform order by iq desc;//從testform表中取出全部內容並按iq列降序排列

22.select * from testform order by country,iq;//從testform表中取出所有資料並按country和iq列升序排列(先按前面的排序,再按後面的列排序)

order by A,B //都是升序排列

order by A desc, B//A降序,B升序排列

order by A,B desc//A升序,B降序排列

23.instert into testform(name,url,alexa,country)values ('測試','','4','CN');//向testform表中插入新的一行;

24.insert into testform (name,url,counrty) values ('測試','','CN');//向testform表中插入新的一行;

25.insert into testform values (value1,value2,value3...);

insert into scorebak select * from socre where neza='neza'   --插入一行,要求表scorebak 必須存在    select *  into scorebak from score  where neza='neza'  --也是插入一行,要求表scorebak 不存在

26.update testform set iq=250,country=''USA where name='test';//修改testform表中name為test行的iq=250 country=“USA”

27.update testform set iq=250;//修改testform表中所有資料的iq=250

(可以設定更新報警 set sql_safe_updates=1; //開啟where檢查報錯開關)

28.delete from testform where iq=250 and country='CN';//從testform表中刪除iq列=250以及country列=‘CN’的內容

29.delete from testform;

delete from testform;//刪除表中所有行資料(可以有備份)

30.drop testform;//刪除表testform(徹底刪除,無備份)

31. truncate testform;//刪除表testform的內容並釋放空間,保留表結構(無備份)

刪除速度:drop > truncate > delete



作者:未來視角
連結:


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/1868/viewspace-2819028/,如需轉載,請註明出處,否則將追究法律責任。

相關文章