常用数据类型
1、int:整形
2、double(m,d)
decimal(m,d):浮点数类型 (m指定长度,d表示小数点位数)
3、varchar(size):字符串类型
4、timestamp:日期类型
数据库基本操作
不管执行什么语句,都要在语句的最后加上;(分号)。
1、创建数据库
create database 数据库名;
2、显示当前数据库
show databases;
3、删除数据库
drop database 数据库名;
4、使用数据库
use 数据库名;
5、创建表
create table 表名;
6、查看表结构
desc 表名;
7、插入数据
insert into 表名 values(对照列的类型写入);
8、查找语句
全列查找
select * from 表名;
指定列查询
select 列名,列名…… from 表名;
指定查询字段为表达式(在查询时,同时进行一些运算)
select 列名+(-*/)列名 from 表名;
查询字段指定别名
select 列名…… as 别名 from 表名;
针对查询结果去重
select distinct 列名 from 表名;
针对查询结果进行排序
select * from 表名 order by 列名 asc/desc;//升序/降序
分页查询
select * from 表名 limit n;// 从0开始,筛选n条结果 select * from 表名 limit n offset s;//从s开始,筛选n条结果
条件查询
select 列名 from 表名 where 条件;
常用运算符:
and,or,not 与或非 (and优先级比or高)
>,>=,<,<= 大于,大于等于……
= 比较相等,不比较NULL
<=>比较相等,比较NULL
!=,<> 不等于
between a and b 范围匹配,在闭区间 [a,b]范围内
in (option, ...) 如果是 option 中的任意一个,返回 TRUE(1)
is NULL 是 NULL
is not NULL 不是 NULL
like 模糊匹配,% 表示任意多个(包括 0 个)任意字符;_ 表示任意一个字符
以上查找的结果都是一个"临时表",数据库的表都是在硬盘上的,而此处的这个查询结果临时表,不是在硬盘上,而是在内存中,随着进行了输出之后,数据也就被释放了。所以上面操作都是对临时表操作,对原始数据不会产生影响。
当用户输入sql之后,客户端就会把这个sql包装成网络请求,发给服务器,服务器这边收到请求之后,就会操作硬盘,从硬盘中读取数据把数据包装成响应。客户端收到这个响应数据之后,就会临时的在内存中把这个响应结果保存起来并且在显示器上输出(标准输出上打印)随着打印完毕,在客户端内存中保存的结果数据也就被释放了。
9、修改语句
update 表名 set 列名=值…… where 条件;
10、删除语句
delete from 表名 where 条件;
这里修改的是原始数据。
举例说明:
创建数据库:
显示当前数据库:
创建名为student的表(需要操作数据库中的表时,需要先使用该数据库):
查看表结构:
插入并查看:
insert进行插入的时候,可以只插入其中的某一列或者某几个列的. 此时其他的列将采用默认值
可一次性插入多列,用(),隔开
如果某一种类型是datetime,可以用以下三种方式插入
查找:
指定列查找
指定查询字段为表达式
查询字段指定别名
针对查询结果去重
针对查询结果进行排序
升序
降序
如果有NULL值,默认NULL值为最小值
条件查询
% 匹配任意多个(包括 0 个)字符 ,可以匹配到任意张开头的名字
_ 匹配严格的一个任意字符 ,一个_能匹配到一个字符。
分页查询
查询前三名的成绩
修改:
把张三语文成绩改为80
把所有人语文成绩进行修改
将总分前三的每个人语文成绩加上10
删除:
约束类型
1、not null--- 指示某列不能存储 NULL 值。
2、unique---保证某列的每行必须有唯一的值。
3、default---规定没有给列赋值时的默认值。
指定默认值后,没有给该列赋值时,该列默认值为指定默认值。
4、primary key(最重要的约束)not null 和 unique 的结合。确保某列(或两个列多个列的结合)有有唯一标识,有助于更容易更快速地找到表中的一个特定的记录。 主键约束,相当于数据的唯一标识。对于一个表来说,只能有一个列被指定为主键。
自增主键 primary key auto_increment,当设定好自增主键之后,此时插入的记录,就可以不指定自增主键的值了(直接使用null来表示) ,交给mysql自行分配即可。
5、foreign key ---保证一个表中的数据匹配另一个表中的值的参照完整性。
也称外键约束,描述的是两张表的两个列之间的"依赖关系”子表依赖于父表(子表引用自父表)要求子表中对应的记录得在父表中存在。
举个例子:创建一个班级表和学生表如下,每个学生都要都属于一个具体的班级,这个班级首先得存在,这里学生表依赖班级表,就把学生表称为”子表“,班级表称为”父表“。
这种情况就可以用外键约束来描述。
外键约束,描述的是两张表的两个列之间的"依赖关系",子表依赖于父表(子表引用自父表)要求子表中对应的记录得在父表中存在,班级表中的班级只有1,2,3,此时我在子表学生表中插入一个班级为10,就会出现错误,插入失败。
插入班级表中有的班级就能插入成功。
外键约束也同样在约束父表,当父表中的某个记录被子表依赖的时候,此时尝试删除修改都会失败。
到此这篇关于MySql常用数据类型与操作详解的文章就介绍到这了,更多相关MySql常用数据类型内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!