创建一个库 create database [if not exists] [库名];
删除一个库 drop database [if exists] [库名];
使用库 use 库名
创建表
create table 表名(
列名 列类型 [约束] ,
列名 列类型 [约束] ,
列名 列类型 [约束] ,
.....
列名 列类型 [约束] ,
[约束]
)engine=Innodb
查看库中有哪些表 show tables;
查看表的结构
-- MySQL语法
desc 表名;
-- 结果集 ResultSet
+-----------+--------------+------+-----+--
-------+-------+
| Field | Type | Null | Key |
Default | Extra |
+-----------+--------------+------+-----+--
-------+-------+
| id | int(11) | YES | |
NULL | |
| username | varchar(200) | YES | |
NULL | |
| loginname | varchar(200) | YES | |
NULL | |
| password | varchar(200) | YES | |
NULL | |
| birthday | date | YES | |
NULL | |
| salary | double | YES | |
NULL | |
+-----------+--------------+------+-----+--
-------+-------+
查看建表语句 show create table t_employee;
修改表名 alter table 表名 rename to 新名字
添加字段 alter table 表名 add column (列名 列类型 , ......)
删除字段 alter table 表名 drop column 列名
修改字段名 -- 是 标准SQL 的语法 alter table 表名 rename column 旧字段名 to 新 字段名
-- 此处比较特殊,MySQL的语法为 alter table 表名 change 旧字段名 新字段名 字段类 型
修改字段类型 alter table 表名 modify 字段名 新类型
# 如果要修改的字段中已经有值,可能会报错,如果数据能 够自动转为新类型,那 么不会报错
删除表 drop table t_emp;
添加(Create)
-- insert into 表名 values (列1的值,列2的值....,最后一列的值);
insert into
t_employee
values
(null,'zhangsan','zs','123','2012-12-22',4000)
要求 列1的值,列2的值....,最后一列的值部分 顺序和 个 数 必须和 创建表时的列的顺序和个数一致(desc 表名 查看顺序)可读性差,不建议使用 如果ID设置了自增长, 可以传入null
-- insert into 表名 (列1,列2....,列N) values(列1的值,列2的值....,列N的值);
insert into
t_employee (loginname,password,salary)
values
('lname',3845,6000);
建议使用
删除操作(Delete)
-- delete from 表名 : 删除表中的所有的数据
-- delete from 表名 where 条件
delete from
t_employee
where
id = 3;
如果要删除的数据是 主表数据, 那么 从表中 不能有 数 据 引用 主表要删除的数据
修改操作(Update)
-- 修改表中的所有的数据
-- update 表名 set 列名=新值 , 列名=新值 , ....
列名=新值
-- 根据条件修改
-- update 表名 set 列名=新值 , 列名=新值 , ....
列名=新值 where 条件
update t_employee set salary = 6000 where
username = 'zhangsan';
update t_employee set salary = salary *1.5;
查询(Read)
基础查询
-- 查询某张表中的所有的数据,* 代表的是所有的列
-- select * from 表名;
-- 查询某张表中的所有的数据
-- select 列1, 列2, 列3 ... from 表名
select * from t_dept;
select id,name from t_dept;
select
name
from
t_dept;
条件查询
select * from 表名 where 查询的条件 and | or查询的条件 ....