亞寵展、全球?qū)櫸锂a(chǎn)業(yè)風向標——亞洲寵物展覽會深度解析
783
2025-03-31
數(shù)據(jù)庫的操作:數(shù)據(jù)庫創(chuàng)建 ;數(shù)據(jù)庫刪除
數(shù)據(jù)表的操作:數(shù)據(jù)表的創(chuàng)建;數(shù)據(jù)表的修改 (表結(jié)構(gòu)) ;數(shù)據(jù)表的刪除
數(shù)據(jù)庫的操作
1.數(shù)據(jù)庫的創(chuàng)建
# 鏈接MySql數(shù)據(jù)庫后,進入mysql后可以操作數(shù)據(jù)
# 1. 創(chuàng)建庫
create database if not exists tlxy default charset=utf8;
-- 1. 數(shù)據(jù)庫 tlxy 如果不存在則創(chuàng)建數(shù)據(jù)庫,存在則不創(chuàng)建
-- 2. 創(chuàng)建 tlxy 數(shù)據(jù)庫,并設(shè)置字符集為utf8
-- 3. 無特殊情況都要求字符集為utf8或者utf8mb4的字符編碼
2.查看所有庫
# 1. 查看所有庫 show databases;
3.打開庫/進入庫/選擇庫
# use 庫名 use tlxy
4.刪除庫
刪庫有風險,動手需大膽(哈哈哈,大不了西紅柿帶你跑路)
# 刪除庫,那么庫中的所有數(shù)據(jù)都將在磁盤中刪除。 drop database 庫名
數(shù)據(jù)表的操作
1.創(chuàng)建表
語法格式:
create table 表名(字段名,類型,【字段約束】,。。。); 實例:
# 以下創(chuàng)建一個 users 的表 create table users(
-- 創(chuàng)建ID字段,為正整數(shù),不允許為空 主鍵,自動遞增
id int unsigned not null primary key auto_increment,
-- 創(chuàng)建 存儲 名字的字段,為字符串類型,最大長度 5個字符,不允許為空 username varchar(5) not null,
-- 創(chuàng)建存儲 密碼 的字段,固定長度 32位字符, 不允許為空
password char(32) not null,
-- 創(chuàng)建 年齡 字段,不允許為空,默認值為 20
age tinyint not null default 20
)engine=innodb default charset=utf8;
# 查看表結(jié)構(gòu) desc users;
#查看建表語句
show create table users;
創(chuàng)建表的基本原則:
表明和字段名 盡可能的符合命名規(guī)范,并且最好能夠‘見名之意’
表中數(shù)據(jù)必須有唯一標示,即主鍵定義。無特殊情況,主鍵都為數(shù)字并自增即可
表中字段所對應(yīng)的類型設(shè)置合理,并限制合理長度
表引擎推薦使用innodb,并無特殊情況都要求為utf8或者utf8mb4的字符編碼
2.修改表結(jié)構(gòu)
語法格式:alter table 表名 action (更改的選項)
添加字段
# 語法:alter table 表名 add 添加的字段信息 --在users表中 追加 一個num字段
alter table users add num int not null;
-- 在指定字段后面追加字段 在 users 表中 age字段后面 添加一個 email 字段 alter table users add email varchar(50) after age;
-- 在指定字段后面追加字段,在 users 表中 age字段后面 添加一個 phone alter table users add phone char(11) not null after age;
-- 在表的最前面添加一個字段
alter table users add aa int first;
刪除字段
# 刪除字段 alter table 表名 drop 被刪除的字段名 alter table users drop aa;
修改字段
語法格式: alter table 表名 change|modify 被修改的字段信息 change: 可以修改字段名,
modify: 不能修改字段名。
# 修改表中的 num 字段 類型,使用 modify 不修改表名
alter table users modify num tinyint not null default 12;
# 修改表中的 num 字段 為 int并且字段名為 nn alter table users change num mm int;
# 注意:一般情況下,無特殊要求,不要輕易修改表結(jié)構(gòu)
3.修改表名
# 語法:alter table 原表名 rename as 新表名
4.更改表中的自增的值
# 在常規(guī)情況下,auto_increment 默認從1開始繼續(xù)遞增 alter table users auto_increment = 1000;
5.修改表引擎
# 推薦在定義表時,表引擎為 innodb。
# 通過查看建表語句獲取當前的表引擎
mysql> show create table users\G;
*************************** 1. row ***************************
Table: users
Create Table: CREATE TABLE `users` (
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1001 DEFAULT CHARSET=utf8
1 row in set (0.00 sec)
# 直接查看當前表狀態(tài)信息
mysql> show table status from tlxy where name = 'users'\G; *************************** 1. row ***************************
Name: users
Engine: InnoDB
# 修改表引擎語句
alter table users engine = 'myisam';
6.刪除表
drop table 表名
MySQL 數(shù)據(jù)庫
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔相應(yīng)法律責任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔相應(yīng)法律責任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。