標籤:mysql 資料庫的建立、刪除 表的建立、刪除、修改
資料庫的建立、刪除
一、資料庫相關的命令
資料庫的建立
create {database|schema} db_name [character set=] [collate = ];建立資料庫。如果資料庫以存在會報錯
create {database|schema} [if not exists] db_name [character set=] [collate = ];表示如果這個資料庫不存在則建立
其中[character set = ] 用來設定預設字元集
[collate = ]用來設定定序
資料庫的刪除
drop {database|schema} [if existx] db_name;刪除某個資料庫
修改資料庫的預設字元集和定序
ALTER {DATABASE | SCHEMA} [db_name] [DEFAULT] CHARACTER SET [=] charset_name
| [DEFAULT] COLLATE [=] collation_name
查看所有的資料庫
show {databases|schemas};
use db_name 選擇某個資料庫
如果想擷取更多關於如何建立、刪除資料庫,可以使用如下命令:
mysql>help KEYWORD
例如:help create database; or help drop database;
二、與表相關的命令
表的建立
建立表有三種方式:
1、直接定義一張空表
create table tb_name(colum1,colum2...date_type [primary key] [not null] [unsigned] [default value] [unique key]) [tables_options]; 由於建立表就是建立列的過程,因此括弧內的參數就是列的屬性欄位。
提示:如果在建立表的時候,有多個欄位一起作為主鍵(primary key)和唯一鍵(unique key),那麼可以在建立表的時候,單獨定義。當然一個欄位作為主鍵和唯一鍵也可以單獨定義。
例如:CREATE TABLE tb2 (id INT UNSIGNED NOT NULL AUTO_INCREMENT, Name CHAR(20) NOT NULL, Age TINYINT NOT NULL, PRIMARY KEY(id,name),INDEX(age))
2、使用select查詢語句從其他表中查出資料,並以之建立為表
CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name
[(create_definition,...)]
[table_options]
select_statement
使用該方法建立的表的表結構會發生改變,不會和select_statement中的表的表結構相同
3、以其他表為模板建立一個空表
CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name
{ LIKE old_tbl_name | (LIKE old_tbl_name)
使用該方法建立的表的表結構和模板表的表結構相同
[tables_options]
在建立表的時候,可以指定一些選項。其中,常見的選項有這些:
ENGINE [=] engine_name 指定表的儲存引擎
[DEFAULT] CHARACTER SET [=] charset_name 設定預設字元集
[DEFAULT] COLLATE [=] collation_name 設定預設定序
MAX_ROWS [=] value 指定允許表建立的最大行數
刪除表
DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name
修改表
alter table tb_name
MODIFY [COLUMN] col_name column_definition:表示修改欄位的屬性參數(欄位後的參數)
CHANGE [COLUMN] old_col_name new_col_name column_definition:表示修改欄位名稱
ADD [COLUMN] (col_name column_definition,...):表示增加某些列
ADD {INDEX|KEY} [index_name] [index_type] (index_col_name,...) [index_option]
增加索引欄位
DROP [COLUMN] col_name 刪除某欄位
| DROP PRIMARY KEY 刪除主鍵
| DROP {INDEX|KEY} index_name 刪除索引
| DROP FOREIGN KEY fk_symbol 刪除外鍵
表的重新命名
mysql> RENAME TBALE old_table TO new_tables;
查看錶的相關命令
show tables from db_name;查看庫中的表
desc tb_name;查看錶的結構
更多相關命令的使用,使用help KEYWORD來獲得
建立索引
CREATE INDEX index_name [index_type] ON tb_name (col_name [(length)] [ASC | DESC],...);
其中length表示能夠索引的長度,[ASC | DESC]表示以升序或降序的方式排列起來。
SHOW INDEX FROM tb_name:顯示指定表上的索引
鍵也稱作約束,可用作索引,屬於特殊索引(有特殊限定):預設索引類型為B+Tree
索引類型有:BTREE和HASH索引
本文出自 “linux學習之路” 部落格,請務必保留此出處http://xslwahaha.blog.51cto.com/4738972/1576682
mysql資料庫的庫和表相關命令