数据库的基本操作

数据库的基本操作

数据库与数据表的管理

数据库与数据表的基本结构

MySQL服务

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-a5mxu177-1639733593593)(C:\Users\Doctor Jin\AppData\Roaming\Typora\typora-user-images\image-20211216193246237.png)]

数据库的基本操作

(1)查看已有的库

SHOW DATABASES;

(2)创建库(可指定字符集)

CREATE DATABASE 库名[CHARACTER SET某一字符集];

(3)查看创建库的语句

SHOW CREATE DATABASE db3;

(4)查看当前所在库

SELECT DATABASE ();

(5)切换库

USE库名;

(6)查看库

show tables;

(7)删除库

drop database 库名;

数据库的命名规则

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LJSwwH1M-1639733593595)(C:\Users\Doctor Jin\AppData\Roaming\Typora\typora-user-images\image-20211217110004540.png)]

数据表的管理

数据表的基本操作

(1)创建表

USE db2;
CREATE TABLE t2 (
id int,
name char(15),
age int
)CHARACTER SET utf8;

(2)查看表的字符集

show create table t1;

(3)查看表结构

DESC 表名;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fHD8NR3R-1639733593595)(C:\Users\Doctor Jin\AppData\Roaming\Typora\typora-user-images\image-20211217111817783.png)]

(4)删除表

DROP TABLE T1;

表记录与表字段的管理

表记录的管理——增删改查

1、插入 (INSERT)

​ 插入完整的记录

​ INSERT INTO 表名 VALUES (值1),(值2),…;

​ 插入指定字段的记录

INSERT INTO 表明(字段名1,字段名2…)VALUES (值1),(值2),…;

查询表的所有信息

SELECT * FROM student WHERE ssex='女';

*代表所有的字段信息

查看表中的指定字段信息

SELECT sname,class FROM student WHERE ssex='女';

更新语句

UPDATE student SET class='95031'WHERE sname='王芳';

表字段的管理——增删改查

1、 添加字段 (默认添加最后一个) (ADD)

ALTER TABLE student ADD addr VARCHAR(90);   添加到最后一列  默认
ALTER TABLE student ADD id INT FIRST;       添加到第一列
ALTER TABLE student ADD phone VARCHAR(30) AFTER ssex;    添加到某一字段后面

2、 删除字段 (DROP)

ALTER TABLE student DROP addr;  添加字段的时候必须指定数据类型,删除时不需要指定

3、修改数据类型 (MODIFY)

ALTER TABLE student MODIFY sbirthday DATE;
字段名不变只修改字段类型

数据类型与类型选择

一、数值类型(整型、浮点型)
整型

(1)int——大整型

4个字节(32位)

(2)tinyint——微小整型

1个字节(8位)

A 有符号(signed) -128→+127

B无符号(unsigned)0→255

(3)smallint——小整型

2字节(16位)

(4)bigint——极大整数型

8字节(64位)

浮点型

(1)float

用法 字段名 float (m,n)

其中,m为总位数(整数位数+小数位数),n小数位数

致命限制:最多西安市7个有效位 即m最大为73

(2)decimal

用法 字段名 float (m,n)

其中,m为总位数(整数位数+小数位数),n小数位数

限制:最多显示28个有效位

字符类型

1、char

用法:char(定长)

宽度取值范围1→255

2、varchar(变长)

宽度取值范围 1→65535

枚举类型

1、单选

用法 字段名 enum (值1,值2)

2、多选

字段名set(值1,值2)

日期时间类型

运算符操作

注意在筛选条件时,and 和 or 中间不能存在,
SELECT*FROM hero WHERE country='魏国' or country='蜀国'; √
SELECT*FROM hero WHERE country='魏国', or country='蜀国';×
use db1;
create table hero(
id int,
name char(20),
attack int unsigned,
defense tinyint unsigned,
sex enum("男","女"),
country varchar(20)
)default charset=utf8;
insert into hero values
(1,'诸葛亮',120,20,'男','蜀国'),
(2,'司马懿',119,25,'男','魏国'),
(3,'关羽',188,60,'男','蜀国'),
(4,'赵云',200,66,'男','魏国'),
(5,'孙权',110,20,'男','吴国'),
(6,'貂蝉',666,10,'女','魏国'),
(7,null,1000,99,'男','蜀国'),
(8,'',1005,88,'女','蜀国'),
(9,'刘备',146,90,'男','蜀国');

插入表格如上所示

# 2.4节————运算符操作练习

# 1.数值比较/字符比较
#  (1)查找攻击力高于150的英雄的名字和攻击值

SELECT name,attack FROM hero WHERE attack>150;

#  (2)将赵云的攻击力设置为360,防御力设置为68

UPDATE hero SET attack=360,defense=68 WHERE name="赵云";
SELECT * FROM hero WHERE name="赵云";

# 2.逻辑比较
#  (1)查找攻击力高于200的魏国英雄的名字和攻击值

SELECT name,attack FROM hero WHERE attack>200 AND country="魏国";

#  (2)查找所有蜀国和魏国的英雄信息

SELECT * FROM hero WHERE country="蜀国" OR country="魏国";

# 3.范围内比较
#  (1)查找攻击力介于100-200之间的蜀国英雄信息

SELECT * FROM hero WHERE attack BETWEEN 100 AND 200 AND country="蜀国";

#  (2)查找蜀国和吴国以外的国家的女英雄信息

SELECT * FROM hero WHERE country NOT IN ("蜀国","吴国") AND sex="女";

#  (3)查找id为1,3或5的蜀国英雄和貂蝉的信息

SELECT * FROM hero WHERE (id IN(1,3,5) AND country="蜀国") OR name="貂蝉";

# 4.匹配空、非空
#  (1)查找姓名为空值(NULL)的英雄信息

SELECT * FROM hero WHERE name IS NULL;

#  (2)查找姓名为非空值的英雄信息

SELECT * FROM hero WHERE name IS NOT NULL;

#  (3)查找姓名为‘’的英雄信息

SELECT * FROM hero WHERE name='';


# 5.模糊比较
SELECT name FROM hero WHERE name LIKE '_%_';
SELECT name FROM hero WHERE name LIKE '%';
SELECT name FROM hero WHERE name LIKE '___';
SELECT name FROM hero WHERE name LIKE '赵%';

SHOW TABLES LIKE 't%';
 




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值