推荐下载xampp
使用客户端连接服务器端
首先打开xampp 点击mysql的start 启动mysql
然后
mysql.exe -h127.0.0.1 -P3306 -u -p
-h host IP地址/域名 127.0.0.1/localhost
-p port 端口
-u user 用户名 root管理员用户
-p password 密码 xampp下root的密码为空
mysql -uroot 简写形式
结束不能加分号
为创建数据库
CREATE DATABASE 数据库名;
为查看当前服务器上的数据库
SHOW DATABASES;
进入指定的数据库
USE 数据库名;
查看数据库里的数据表
SHOW TABLES;
为创建数据表
CREATE TABLE 数据表名(
id 列类型,
name 列类型,
...
);
USE 数据表名; #进入数据表
查看表头
desc 数据表名称;
插入数据
INSERT INTO 数据表名('1','Tom','...'); #例子
删除数据
DELETE FROM 数据表名 WHERE ID='1';
修改数据
UPDATE 数据表名 SET NAME='Jerry'WHERE ID='1';
查找数据
SELECT *FROM 数据表名; #查找该数据表内的所以信息
列类型
数值型 ---可以去掉引号
*tinyint 微整形,占1个字节,范围-32768~32767
*int 整型,占4个字节,-2147483648~2147483647
*bigint 大整型,占8个字节
float 单精度浮点型,占4个字节,范围比int大的多,以牺牲小数点后若干位为代价,数字越大精度越低,最大值3.4e38;
double 双精度浮点型,占8个字节,范围比bigint大的多,数字越大精度越低
*decimal(M,D) 定点小数,小数点的位置不会发生变化,M代表总的有效位数,D代表小数点后有效位数
boolean/bool 布尔型,只有两个值。分别是true和false,代表真和假,通常用于存储只有两个值的数据,例如:性别,是否在线
true和false是关键字,不能加引号
日期时间型 --引号不能省略
date 日期型 '2021-11-19'
time 时间型 '20:41:30'
datetime 日期时间型 '22021-11-19 20:41:30'
字符串型 --引号不能省略
Varchar(M)变长字符串,几乎不会产生空间浪费,数据操作速度相对满,M的最大值65535,用于存储变化长度的数据,例如标题,姓名,详情...
Char(M) 定长字符串 定长字符串,可能会产生空间浪费,数据操作速度相对快,M的最大值255,用于存储固定长度的数据,例如手机号码、身份证号码
text(M) 大型变长字符串,M的最大值是2G
TB GB MB KB Byte Bit(位)
1Byte=8Bit
1 | 2 | 3 | 4 | 5 | 6 | 7 |
---|---|---|---|---|---|---|
1 | 10 | 11 | 100 | 101 | 110 | 111 |
列约束
主键约束 --- primary key
声明了主键约束的列上不允许插入重复的值,一个表中只能有一个主键约束,通常加在编号列,会加快数据的查找速度,按照编号从小到大排列
主键约束的列禁止插入null
null 表示空,是一个暂时无法确定的值,例如:无法确定商品的价格,无法确定一个员工的手机号码,都可以用null表示
null是关键字,不能加引号
非空约束
声明了分空约束的列上禁止插入null
唯一约束 --unique
声明了唯一约束的列不允许出现重复的值,允许插入null,甚至是多个null,可能会影响数据的排序
默认值约束 --default
可以使用default关键字设置默认值,具体应用方式有两种
insert into family values(40,default); #通过default调用当前的默认值
insert into family(fid) values(50); #给指定的列提供默认值,没有出现的列自动调用默认值
外键约束
声明了外检约束的列,插入的值必须得在另一个表的主键列中出现过才行;外键列要和对应的主键列类型要保持一致
foreign key(外键列) references 另一个表(主键列)
外键列约束使用目的是为了让两个表之间产生关联
自增列
auto_increment 自动增长,如果设置了自增列,在插入数据的时候,只需要赋值为null,就会获取当前的最大值然后加1插入
注意事项:
自增列只能添加在整数形式的主键列
允许手动赋值
总结:
毕竟笔者的毕竟偏向前端一点,mysql涉及的内容较少,望见谅
Comments NOTHING