MySQL数据库#2

针对记录的语句

        查看所有数据:

select * from t2(表名);

MySQL数据库#2_第1张图片

增加数据:

insert into t2 vaules(1, ‘kk’, 20);

添加成功后进行查看就得出:

MySQL数据库#2_第2张图片

增加多个数据:

只需在 insert into t2 values (1, ‘kk’, 20)逗号隔开后,继续添加(1, ‘kk’, 20),(1, ‘k1’, 20;最后使用分号结尾。

执行结果:

MySQL数据库#2_第3张图片

修改数据:

update t2 set name=‘kiki’ where id=1;

update t2 set age=27 where name=‘k1’;

修改成功后:

MySQL数据库#2_第4张图片

配置文件的使用

mysql的配置文件是my-default.ini

当我们修改配置文件时,别忘了重启服务端才能生效。

我们可以把一些内容放入配置文件中:

例如:修改字符编码:

[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8

配置文件中带有*号的是注释,可以删除,但是优先复制一份,并且命名为my.ini.

MySQL数据库#2_第5张图片

MySQL数据库#2_第6张图片

存储引擎的使用

mysql支持九种引擎的使用详细的引擎可以进入【MySQL系列】- 常用MySQL存储引擎_mysql引擎-CSDN博客查看

如何查看存储引擎:输入命令 show engines;

MySQL数据库#2_第7张图片

我们重点学习的是MyISAM MEMORY InnoDB,这三个。


MyISAM:


    它是MySQL5.5版本及之前的版本默认的存储引擎、它的读取速度很快相比较与InnoDB,但是它的数据安全性较低,相对于InnoDB存储引擎,它不支持事务、支持的是表锁


InnoDB:


    它是MySQL5.6及之后的版本默认的存储引擎、它的读取速度相对慢一些,但是数据的安全性较高一些,它支持:事务、行锁、外键.


MEMORY:


    它是基于内存存储的,意味着断电数据丢失、重启服务端数据就丢失

例:

create table t2 (id int, name varchar(64)) engine=MyISAM;


create table t3 (id int, name varchar(64)) engine=InnoDB;


create table t4 (id int, name varchar(64)) engine=MEMORY;

对于不同的存储引擎,硬盘中保存的数据也不一样

数据类型

在mysql数据库中的数据类型:int float str 日期 与枚举。

1. int 整型

整型:存储整数的

        tinyint smallint int bigint

不同的数据类型的区别就是所存储的范围不一样

tinyint:它是使用一个字节来保存数据,一个字节代表八位11111111----256种情况(0-255)(-128---127)

smallint:2个字节,代表16为,65535(0---65535)(-32768--32767)

mediumint:代表三个字节

int:4个字节

bigint:8个字节

整型默认情况下是带负号的,如何去掉负号:

insert into t5(id tinyint unsigned)

2. float 浮点型

float (255,30)255代表总位数是255,30代表小数点后30位

double(255,30) 255代表总位数是255,30代表小数点后30位

decimal (255,30)255代表总位数是255,30代表小数点后30位

三者的区别是:三者的精确度不同,decimal>double>float(精确到七位)

3. str 字符串

char(4)定长类型,每当里面的字符串超出四位,直接报错。如果不足四位,则会使用空格补充

varchar(4)可变长类型:超出4位报错,不够4位的有几位就存放几位

create table t3 (id int mane varchar(4));可边长类型

createtable t4 (id int, name var(4));定长类型

我们要想超出定长就报错的话可以在配置文件中添加

    sql_mode


    show variables like "%mode%";
   

 设置严格模式:
    1. 命令行模式:临时修改
    set global sql_mode='STRICT_TRANS_TABLES'; # 不区分大小写
    2. 配置文件修改:永久修改
    

验证 是否有空格

selent char_length(name) from t3

在下默认情况下,没有对char类型填充空格,如果想看填充了空格,需要设置严格模式

4. 日期

date (年月日) datetime(年月日时分秒) time(时分秒) yeal (年)

create table t4(id int,reg_time date,

reg1_time datetime,

reg2_time time

reg3_time yael);

insert into t4 values (‘2023-10-1’, ‘2023-11-11-11’11;11;11,‘11;11;11’, 2023);

5. 枚举

多选一:关键字: enum

create table t4 values(id int, hobby enum(‘read’,‘sad’,‘sing’))

insert into t5 values(1,;read)

多选多;关键字:set

create table t6 values (id int ,hobby set(‘read’,‘sing’,‘jsak’));

insert into t5 values (2,‘read’,‘music’,‘sing’);

你可能感兴趣的:(数据库,mysql)