国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Web安全——數(shù)據(jù)庫(kù)mysql學(xué)習(xí)

這篇具有很好參考價(jià)值的文章主要介紹了Web安全——數(shù)據(jù)庫(kù)mysql學(xué)習(xí)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

Web安全分享

1、Web安全——HTML基礎(chǔ)
2、Web安全——DIV CSS基礎(chǔ)
3、Web安全——JavaScript基礎(chǔ)
4、Web安全——PHP基礎(chǔ)
5、Web安全——JavaScript基礎(chǔ)(加入案例)
6、靶場(chǎng)搭建——搭建pikachu靶場(chǎng)

一·、數(shù)據(jù)庫(kù)的基本操作

1、MYSQL登錄與退出

D:\phpStudy\MySQL\bin
登陸: 輸入 mysql -uroot -p -P3306 -h127.0.0.1
退出的三種方法

mysql > exit;
mysql > quit;
mysql > \q;

語(yǔ)法使用:
數(shù)據(jù)庫(kù)的登陸:

Microsoft Windows [版本 10.0.22621.4]
(c) Microsoft Corporation。保留所有權(quán)利。

C:\Users\lenovo>mysql -uroot -p123456 -h127.0.0.1
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.26 MySQL Community Server (GPL)

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

這里版本我們可以看到為mysql5.7.26
下面為幫助指令:

mysql> help

For information about MySQL products and services, visit:
   http://www.mysql.com/
For developer information, including the MySQL Reference Manual, visit:
   http://dev.mysql.com/
To buy MySQL Enterprise support, training, or other products, visit:
   https://shop.mysql.com/

List of all MySQL commands:
Note that all text commands must be first on line and end with ';'
?         (\?) Synonym for `help'.
clear     (\c) Clear the current input statement.
connect   (\r) Reconnect to the server. Optional arguments are db and host.
delimiter (\d) Set statement delimiter.
ego       (\G) Send command to mysql server, display result vertically.
exit      (\q) Exit mysql. Same as quit.
go        (\g) Send command to mysql server.
help      (\h) Display this help.
notee     (\t) Don't write into outfile.
print     (\p) Print current command.
prompt    (\R) Change your mysql prompt.
quit      (\q) Quit mysql.
rehash    (\#) Rebuild completion hash.
source    (\.) Execute an SQL script file. Takes a file name as an argument.
status    (\s) Get status information from the server.
tee       (\T) Set outfile [to_outfile]. Append everything into given outfile.
use       (\u) Use another database. Takes database name as argument.
charset   (\C) Switch to another charset. Might be needed for processing binlog with multi-byte charsets.
warnings  (\W) Show warnings after every statement.
nowarning (\w) Don't show warnings after every statement.
resetconnection(\x) Clean session context.

For server side help, type 'help contents'

mysql>

以及某一個(gè)命令在mysql下如何使用查詢:

mysql> help use
Name: 'USE'
Description:
Syntax:
USE db_name

The USE db_name statement tells MySQL to use the db_name database as
the default (current) database for subsequent statements. The database
remains the default until the end of the session or another USE
statement is issued:

USE db1;
SELECT COUNT(*) FROM mytable;   # selects from db1.mytable
USE db2;
SELECT COUNT(*) FROM mytable;   # selects from db2.mytable

The database name must be specified on a single line. Newlines in
database names are not supported.

URL: http://dev.mysql.com/doc/refman/5.7/en/use.html


mysql>

接下來(lái)為三種不同的退出方式:

mysql> exit;
Bye

C:\Users\lenovo>
mysql> quit;
Bye

C:\Users\lenovo>
mysql> \q;
Bye

C:\Users\lenovo>

2、MYSQL數(shù)據(jù)庫(kù)的一些解釋

注意: 數(shù)據(jù)庫(kù)就相當(dāng)于文件夾,表就相當(dāng)于文件
Web安全——數(shù)據(jù)庫(kù)mysql學(xué)習(xí),Web安全,數(shù)據(jù)庫(kù),web安全,mysql,經(jīng)驗(yàn)分享,安全,學(xué)習(xí),網(wǎng)絡(luò)安全
我們可以看見這里面即為我們創(chuàng)建并使用的數(shù)據(jù)庫(kù),同時(shí)打開之后都為很多的表單。

3、MYSQL注釋符有三種:

1、#...
2、"--  ..."
3、/*...*/

二、數(shù)據(jù)庫(kù)的一些基本操作

1、數(shù)據(jù)庫(kù)的增刪改查(sql語(yǔ)句)

這里db*為數(shù)據(jù)庫(kù)名稱,可隨意:

  • 增: create database db1;
  • 刪: drop database db1;
  • 改: alter database db1 charset utf8
  • 查: show databases;#查看所有的數(shù)據(jù)庫(kù)

實(shí)際操作:
創(chuàng)建數(shù)據(jù)庫(kù):

mysql> create database moondata;
Query OK, 1 row affected (0.00 sec)

查看數(shù)據(jù)庫(kù):

ysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| moondata           |
| mydata             |
| mysql              |
| performance_schema |
| pikachu            |
| sys                |
+--------------------+
7 rows in set (0.00 sec)

mysql> show create database moondata;
+----------+-------------------------------------------------------------------------------------------+
| Database | Create Database                                                                           |
+----------+-------------------------------------------------------------------------------------------+
| moondata | CREATE DATABASE `moondata` /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci */ |
+----------+-------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

修改數(shù)據(jù)庫(kù):

mysql> alter database moondata charset utf8;
Query OK, 1 row affected (0.00 sec)

mysql>

刪除數(shù)據(jù)庫(kù):

mysql> show  databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| moondata           |
| mydata             |
| mysql              |
| performance_schema |
| pikachu            |
| sys                |
+--------------------+
7 rows in set (0.00 sec)

mysql> drop database moondata;
Query OK, 0 rows affected (0.02 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mydata             |
| mysql              |
| performance_schema |
| pikachu            |
| sys                |
+--------------------+
6 rows in set (0.00 sec)

mysql>

其他命令:
查看指定的數(shù)據(jù)庫(kù) show create database db1;

mysql> show create database moondata;
+----------+-------------------------------------------------------------------------------------------+
| Database | Create Database                                                                           |
+----------+-------------------------------------------------------------------------------------------+
| moondata | CREATE DATABASE `moondata` /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci */ |
+----------+-------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

設(shè)置默認(rèn)的utf8,在配置文件中:寫上
character_set_server = utf8
use db2
select database() #查看你當(dāng)前在哪個(gè)文件夾

重命名數(shù)據(jù)庫(kù) RENAME database olddbname TO newdbname

show status; 顯示一些系統(tǒng)特定資源的信息,例如,正在運(yùn)行的線程數(shù)量。

desc tabl_name; 顯示表結(jié)構(gòu),字段類型,主鍵,是否為空等屬性,但不顯示外鍵。

show databases 查看這個(gè)mysql里面有多少個(gè)庫(kù)

use mysql

use 選擇數(shù)據(jù)庫(kù)

show tables 查看當(dāng)前庫(kù)里面所有的表

mysql> select password from user where user='root';

Mysql 5.7 select authentication_string,user from mysql.user;

查看當(dāng)前數(shù)據(jù)庫(kù) 里面的表user 用戶為root的密碼

alter database 數(shù)據(jù)庫(kù)名 character set utf8;

三、table 表的操作

1、查看表結(jié)構(gòu)

desc table

DESCRIBE 表名;

2、查看表的內(nèi)容

select * from table_name

3、建立表

CREATE TABLE 表名 (
屬性名 數(shù)據(jù)類型 [完整約束條件],
屬性名 數(shù)據(jù)類型 [完整約束條件],


屬性名 數(shù)據(jù)類型 [完整約束條件]
);
字段名就是屬性名

完整的建立表的語(yǔ)句

create table users(id int(7) AUTO_INCREMENT,
						username varchar(100) not null,
						password varchar(100) not null,
						PRIMARY KEY(id)
						)ENGINE=InnoDB DEFAULT CHARSET=utf8;
	
mysql> create table users(id int(7) UNSIGNED auto_increment,username varchar(30) not null,password varchar(32) not null,email varchar(40),primary key (id))engine=myisam default charset=utf8;
Query OK, 0 rows affected (0.00 sec)

if not exists表示當(dāng)相同的表名存在時(shí),則不執(zhí)行此創(chuàng)建語(yǔ)句,避免語(yǔ)句執(zhí)行錯(cuò)誤

create database if not exists [table];

ENGINE=InnoDB DEFAULT CHARSET=utf8;
ENGINE 設(shè)置表的引擎 和默認(rèn)的字符類型
常見的數(shù)據(jù)庫(kù)引擎
InnoDB myisam
數(shù)據(jù)類型
https://www.cnblogs.com/-xlp/p/8617760.html

4、約束條件

PRIMARY KEY 標(biāo)識(shí)該屬性為該表的主鍵,可以唯一的標(biāo)識(shí)對(duì)應(yīng)的元組
FOREIGN KEY 標(biāo)識(shí)該屬性為該表的外鍵,是與之聯(lián)系某表的主鍵

NOT NULL 標(biāo)識(shí)該屬性不能為空
UNIQUE 標(biāo)識(shí)該屬性的值是唯一的
AUTO_INCREMENT 標(biāo)識(shí)該屬性的值是自動(dòng)增加,這是MySQL的SQL語(yǔ)句的特色
DEFAULT 為該屬性設(shè)置默認(rèn)值

5、修改表的操作

修改表
格式: ALTER TABLE 舊表名 RENAME 新表名;
修改字段的數(shù)據(jù)類型:

ALTER TABLE 表名 MODIFY 屬性名 數(shù)據(jù)類型;

修改字段名:

ALTER TABLE 表名 CHANGE 舊屬性名 新屬性名 新數(shù)據(jù)類型;

增加字段名:

ALTER TABLE 表名 ADD 屬性名1 數(shù)據(jù)類型 [完整性約束條件] [FIRST | AFTER 屬性名2];

刪除字段:

ALTER TABLE 表名 DROP 屬性名;

更改表的存儲(chǔ)引擎:

格式: ALTER TABLE 表名 ENGINE = 存儲(chǔ)引擎名;

四、數(shù)據(jù)的增刪改查

為表中所有字段添加數(shù)據(jù)
語(yǔ)法: INSERT INTO 表名(字段名1,字段名2,…)VALUES(值1,值2,…);
mysql> insert into users (id,username,password)values(1,'moon','123456');

1、增

語(yǔ)法: INSERT INTO 表名 VALUES(值11,值2,…);
mysql> insert into users values(null,'test','123456');
語(yǔ)法: INSERT INTO 表名(字段1,字段2,…)VALUES(值1,值2,…)
語(yǔ)法: INSERT INTO 表名 SET 字段名1=值1[,字段名2=值2,…]
舉例: INSERT INTO student SET id=4,name='zhaoliu',grade=72?
同時(shí)添加多條數(shù)據(jù)
語(yǔ)法:
INSERT INTO 表名[(字段名1,字段名2,…)]VALUES (值1,值2,…),(值1,值2,…),
mysql> insert into users (id,username,password)values(null,'moon','123456'),(null,'alex','123456');

:INSERT INTO 表名[(字段名1,字段名2,…)]VALUES (值1,值2,…),(值1,值2,…),(值1,值2,…)
mysql> insert into users values(null,'moon1','123456'),(null,'alex1','123456');

2、刪

DELETE FROM 表名 [WHERE 條件表達(dá)式
delete from users where id=1;
刪除全部數(shù)據(jù)
DELETE 語(yǔ)句中沒有使用WHERE語(yǔ)句,則會(huì)將表中所有記錄都刪除。
DELETE FROM 表名
刪除全部數(shù)據(jù)的另一種方法——TRUNCATE

3、更新

語(yǔ)法: UPDATE 表名 SET 字段名1=值1,[ ,字段名2=值2,…][ WHERE 條件表達(dá)式 ]

update users set  password='aaaa' where id=1;
update users set  password='123456',username='moon' where id=1
update users set  password=456789;

4、查

select * from users;
星號(hào)代表所有的字段
查詢指定的字段
select username,password from users;

  • 按條件調(diào)節(jié)查詢
  • 按關(guān)系來(lái)查詢

語(yǔ)法: SELECT 字段名1,字段名2,…FROM 表名WHERE 條件表達(dá)式

1、in 查詢

SELECT * FROM student2 WHERE id IN (1,2,3);
BETWEEN AND 關(guān)鍵字的查詢
select * from users where id not between 1 and 10;
DISTINCT 關(guān)鍵字的查詢
select distinct username from users
like查詢 一般都會(huì)給跟著 %
select * from users where username like "%m%" ;
下劃線 _ 匹配一個(gè)字符
select* from users where username like "moo_"

2、and查詢

滿足多個(gè)條件
select * from users where id=1 and username='moon';

3、or查詢

滿足任意一個(gè)條件
select * from users where id=1 or username='moon';
ORAND 一起使用的情況
ORAND 一起使用的時(shí)候,AND 的優(yōu)先級(jí)高于 OR,因此二者一起使用時(shí),會(huì)先運(yùn)算 AND 兩邊的表達(dá)式,再運(yùn)算 OR 兩邊的表達(dá)式。
mysql> select * from users where id >5 and password='123456c' or username='moon1';

4、聚合查詢

count 返回行數(shù)

select count(*) from users;
select count(id) from users;

COUNT() 返回某列的行數(shù)
SUM() 返回某列值的和
AVG() 返回某列的平均值
MAX() 返回某列的最大值
MIN() 返回某列的最小值

5、分組查詢

如果報(bào)錯(cuò)請(qǐng)?jiān)?my.ini添加
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

GROUP BY

mysql> SELECT * FROM users GROUP BY password;
+----+----------+----------+
| id | username | password |
+----+----------+----------+
|  3 | moon1    | 123456   |
|  1 | moon     | 456789   |
+----+----------+----------+
2 rows in set (0.01 sec)

mysql> SELECT * FROM users GROUP BY username;
+----+----------+----------+
| id | username | password |
+----+----------+----------+
|  2 | alex1    | 456789   |
|  1 | moon     | 456789   |
|  3 | moon1    | 123456   |
+----+----------+----------+
3 rows in set (0.01 sec)

使用 LIMIT 限制查詢結(jié)果的數(shù)量

select * from users limit 2,10;
select * from users as u where u.id=1;

為表和字段取別名
select username as myname from users;

6、mysql的子查詢

  • where型子查詢
    (把內(nèi)層查詢結(jié)果當(dāng)作外層查詢的比較條件)
select * from users where id in (select id from users where id>10);
  • from型子查詢
    (把內(nèi)層的查詢結(jié)果供外層再次查詢)
select * from (select username,age from users) as agev_a where age>20	
select * from (select * from users where id>=10) as age_10;	

(select * from users where id>=10)查詢出來(lái)的是一個(gè)集合 別名為age_10
select * from age_10

  • exists型子查詢
    (把外層查詢結(jié)果拿到內(nèi)層,看內(nèi)層的查詢是否成立)
select * from users where EXISTS (select * from users where id>1)

7、聯(lián)合查詢

(兩個(gè)表的查詢)
注釋: 默認(rèn)地,UNION 操作符選取不同的值。如果允許重復(fù)的值,請(qǐng)使用 UNION ALL
當(dāng) ALLUNION 一起使用時(shí)(即 UNION ALL),不消除重復(fù)行
UNION ALL 查詢?nèi)?而且不會(huì)消除重復(fù)的行
union

SQL UNION ALL 語(yǔ)法
union的用法及注意事項(xiàng)
兩次查詢的列數(shù)必須一致
select * from users union select *,1 from news;文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-533186.html

CREATE TABLE `news` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `title` varchar(255) not NULL,
  `content` varchar(255) not null,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=0 DEFAULT CHARSET=utf8; 
insert into news (title,content)values('a1','a1');

到了這里,關(guān)于Web安全——數(shù)據(jù)庫(kù)mysql學(xué)習(xí)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包