MySQL学习笔记(一)

本文详细介绍了如何通过二进制方式连接MySQL,退出命令方法,数据库的数据类型,以及MySQL的基本操作,包括创建、显示、删除数据库,创建表,插入、查询、更新数据,以及字段约束的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MySQL

1.二进制方式连接到MySQL

在命令提示符窗口输入命令:

mysql -u root -p

参数说明

  • -u 参数用于指定用户名。
  • -p 参数表示需要输入密码。在这里插入图片描述

2.退出当前命令方法

用 exit 命令退出mysql提示窗口
用 Ctrl +C 退出当前无效命令

3.数据库的数据类型

数值类型

数值类型图

  • int int(M)

int(M)中的M表示数据显示的宽度,与实际存储的长度无关。
1、也就是int(3)和int(11)能够存储的数据是一样的,都是从-2147483648到2147483647(或者0-4294967295)。
2、int(M)只有联合zerofill参数才能有意义,否则int(3)和int(11)没有任何区别。

日期和时间类型

日期和时间类型

字符串类型

字符串类型

注意!

枚举、集合、空间数据类型

在这里插入图片描述



MySQL 基本命令

一、数据库的基本操作

(1)create 创建库

DATABASE与SCHEMA含义相同,任选

CREATE DATABASE|SCHEMA 数据库名
	CHARACTER SET utf8mb4       --指定字符集
	COLLATE utfmb4_general_ci;    --指定排序规则

或直接

CREATE DATABASE 数据库名;

(2)show 显示数据库

显示所创建数据库的信息:

show create database 数据库名;

显示所有数据库:

SHOW DATABASES;

显示指定数据库:

SHOW DATABASE IN 数据库名;

显示含有“特定字符串”的数据库:

SHOW DATABASES IN 数据库名 like '% 这里写特定字符串 %';

(3)drop 删除数据库

直接删除数据库,不检查是否存在

DROP DATABASE 数据库名;

DROP DATABASE [IF EXISTS] 数据库名;

用mysqladmin命令在终端删除数据库

mysqladmin -u root -p drop 数据库名
回车输入密码

(4)use 选择数据库

use 数据库名;

选择要使用的库后,才能在指定库下创建、处理表。



二、表的基本操作

在处理表前必须要指定数据库
只有在指定的数据库下才能创建或处理表:

use 数据库名;

(1)create 创建表

CREATE DATABASE 表名(    
字段名1 数据类型 [NO NULL]  comment '字段注释',
字段名2 数据类型 ……
……  ,
最后一行不用英文逗号
)ENGINE = InnoDB CHARACTER SET = utf 8 COMMENT = '注释' ;

注释:
ENGINE = InnoDB
InnoDB 是数据库默认的存储引擎,用来处理大量数据。
在删除表时InnoDB不会出现重新建立表,而是一行一行的删除,会在内存中缓冲数据和索引,但是不支持 fulltext 的索引。fulltext:全文索引
CHARARCTER SET = utf8设置字符集,数据库的默认编码utf8
字段不为空则设置为***非空约束*** :NO NULL
反之,默认则字段可为空

(2)Desc (Destrible) 查看表的结构信息

Desc 表名;
或
Destrible 表名;

Explan与Desc是同义。

(4)show 查看表

show create 显示所创建表的语句:
show create table  表名;
show table 显示指定库中的所有表:
SHOW TABLES;
或 没指定数据库时:
SHOW TABLES IN 数据库名;

显示含有“特定字符串”的表:

SHOW TABLES IN 数据库名 like '% 这里写特定字符串 %';

(5)delete table删除表中的数据

1.直接删除表中的数据,不检查是否存在

DROP TABLE 表名
[WHERE 条件 ];
或
DROP TABLE [IF EXISTS] 表名
[WHERE 条件 ];

2.删除表中所有行数据:

DELECT FROM orders;

(5.1)drop table删除表

drop table 用于删除一个或多个数据表,会把数据表的定义、在表上定义的触发器和表内的数据一起删除

Drop table 表名;

删除表前,若表有外键约束则需要 先删除子表与主表之间的外键约束,解除后主表才能被删除

删除外键约束:

Alter table 子表名 Drop Foregin Key 外键名;

(6)insert into 、replace 插入数据

insert 和 replace功能相似,若插入数据与表中数据相同: replace会删除原始数据再插入数据

INSERT INTO 表名(字段1,字段2……)   
VALUES(value1,value2……),(value11,value12……);

或

INSERT INTO 表名(字段1,字段2……)   
VALUES ROW(value1,value2……),ROW(value11,value12……);

字段顺序可变,insert into()则默认为创建表结构时的字段顺序

INSERT INTO 表名()   
VALUES(value1,value2……),(value11,value12……);

(7)select 查询数据

查询表的所有信息:

SELECT * FROM 表名;

在表中查询满足条件的信息:

SELECT * FROM 表名 WHERE 条件;
或
SELECT 字段名1,字段名2……
FROM 表名
[WHERE 条件]
[ORDER BY column_name [ASC|DESC] ]		--指定结果集的排序顺序,默认是升序ASC
[LIMIT number ] --用于限制返回的行数

(8)update 修改数据

UPDATE 表名
SET 字段名1=new 字段名1,字段名2=new 字段名2……
WHERE 条件;

示例

where将book_info中的‘否’修改为‘是'
update book_info set YorN_key='是' where YorN_key like '%否%';

(9)alter 修改表结构

1.表名的修改
ALTER TABLE 表名 RENAME TO|AS new表名;
或
RENAME TABLE 表名 TO|AS new表名;
2.字段的修改
1.增加字段:
ALTER TABLE 表名
ADD 字段名 字段定义语法 [FIRST | AFTER 字段名];  --First:用于指定把字段添加到第一例

2.删除字段:
ALTER TABLE 表名
DROP [CLOUMN] 字段名;

3.修改字段名、数据类型:
ALTER TABLE 表名
CHANGE [CLOUMN] old字段名 new字段名 [字段定义(即数据类型)];

只修改数据类型还可以用:
ALTER TABLE 表名
MODIFY [CLOUMN] 字段名 数据类型;

ALTER 还可修改引擎、字符集、索引关键字压缩方式,设置自增字段初始值

(9)字段约束

设置主键为自增长

字段名 数据类型 AUTO_INCREMENT
ALTER 在创建表后 添加字段约束
1.添加主键约束
ALTER TABLE 表名 ADD PRIMARY KEY (字段名);
ALTER TABLE 表名 ADD PRIMARY KEY (字段名1,字段名2);
2.添加外键约束
ALTER TABLE 表名 
ADD
CONSTRAINT 自定义外键约束名   /***自定义***/
FOREIGN KEY  自定义外键名称(字段名)
REFERENCES 主表(主表的主键)

从表的外键关联必须是主表的主键,且主键与外键的数据类型必须一致

3.唯一约束 UNIQUE KEY
ALTER TABLE 表名 ADD CONSTRAINT 自定义唯一约束名 
UNIQUE(字段名);
4.检查约束 CHECK
ALTER TABLE 表名 ADD CONSTRAINT 检查约束名 
CHECK(检查约束字段);
5.非空约束 NOT NULL
ALTER TABLE 表名 
CHANGE COLUMN 字段名
字段名 数据类型 not null;
6.默认约束default
ALTER TABLE 表名
CHANGE COLUMN 字段名
字段名 数据类型 DEFAULT 默认值;
ALTER 删除表的约束
1.删除主键约束
ALTER TABLE 表名 DROP PRIMARY KEY; 
2.删除外键约束
ALTER TABLE 表名 DROP FOREIGN KEY 外键约束名;
3.删除唯一约束
ALTER TABLE 表名 DROP INDEX 唯一约束字段名;
3.删除检查约束
ALTER TABLE 表名 DROP CHECK 检查约束名;
5.删除非空约束
ALTER TABLE 表名
CHANGE COLUMN 字段名
字段名 数据类型 null;`
6.删除默认值
ALTER TABLE 表名
CHANGE COLUMN 字段名
字段名 数据类型 DEFAULT NULL;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值