初识mysql

什么是数据库

数据库(Database)就是按照数据结构来组织,存储和管理数据的仓库。
专业的数据库是专门对数据进行创建,访问,管理,搜索等操作的软件,比起我们自己用文件读写的方式对象数据进行管理更加的方便,快速,安全。
作用: 对数据进行持久化的保存;方便数据的存储和查询,速度快,安全; 可以处理并发访问;更加安全的权限管理访问机制
常见的数据库:关系型数据库: MySQL,Oracle,PostgreSQL,SQLserver…;非关系型数据库:Redis内存数据库,MongoDB文档数据库… MySQL是最流行的关系型数据库管理系统.
数据库的一些概念:数据库 Database,数据表 Tables,数据字段 ,行 row,列 .

MySQL基础操作

使用方法:

方式一: 通过在命令行敲命令来操作 ( 有助于命令的掌握)

方式二: 通过图型界面工具,如 Navicat 等(在熟练掌握后再使用)

方式三:通过编程语言(python,php,java,go…)执行mysql命令
SQL ( Structure query language ) 结构化查询语言
SQL语言分为4个部分:DDL(定义)、DML(操作)、DQL(查询)、DCL(控制).
操作数据库的步骤:
1.通过命令行连接MySQL
在这里插入图片描述

  1. 数据库操作
  2. 数据表操作
  3. 数据操作 增删改查
  4. 退出MySQL: exit; 或者 quit;

MySQL的数据类型

数据类型是定义列中可以存储什么类型的数据以及该数据实际怎样存储的基本规则,在设计表时,应该特别重视所用的数据类型。使用错误的数据类型可能会严重地影响应用程序的功能和性能。
1、字符串数据类型
有两种基本的串类型,分别为定长串char和变长串vchar
Text 变长文本类型存储
2、数值类型
数值数据类型存储数值。MySQL中没有专门存储货币的数据类型,一般情况下使用DECIMAL(8, 2),所有数值数据类型(除BIT和BOOLEAN外)都可以有符号或无符号:

  • 有符号数值列可以存储正或负的数值
  • 无符号数值列只能存储正数。
  • 默认情况为有符号,但如果你知道自己不需要存储负值,可以使用UNSIGNED关键字
    3、日期和时间类型
    MySQL使用专门的数据类型来存储日期和时间值,比如time,year
    4、二进制数据类型
    二进制数据类型可存储任何数据(甚至包括二进制信息),如图像、多媒体、字处理文档等

表的字段约束

  • unsigned 无符号(给数值类型使用,表示为正数,不写可以表示正负数都可以)
  • 字段类型后面加括号限制宽度
    • char(5). varchar(7) 在字符类型后面加限制 表示 字符串的长度
    • int(4) 没有意义,默认无符号的int为int(11),有符号的int(10)
    • int(4) unsigned zerofill只有当给int类型设置有前导零时,设置int的宽度才有意义。
  • not null 不能为空,在操作数据库时如果输入该字段的数据为NULL ,就会报错
  • default 设置默认值
  • primary key 主键不能为空,且唯一.一般和自动递增一起配合使用。
  • auto_increment 定义列为自增属性,一般用于主键,数值会自动加1
  • unique 唯一索引(数据不能重复:用户名)可以增加查询速度,但是会降低插入和更新速度
    MySQL的运算符:
  • 算术运算符: +、 -、 *、 /、 %
  • 比较运算符: =、 >、 <、 >=、 <=、!=
  • 数据库特有的比较: in、not in、is null、is not null、like、between、and
  • 逻辑运算符: and、or、not
  • like: 支持特殊符号%和_ ;
    主键:表中每一行都应该有可以唯一标识自己的一列,用于记录两条记录不能重复,任意两行都不具有相同的主键值;应该总是定义主键 虽然并不总是都需要主键,但大多数数据库设计人员都应保证他们创建的每个表具有一个主键,以便于以后的数据操纵和管理。
    注意: 记录一旦插入到表中,主键最好不要再修改 ,不允许NULL ,不在主键列中使用可能会更改的值。
    可以使用多个列作为联合主键,但联合主键并不常用。使用多列作为主键时,所有列值的组合必须是唯一的.

MySQL数据库与数据表操作

数据库的操作:
1.数据库的创建
create database if not exists tlxy default charset=utf8;
2.查看所有库
show databases;
3.打开库/进入库/选择库
use tlxy
4.删除库
drop database 库名
数据表的操作:
1.创建表
create table 表名(字段名,类型,【字段约束】,。。。);
2.修改表结构
语法格式:alter table 表名 action (更改的选项)
添加字段:
alter table 表名 add 添加的字段信息
删除字段:
alter table 表名 drop 被删除的字段名
修改字段:
alter table 表名 change|modify 被修改的字段信息
3.修改表名
alter table 原表名 rename as 新表名
4.更改表中的自增的值
alter table users auto_increment = 1000;
5.修改表引擎
alter table users engine = ‘myisam’
6.删除表
drop table 表名

MySQL 数据操作 DML

添加数据
insert into 表名[(字段列表)] values(值列表…);
修改数据
update 表名 set 字段1=值1,字段2=值2,字段n=值n… where 条件
删除数据
delete from 表名 [where 条件]
数据查询SQL
select 字段列表|* from 表名
[where 搜索条件]
[group by 分组字段 [having 分组条件]]
[order by 排序字段 排序规则]
[limit 分页参数]
Where 条件查询:

  • 可以在where子句中指定任何条件
  • 可以使用 and 或者 or 指定一个或多个条件
  • where条件也可以运用在update和delete语句的后面
  • where子句类似程序语言中if条件,根据mysql表中的字段值来进行数据的过滤

统计函数(聚合函数):
max(),min(),count(),sum(),avg()
Group BY 分组:
group by 语句根据一个或多个列对结果集进行分组
一般情况下,是用与数据的统计或计算,配合聚合函数使用
Order by 排序
我们在mysql中使用select的语句查询的数据结果是根据数据在底层文件的结构来排序的,
首先不要依赖默认的排序,另外在需要排序时要使用orderby对返回的结果进行排序,Asc 升序,默认desc降序
Limit 数据分页:

  • limit n 提取n条数据,
  • limit m,n 跳过m跳数据,提取n条数据
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值