1,创建数据库:CREATE DATABASE [IF NOT EXISTS] database_name;
简单实例:CREATE DATABASE IF NOT EXISTS mytestdb;
显示数据库:SHOW DATABASES;
使用数据库:USE database_name;
2,删除数据库:DROP DATABASE [IF EXISTS] database_name;
SHOW DATABASES;
DROP DATABASE IF EXISTS tempdb;
3,创建表:CREATE TABLE [IF NOT EXISTS] table_name(
column_list
) engine=table_type;
需要为engine子句中的表指定存储引擎。如:InnoDB,MyISAM,HEAP,EXAMPLE,CSV,ARCHIVE,MERGE, FEDERATED或NDBCLUSTER。如果不明确声明存储引擎,MySQL将默认使用InnoDB。
column_list部分指定表的列表。字段的列用逗号(,
)分隔。定义列:
column_name data_type[size] [NOT NULL|NULL] [DEFAULT value]
[AUTO_INCREMENT]
AUTO_INCREMENT指示每当将新行插入到表中时,列的值会自动增加。每个表都有一个且只有一个AUTO_INCREMENT列。
简单实例:创建一个tasks表
CREATE TABLE IF NOT EXISTS tasks (
task_id INT(11) NOT NULL AUTO_INCREMENT,
subject VARCHAR(45) DEFAULT NULL,
start_date DATE DEFAULT NULL,
end_date DATE DEFAULT NULL,
description VARCHAR(200) DEFAULT NULL,
PRIMARY KEY (task_id)
) ENGINE=InnoDB;
4,修改表结构:ALTER TABLE table_name action1[,action2,…]
<1>,修改列:添加自增长(AUTO_INCREMENT)
ALTER TABLE tasks
CHANGE COLUMN task_id task_id INT(11) NOT NULL AUTO_INCREMENT;
<2>,将新列添加到表中:添加一个名为complete的新列
ALTER TABLE tasks
ADD COLUMN complete DECIMAL(2,1) NULL
AFTER description;
<3>,删除列:删除列description
ALTER TABLE tasks
DROP COLUMN description;
<4>,ALTER重命名表:将tasks表重命名为work_items
ALTER TABLE tasks
RENAME TO work_items;
5,重命名表:
重命名一个或者多个表:RENAME TABLE old_table_name TO new_table_name;
除了表之外,我们还可以使用RENAME TABLE语句来重命名视图。在执行RENAME TABLE语句之前,必须确保没有活动事务或锁定表。RENAME TABLE不能用在临时表上,但可以使用ALTER TABLE语句重命名临时表。