表詳細操作

2022-03-28 01:37:24 字數 2433 閱讀 2028

表的詳細操作:

1.修改表名:

alter table 舊表名 rename 新錶名

2.修改表的引擎與字元編碼:

alter table 表名 engine ='引擎名' charset='編碼名';

3.複製表

create table 新錶名 like 舊表名;(複製結構鍵不複製資料)

create table 新錶名 select * from 表名;(複製表結構加記錄(key 不會複製,主鍵外來鍵和索引))

create table 新錶名 select * from 表名 where 條件;(只複製表結構)

4.清空表:

truncate 表名:

表被清空,包括自增字段

表中字段的詳細操作:

1.需要改欄位資訊:

alter table 表名 modify 欄位名 型別[(寬度) 約束];

2.修改欄位名及資訊:

alter table 表名 change 舊欄位名 新欄位名 型別[(寬度) 約束];

3.新增欄位名:

(尾部新增)

alter table 表名 add 欄位名 型別[(寬度) 約束],add 欄位名 型別[(寬度) 約束];

(首部新增)

alter table 表名 add 欄位名 型別[(寬度) 約束] first;

(指定位置新增)

alter table 表名 add 欄位名 型別[(寬度) 約束] after 舊欄位名;

4.刪除欄位名:

alter table 表名 drop 欄位名:

特殊表使用者管理

操作前提:登入root使用者

1.重要字段:

host|user|password

2.新建使用者

create user 使用者名稱@主機名 identified by '密碼';

insert into mysql.user(host,user,password) values ("主機名",'使用者名稱',password('密碼'));(不建議使用)

3.設定使用者許可權

grant 許可權 on 資料庫名.表名 to 使用者名稱@主機名 [with grant option] by '密碼'';

grant all on 資料庫名.表名  to 使用者名稱@localhost identified by '密碼';

許可權有select,delete,update,insert,drop,all代表所有許可權

資料庫名錶名可以使用*替換,代表所有

設定許可權時如果沒有當前使用者,會自動建立使用者,提倡使用

4.撤銷許可權

revoke 許可權名 on 資料庫名.表名 from 使用者名稱@主機名;

5.修改密碼:

set password for 使用者名稱@主機名 = password('新密碼')(密文)

6.刪除使用者

drop user 使用者名稱@主機名;

表關係:

mysql資料庫建立表結構就是對錶資料進行分類管理

mysql建立的(**級別)表之間,需要處理表與表之間的關係

有多種關係:多對多,一對一,一對多

多對一:

建表規則:先建立主表,在建立從表,在從表中設定主表的唯一字段(通常為主鍵)作為外來鍵

插入記錄規則:先插入主表資料,再插入從表資料

更新刪除資料:

兩表間相互影響,

多對多:

建表規則:新建第三張表,通過兩個外來鍵形成多對多關係

一對一:

建表規則:未存放外來鍵的表被依賴,稱之為左表,存放外來鍵的表示為依賴表,稱之為右表,先操作左表在操作右表

如何找出兩張表之間的關係

分析步驟:

1.先站在左表的角度去找:

是否左表的多條記錄可以對應右表的一條記錄,如果是,則證明左表的乙個欄位foreign key 右表的乙個字段(通常為id)

2.在站在右表的角度去找

是否右表的多條記錄可以對應左表的一條記錄,如果是則證明右表的乙個欄位foreign key 左表的乙個字段(通常是id)

3.總結:

多對一:

如果只有步驟一成立,則是左表多對一右表

如果只有步驟二成立,則是右表多對一左表

多對多:

如果步驟1和2同時成立,則證明這兩張表是乙個雙向的多對一,則需要定義乙個這兩張表的關係表專門存放二者的關係

確保聯合唯一,

一對一:

如果1和2都不成立,而是左表的一條記錄唯一對應右表的一條記錄,反之亦然,就是在左表foreign key 右表的基礎上,將左表的外來鍵字段設定成unique即可

foreign key 關聯格式

foreign key(欄位名) references 表名(欄位名)

on delete cascade

on update cascade

同步增刪

表操作詳細語法

表操作有建立 修改 刪除 例如 在student表中增加乙個名為address的字段。alter table student add address varchar 30 修改address欄位 alter table student alter column address varchar 50 ...

mysql庫的表 MySQL的庫表詳細操作

二 表操作 1 儲存引擎 2 表介紹 表相當於檔案,表中的一條記錄就相當於檔案的一行內容,表中的一條記錄有對應的標題,稱為表的字段 第一行的id name2 age是字段,其餘的,一行內容稱為一條記錄。3 建立表 3.1 建表語法 語法 create table 表名 欄位名1 型別 寬度 約束條件...

Python操作登錄檔詳細步驟介紹

python操作登錄檔步驟之1 開啟登錄檔 對登錄檔進行操作前,必須開啟登錄檔。在python中,可以使用以下兩個函式 regopenkey和regopenkeyex。其函式原型分別如下所示。regopenkey key,subkey reserved sam regopenkeyex key,su...