第一步:下载安装文件 mysql-installer-community-5.7.24.0.msi
第二步:点击安装
选 server only或developer default
设置端口:保持默认3306
设置root用户密码(记录下来)
添加用户,并设置密码
第三步:确认
在命令行模式下输入:netstat -an | findstr 3306
查看服务端口是否处于监听状态
数据库建表命令
查看库命令:show databases;
创建库命令:create database eshop(库名) default charset=utf8(编码格式)
进入数据库:use eshop(库名);
查看表:show tables();
查看当前所在位置:select database();
查看某个表的建表语句:show create table 表名
查看某个库的建库语句:show create database eshop(库名)
删除库:drop database eshop(库名);
删除表:drop table 表名;
创建表: create table 表名称( 字段1 类型(长度) 约束, 字段2 类型(长度) 约束,)【字符集】
eg: create table orders(表名)( order_id(地段) varchar(32),(类型的长度) cust_name varchar(32) ) default charset=utf8
查看表结构: desc 表名
向表中插入一条数据:insert into orders values( 要插入的数据)
insert into orders values( “201801000”,“c0001”,now(),1,1,100.00);
向表中插入多条数据: insert into 表名(字段名列表)values(值列表1),(值列表2)。。。。(值列表n)
insert into orders values(‘201801010003’,‘c0003’,now(),1,2,200.00),(‘201801010004’,‘c0004’,now(),1,3,580.00)
向表中插入指定字段数据: insert into 表名(字段名列表)values(值列表)
insert into orders(orders_id, cust_id) values(‘201801010012’,‘c0002’);
查询数据
select * from 表名【where 查询条件】
select * from orders; 查询所有字段
select *from orders where order_id=“201802312”; 带条件查询
select * from orders where order_id =“201821313121"and status=1; 同时满足两个条件
select * from orders where order_id =“201821313121” or status=1; 满足其中一个
select 字段1, 字段2 from 表名 【where 查询条件】
select order_id ,order_date from orders; 查询指定字段
查询指定字段,给每一个字段一个别名
select order_id “订单编号”,order_date"下单时间” from orders;
数值类型
create table num_test(
type int(3) unsigned zerofill,-- 显示3位,无符号,左边0填充
rate decimal(10,2)
);
insert into num_test values(1, 0.88); – 正常值
insert into num_test values(2, 123.456); – 浮点部分超长,四舍五入
insert into num_test values(3,2); – 浮点数字段插入整数
insert into num_test values(1000,3.444); – 整数部分超宽,全部显示
unsigned 被修饰的字段只能为正数
zerofill 当使用该属性时 左边会以0补位
枚举类型
示例:
create table enum_test(
name varchar(32),
sex enum(‘boy’, ‘girl’),
course set(‘music’, ‘dance’, ‘paint’, ‘football’)
);
insert into enum_test values(‘Jerry’, ‘girl’, ‘music,dance’);
insert into enum_test values(‘Tom’, ‘boy’, ‘football’);
insert into enum_test values(‘Dekie’, ‘boy’, ‘football,bascketball’);-- 超出枚举范围,报错
时间类型
获取系统当前时间
select now(),sysdate();
获取系统当前日期,时间
select curdate(), curtime();
取得系统当前时间的年份、月份、日
select year(now()), month(now()), day(now());
将当前系统时间转换为日期、时间类型
select date(now()), time(now());
关系模型的重要概念
关系:规范的二维表,由行和列组成;每一列都不可再分,表中行顺序
不重要
实体:现实中可以区分的事物
元组:二维表中的一行,每个元组记录一个实体信息
属性:二维表中的一列,描述实体的某个特征
键:关系中唯一区分不同元组的属性或属性组合
主键:从逻辑上唯一确定一个实体,多个键中选取一个作为主键,一个
关系只能有一个主键;主键非空、唯一