数据库相关知识

本文详细介绍了数据库的分类,重点关注了关系型数据库中的MySQL,包括SQL语言的基础,MySQL的特点,数据库操作如查询、增删改,以及数据表操作。还探讨了数据备份的重要性,提供了一些实用的数据库操作技巧和命令。
摘要由CSDN通过智能技术生成

目录

        一、常见的数据库分类

        二、SQL语言

        三、MySQL数据库

        四、数据库操作—查询

        五、数据表操作

        六、数据操作-增删改

        七、数据操作-查询


一、常见的数据库分类

        当前主要使用两种类型的数据库:

                关系型数据库:以数据表为核心

                非关系型数据库:不存在数据表的概念

1、关系型数据库:通过行列关系(表)进行数据的存储

        1.1代表产品:

                mysql:使用最广泛  免费的   跨平台(安装再不同的操作系统)

                Orcale:大型项目使用  收费的  跨平台(安装再不同的操作系统)

                sql server:在微软项目中使用  只能安装再windows系统

                SQlite:轻量型,主要用于在移动平台

        1.2关系型数据库的核心元素

                数据行(一条记录)、数据列(字段)、数据表(数据行的集合)、数据库(数据表的集合)

2、非关系型数据库:数据以键值对、文本、图片等形式存储的数据构成

        例如:redis:数据存储,key :  value

                  mongoDB: 数据:json {}

二、SQL语言

        说明:结构化查询语言,通过SQL语言可对数据库进行操作

        注意:SQL语言默认支持操作所有常见的关系型数据库

                  作为测试人员,必须掌握SQL的查询语句(select)

                  SQL语句,不区分字母的大小写

三、MySQL数据库

        特点:开源、免费、多平台/多语言

1、连接工具Navicat

        由于数据库处于服务器中,使用工具远程连接操作数据库

2、连接数据库操作步骤:

        创建数据库、连接数据库、新建数据表、设计数据表、增删数据表、操作数据

                

 

3、数据类型与约束

        常用数据类型:int、decimal、varchar(0-65533)、datetime

        约束:

                主键:能唯一识别表中的每一条记录的属性组

                非空:此字段不允许填写空值

                唯一:此字段的值不允许重复

                默认值:当不填写此值时会使用默认值

                外键:一个表中的一个字段引用另一个表的主键

四、数据库操作—查询

1、创建数据库

    -- 创建数据库语法
    create database 数据库名 charset=utf8 collate=utf8_general_ci
    -- 查看数据库
    show create database 数据库名;

    create database python charset=utf8 collate=utf8_general_ci;
    show create database python;

2、使用数据库

    -- use 数据库名
    use pyhton;
    -- 查看当前数据库:database()是SQL的内置函数,括号不能省略!
    select database();

3、修改数据库

    -- 创建testpython数据库࿰
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
一、约束:作用是保证数据的完整性和一致性 not null 表示该字段数据不能为空 default 表示该字段的默认值 unique 唯一(列唯一,组合唯一) primary key 主键 一张列表中只允许出现一个主键(not null + unique) auto-increment 自增长 foregin key 外键 建立两个表之间的联系 语法 constraint fk_dep foreign key(关联列名) references 被关联表(被关联列) on delete cascade 同步删除 on update cascade 同步更新 二、Mysql基本介绍 操作文件夹(库): 增加一个库:create database db1 charset utf8; 查看所有库: show databases; 查看特定库: show create database db1; 删库跑路: drop database db1; 操作文件(表): 切换进数据库:use db1; 查看当前所在文件夹;select database( ); 增加表:create table t1(id int,name char(6)); 查看特定表:show create table t1; 查看所有表:show tables;或者desc t1; 改: alter table t1 modify name char(10);name字段改为10字节; alter table t1 modify name NAME char(10);name字段名改成NAME 复制表 即复制表数据也复制表结构:create table t1 select * from db1.t1; 只复制表结构create table a1 like db1.t1; 清空表 delete from t1;但是这种方法会保留自增的ID truncate table t1;这种方法不会保留自增ID 操作文件内容 增加内容:insert into (id,name) values(1,'aa'),(2,'bb'),(3,'cc'); 查看内容:select * from db1.t1; 删除内容:delete from t1 where id =1; 查看用户权限:select * from mysql.user where user='root'\G; 三、SQL数据类型 SQL之中没有bool值,tinyint[1]表示true;tinyint[0]表示fasle. int数据类型后面存储的是显示宽度,而不是存储宽度,其他的数据类型则表示的是存储宽度 now()sql中的内置函数,根据数据类型生成相对应的时间模式 char( )定长字符串,存储速度快,但是浪费空间 varchar( )变长字符串,存储速度慢,可是节省空间 enum() 表示枚举 多选一 set( )表示集合 多选多 七、索引 索引的作用:约束和加速查找 无索引的时候一般会 从前至后一条条查找 有索引的时候:创建索引的本质就是创造额外的文件,查询时先去额外的文件找,定好位置,再去原始表直接查询,提高查询速度,但是增删改的速度依然慢,创建索引后必须命中索引才有效 索引的分类 1、普通索引:加速查询 加入索引:create index 索引名 on 表名(列名) 删除索引: drop index 索引名 on 表名 查看索引:show index from 表名 2、唯一索引:加速查找和唯一约束(可含null) 加入索引:create unique index 索引名 on 表名(列名) 删除:drop index 索引名 on 表名 3、主键索引 加入索引:alter table 表名 add primary key(列名) 删除索引:alter table 表名 drop primary key(列名)和alter table 表名 modify 列名 int,drop primary key 4、组合索引:将多个列组合成一个索引 创建组合索引:create iindex 索引名 on 表名(列1,列2) 在使用组合索引时,若组合索引为(name,email),单独索引email时不走索引,这称为最左前缀匹配原则,最左匹配原则中,mysql会一直向右匹配知道遇到(< > between like)这一类的范围查询时停止 explain + sql查询语句,用于查询sql执行信息参数 在使用关键字‘like’查询时:like ‘n%’ 走索引;但是like ‘%n%’不走索引,即有且仅只有后面带上%时走索引 使用函数时索引不生效
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值