mysql安装、启动、链接
命令:
启动 mysqld
链接 mysql -uroot -p
show databases;
use 数据库名;
show tables;
exit/quit
停止服务:mysqladmin -u root -p shutdown;
数据类型
数字 int
字符 char varchar
日期 date time datetime
库、表、字段
乱码问题
数据库默认的编码格式:latin1
设置:utf8/utf8mb4
服务式启动mysql
my.ini
[mysqld]
character-set-server = utf8mb4
[mysql]
default-character-set = utf8mb4
[mysql.server]
default-character-set = utf8mb4
[mysqld_safe]
default-character-set = utf8mb4
[client]
default-character-set = utf8mb4
查看编码
show variables like "%character%";
character_set_client为客户端编码方式;
character_set_connection为建立连接使用的编码;
character_set_database数据库的编码;
character_set_results结果集的编码;
character_set_server数据库服务器的编码;
只要保证以上四个采用的编码方式一样,就不会出现乱码问题。
配环境变量
[没有data文件夹的]初始化mysql
mysqld --initialize-insecure --user=mysql
安装服务
mysqld --install mysql
启动服务
net start mysql
关闭服务
net stop mysql
移除服务
mysqld --remove mysql
约束
什么是约束?
规则
数据约束:
对数据的限制(定义)规则
数据类型:简单数据约束
目的:
数据的完整性(符合逻辑、正确)
数据完整性:
域完整性:
表中字段满足特定的数据类型或者约束
实体完整性:
主键标识一个实体
引用完整性:
表与表之间的规则
自定义完整性(用户自己定义的规则):
对表中字段属性的约束
数据类型:
int 11长度 10位数字 第一位是+-
char(10) 定长 不足10位,空格补齐
varchar(10) 变长 最大10位
约束分类:
非空约束(not null):不能为空、必须有值
唯一约束(unique):不能重复
主键约束(primary key):非空+唯一【一张表只有一个主键】
默认值(default)
自增长(auto-increment):int+主键
SQL(Structured Query Language)结构化查询语言
作用:
处理数据库的计算机语言
建库、建表、约束、、
增删改查
遵循ANSI标准
SQL语言分类:
DML:数据处理语言(增删改数据)
DQL:数据查询语言(查询数据)
DDL:数据定义语言(创建库、表、约束、、)
注释:
-- 单行注释
/*
多行注释
*/
DML:
-- 增加数据
INSERT INTO tb_star_info VALUES(10,'张学友','男',52,'45555456456','2018-09-27');
-- 修改
UPDATE tb_star_info SET s_age=53,s_card_id='54678456' WHERE s_id=10;
-- 删除
DELETE FROM tb_star_info WHERE s_id=5;
!!!带条件!!!
效率drop>trancate>delete