创建表
语法:create table 表名 (字段名 类型, 字段名 类型, 字段名 类型);
mysql> use HA;
查看表信息
mysql> show tables;
查看表结构
mysql> desc student;
还可以用以下命令查看表结构,会一种就可以。
mysql> explain mysql.user;
mysql> show columns from mysql.user;
mysql> show fields from mysql.user;
mysql> show columns from mysql.user like ‘%user’;
查看创建表用了那些命令
mysql> show create table student \G
指定默认字符集和存储引擎
mysql> create table student2(id int(20),name char(40),age int) ENGINE=InnoDB DEFAULT CHARSET=utf8;
删除表
mysql> drop table student2;
修改表名称
语法:alter table 表名 rename 新表名;
修改表中字段类型
语法:alter table 表名 modify 要修改的字段名 要修改的类型;
修改表中字段类型字段名称
语法:alter table 表名 change 原字段名 新字段名 新字段类型;
注:CHANGE 和MODIFY的区别:
CHANGE 对列进行重命名和更改列的类型,需给定旧的列名称和新的列名称、当前的类型。 MODIFY 可以改变列的类型,此时不需要重命名(不需给定新的列名称)
在表中添加字段
语法:alter table 表名 add字段名 字段类型;
在指定位置添加字段
第一行添加
mysql> alter table students add uid int(10) first;
在指定位置添加
mysql> alter table students add address char(40) after age;
删除表中字段
语法:alter table 表名 drop 字段名 ;
1 表中插入数据
INSERT INTO 语句用于向表中插入新的行。
语法:insert into 表名values (字段值1,字段值2, 字段值3);
插入记录时values所指定的值要和表中字段的个数、顺序以及类型要一一对应。
同时插入多条数据
mysql> insert into students values(2,‘lis’,24),(3,‘wange’,26);
分开插入
INSERT INTO table_name (字段1, 字段2,…) VALUES (字段值1, 字段值2,…)
2 查询表中记录select
SELECT 语句用于从数据库表中读取数据。
语法:
select * from 表名; # *号表示表中所有的字段
查询指定字段内容
mysql> select name from students;
查看别的数据库的表或者不在本数据库上进行查看
语法:SELECT 字段 FROM 数据库名.表名;
效果等同于先使用use数据库,然后再看看表内容
mysql> select * from HA.students;
3 删除表中记录
DELETE FROM table_name WHERE some_column=some_value;
WHERE 子句规定哪条记录或者哪些记录需要删除。如果您省略了 WHERE 子句,所有的记录都将被删除!
删除字段为空值的行
mysql> delete from students where age is null;
4 更新记录
UPDATE table_name
SET column1=value1,column2=value2,…
WHERE some_column=some_value;
更新多个字段值用逗号隔开
mysql> update students set id=1,name=‘zhangsan’ where age=21;
5 条件查询
Distinct 去重复查询
mysql> select distinct name,age from students;
使用and or 多条件查询
mysql> select id,name,age from students where id>3 and age>25;
mysql> select id,name,age from students where id>3 or age>25;
6 区分大小写查询
BINARY是类型转换运算符,它用来强制它后面的字符串为一个二进制字符串,可以理解为在字符串比较的时候区分大小写。
mysql> select * from students where binary name=‘kill’;
查询排序
语法:select字段1,字段2 from 表名order by 字段名;
正序 asc
反序 desc
7 Mysql数据类型
数据类型是数据的一种属性,其可以决定数据的存储格式,有效范围和相应的限制。mysql的数据类型包括整数类型,浮点数类型,日期和时间类型,字符串类型和二进制类型。
MySQL中定义数据字段的类型对你数据库的优化是非常重要的。
为什么定义数据类型 为什么数据分类
1、使系统能够根据数据类型来操作数据。
2、预防数据运算时出错。
例:通过强大的数据分类把每个类型与特定的行为联系在一起,执行这些行为时,数据分类可以预防错误。最长见的错误是字符与数字相加。
3、更有效的利用空间。数据分类,可以使用最少的存储来存放数据,同时提高性能。
MySQL支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。
时间日期类型