Mysql(一)——基础知识

一、数据库简介

1.存储数据的方式有哪些
特定文件/内存/第三方云服务器/数据库服务器

2.什么是数据库
数据库是按照一定的形式组织存储数据,目的是为了更好的操作数据 —— 增删改查

(1)数据库的发展历史
网状数据库 -> 层次型数据库 -> 关系型数据库 -> 非关系型数据库(NoSQL)

(2)关系型数据库逻辑结构
Server -> Database -> Table -> Row -> Column
服务器 数据库 数据表 行 列

3.mysql数据库
Oracle: mysql
马丁: MariaDB
XAMPP:服务器套装,包含有多款服务器,包含mysql,Apache

4.mysql命令
客户端连接服务器端:

mysql.exe -h127.0.0.1 -P3306 -uroot -p

  • -h host IP地址/域名 127.0.0.1/localhost (指向自己电脑)
  • -P port 端口号
  • -u user 用户名 root 管理员账户
  • -p password 密码 xampp下root密码为空

连接命令的结尾不能加分号,否则是游客。

常用的管理命令:
所有的管理命令都以英文的分号结尾

命令描述
quit;退出连接
mysql -uroot -p连接数据库
show databases;显示当前服务器下所有的数据库
use [database name]改变目标数据库
show tables;显示当前数据库的所有表

5. 标准的SQL命令分类
定义数据(DDL):create/drop/alter(修改)
操作数据(DML):insert/delete(删除)/update(修改数据)
查询数据(DQL):select
控制权限(DCL):grant(授权)/revoke(收权)

6.常用的SQL命令
(1)删除数据
delete from user where uid=’2’;
(2)修改数据
update user set upwd=’666666’,isOnline=’n’ where uid=’3’;

二、计算机存储字符

1.如何存储?
(1)英文字符

  1. ASCII:总共有128个,对所有的英文字母及其符号进行了编码
  2. Latin-1:总共有256个,对欧洲字符进行的编码,兼容ASCII

(2)中文字符

  • GB2312:对常用的6千多汉字进行了编码,兼容ASCII
  • GBK:对2万多汉字进行了编码,兼容GB2312
  • BIG5:台湾繁字体编码
  • Unicode:对世界上主流国家常用的语言进行了编码,兼容ASCII,具体存储方案utf-8,utf-16,utf-32

2.mysql中文乱码产生的原因
mysql默认使用Latin-1编码,没有对中文进行编码
解决乱码

  • 脚本文件另存为的编码为utf-8
  • 客户端连接服务器端的编码为utf-8
  • 服务器端创建数据库使用的存储编码为utf-8

三、约束和自增

1.列约束

(1)默认值约束 —— default

可以使用default来设置默认值和应用默认值
具体应用默认值有两种方式:

  1. insert into laptop values(4, ‘小米Air’, default, ....);

  2. insert into laptop(lid,title) values(5,’小新700’);

给特定的列提供值,没有出现的列自动应用默认值

(2)检查约束 —— check
称作自定义约束,可以自己添加约束条件

 create  table  student(
    score  tinyint  check( score>=0  and  score<=100 )
);

tip:mysql不支持检查约束,会极大的影响数据的插入速度,后期使用js代替。

(3)外键约束
声明了外键约束的列,取值范围会在另一个表的主键列
注意事项:外键列要和对应的另一个表主键列的列类型保持一致
foreign key(外键列) references 另一个表(主键列)

2.自增列

auto_increment
自动增长,在插入值的时候只需要赋值为null,就会自动获取最大值然后加1插入。

注意事项:
自增列必须添加在整数形式的主键列;允许手动赋值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

你脸上有BUG

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值