理論 實驗 MySQL資料庫管理

2021-10-23 11:41:41 字數 3843 閱讀 3933

二、資料庫使用者授權

三、忘記資料庫密碼如何修改

mysql>	show databases;

+--------------------+

| database |

+--------------------+

| information_schema |

| mysql |

| performance_schema |

| sys |

+--------------------+

5 rows in set (0.00 sec)

mysql>	use 資料庫名;

mysql> show tables;

+------------------+

| tables_in_school |

+------------------+

| info |

+------------------+

1 row in set (0.00 sec)

mysql>	describe [資料庫名.]表名;		===>可以使用desc [資料庫名.]表名;
1.2.1 sql語言

1.2.2 sql分類

1.3.1 ddl語句可用於建立資料庫物件,如庫、表、索引等

1.3.2 使用ddl語句新建庫、表

mysql>	create database 資料庫名;
mysql>	create table 表名 (字段定義......);
create table 表名 (欄位01名稱 欄位01型別 欄位01約束,欄位02名稱 欄位02型別 欄位02約束,......)儲存引擎,字符集;

欄位01名稱: 屬性名稱,自定義

欄位01型別:

int(4): 整型 0000-9999

double 浮點型 8位元組

decimal(5,2) 有效數字是5位,小數點後面保留2位 100.00 099.50

float 單精度浮點 4位元組

char(10) 固定長度字串

varchar(50) 可變長度字串 可以超出

欄位01約束:

非空約束(not null) 內容不允許為空

主鍵約束(primary key) 非空且唯一 標識

預設值(default '未知') 加入沒有填資料,預設預先設定的值填寫

自增特性(auto_increment) id 從1開始

儲存引擎: innodb

字符集: utf-8

1.4.1 使用ddl語句刪除庫、表

mysql>	drop table [資料庫名.]表名;
mysql>	drop database 資料庫名;
insert:	插入新資料

update: 更新原有資料

delete: 刪除不需要的資料

mysql>	insert into 表名(欄位1,欄位2,欄位3,......) values (欄位1的值,欄位2的值,欄位3的值,.....);
mysql>	update 表名 set 欄位名1=值1[,欄位名2=值2] where 條件表示式;
mysql>	delete from 表名 where 條件表示式;
mysql>	delete from [資料庫名.]表名;		===>在當前資料庫裡面就可以不寫資料庫名
mysql>	select 欄位名1,欄位名2,...... from 表名;
mysql>	select 欄位名1,欄位名2,...... from 表名 where 條件表示式;
mysql>	delete from table_name;			

mysql> truncate table table_name;

臨時建立的表,用於儲存一些臨時資料,不會長期存在.

#連線斷開,臨時表被刪除

create temporary table mytest (

id int(3) not null auto_increment,

name varchar(10) character set utf8 collate utf8_bin notnull,

score decimal(5,2) not null,

address varchar(50) default '未知',

)engine=innodb default charset=utf8;

mysql>	create table newtest as select * from test;
#	like方法

mysql> create table newtest like test; ===>從test完整複製表的結構澀會給生成到newtest

mysql> insert into newtest select * from test; ===>匯入資料

#	show create table方法

mysql> show create table test\g; ===>檢視表的完整結構 \g===>表示以列顯示

# 建立表newtest

mysql> create table newtest(......);

# 匯入資料

mysql> insert into newtest select * from test;

mysql>	grant 許可權列表 on 資料庫名.表名 to 使用者名稱@@**位址 [identified by '密碼'];
#示例

mysql> grant select on auth.* to 'test'@'localhost' identified by '123456';

mysql>	show grants for 使用者名稱@**位址;
#示例

mysql> show grants for 'test'@'20.0.0.20';

mysql>	revoke 許可權列表 on 資料庫名.表名 from 使用者名稱@**位址;
#示例

mysql> revoke all on auth.* from 'test'@'20.0.0.20';

#配置檔案裡面設定語句進行跳過驗證

[root@localhost ~]# vim /etc/my.cnf

[mysqld]

......

skip-grant-tables ===>新增一條**

#進入mysql資料庫

mysql> use mysql;

mysql> update mysql.user set authentication_string=password('123456') where user='tom';

#修改好之後記得將之前新增的**刪除

MySQL理論 資料庫管理

1 檢視資料庫列表資訊 show databases 其中mysql為系統資料庫 2 檢視資料庫中的資料表資訊 1 進入資料庫 use musql 2 檢視資料表 show tables 3 顯示表結構資訊 字段 describe user 1 其中pri為主鍵 不能為空 定義 確定表中唯一實體物件...

資料庫 MySQL理論

儲存過程是乙個可程式設計的函式,它在資料庫中建立並儲存,它可以有sql語句和一些特殊的控制結構組成。當希望在不同的應用程式或者平台上執行相同的函式,或者封裝特定功能時,儲存過程是非常有用的。資料庫中的儲存過程可以看做是對程式設計中物件導向方法的模擬。它允許控制資料的訪問方式。b 樹 用於範圍查詢和單...

理論 MySQL資料庫管理(增 刪 改 查)

二 sql操作管理命令 mysql 是最流行的關係型資料庫管理系統,在 web 應用方面 mysql 是最好的 rdbms relational database management system 關聯式資料庫管理系統 應用軟體之一 mysql 是乙個關係型資料庫管理系統,由瑞典 mysql ab...