/*啟動mysql */net start mysql
/*連線與斷開伺服器 */mysql -h 位址 -p 埠 -u 使用者名稱 -p 密碼
/*跳過許可權驗證登入mysql */mysqld --skip-grant-tables--修改root密碼
密碼加密函式password()
update mysql.user set password=password('root');
show processlist --顯示哪些執行緒正在執行
show variables --
/*資料庫操作 */ --------------------檢視當前資料庫select database();
--顯示當前時間、使用者名稱、資料庫版本
select now(), user(), version();
--建立庫
create database[if not exists]資料庫名 資料庫選項
資料庫選項:
character setcharset_name
collate collation_name
--檢視已有庫
show databases[like 'pattern']
--檢視當前庫資訊
show create database資料庫名
--修改庫的選項資訊
alter database庫名 選項資訊
--刪除庫
drop database[if exists]資料庫名
同時刪除該資料庫相關的目錄及其目錄內容
/*表的操作 */ --------------------建立表
create [temporary] table[if not exists] [庫名.]表名 ( 表的結構定義 )[表選項]每個字段必須有資料型別
最後乙個欄位後不能有逗號
temporary臨時表,會話結束時表自動消失
對於欄位的定義:
欄位名 資料型別 [not null | null] [default default_value] [auto_increment] [unique [key] | [primary] key] [comment 'string']
--表選項
--字符集
charset =charset_name
如果表沒有設定,則使用資料庫字符集
--儲存引擎
engine =engine_name
表在管理資料時採用的不同的資料結構,結構不同會導致處理方式、提供的特性操作等不同
常見的引擎:innodb myisam memory/heap bdb merge example csv maxdb archive
不同的引擎在儲存表的結構和資料時採用不同的方式
myisam表檔案含義:.frm表定義,.myd表資料,.myi表索引
innodb表檔案含義:.frm表定義,表空間資料和日誌檔案
show engines --顯示儲存引擎的狀態資訊
show engine 引擎名 --顯示儲存引擎的日誌或狀態資訊
--資料檔案目錄
data directory = '目錄'
--索引檔案目錄
index directory = '目錄'
--表注釋
comment = 'string'
--分割槽選項
partition by... (詳細見手冊)
--檢視所有表show tables[like 'pattern']show tables from表名
--檢視表機構
show create table表名 (資訊更詳細)
desc 表名 / describe 表名 / explain 表名 / show columns from 表名 [like 'pattern']show table status [from db_name] [like 'pattern']
--修改表
--修改表本身的選項
alter table表名 表的選項
eg: alter table 表名 engine=myisam;
--對錶進行重新命名
rename table 原表名 to新錶名
rename table 原表名 to庫名.表名 (可將表移動到另乙個資料庫)
--rename可以交換兩個表名
--修改表的字段機構
alter table表名 操作名
--操作名
add[column] 欄位名 --增加字段
after 欄位名 --表示增加在該欄位名後面
first --表示增加在第乙個
add primary key(欄位名) --建立主鍵
add unique [索引名] (欄位名)--建立唯一索引
add index [索引名] (欄位名) --建立普通索引
add
drop[column] 欄位名 --刪除字段
modify[column] 欄位名 字段屬性 --支援對欄位屬性進行修改,不能修改欄位名(所有原有屬性也需寫上)
change[column] 原欄位名 新欄位名 字段屬性 --支援對欄位名修改
drop primary key --刪除主鍵(刪除主鍵前需刪除其auto_increment屬性)
drop index 索引名 --刪除索引
drop foreign key 外來鍵 --刪除外來鍵
--刪除表
drop table[if exists]表名 ...
--清空表資料
truncate [table]表名
--複製表結構
create table 表名 like要複製的表名
--複製表結構和資料
create table 表名 [as] select * from要複製的表名
--檢查表是否有錯誤
check table tbl_name [, tbl_name] ... [option]...
--優化表
optimize [local | no_write_to_binlog] table tbl_name [, tbl_name]...
--修復表
repair [local | no_write_to_binlog] table tbl_name [, tbl_name] ... [quick] [extended] [use_frm]
--分析表
analyze [local | no_write_to_binlog] table tbl_name [, tbl_name]...
/*資料操作 */ --------------------增
insert [into] 表名 [(字段列表)] values (值列表)[, (值列表), ...]
--如果要插入的值列表包含所有字段並且順序一致,則可以省略字段列表。
--可同時插入多條資料記錄!
replace 與 insert完全一樣,可互換。
insert [into] 表名 set 欄位名=值[, 欄位名=值, ...]
--查 select 字段列表 from 表名[其他子句]
--可來自多個表的多個字段
--其他子句可以不使用
--欄位列表可以用*代替,表示所有字段
mysql學習筆記 51 mysql學習筆記
初學mysql時整理,隨時更新 資料操作 增 insert into 表名 字段列表 values 值列表 值列表 如果要插入的值列表包含所有字段並且順序一致,則可以省略字段列表。可同時插入多條資料記錄!replace 與 insert 完全一樣,可互換。insert into 表名 set 欄位名...
mysql學習筆記 51 Mysql 學習筆記
一.首先進入mysql mysql u root p新增使用者許可權設定 grant all privileges on to jerry localhost identified by aa1234567 只允許本機訪問 grant all privileges on to jerry 10.80...
mysql做筆記 mysql學習筆記
alter table 新增,修改,刪除表的列,約束等表的定義。檢視列 desc 表名 修改表名 alter table t book rename to bbb 新增列 alter table 表名 add column 列名 varchar 30 刪除列 alter table 表名 drop ...