一. 储备知识

  数据库服务器:一台高性能计算机

  数据库管理系统:mysql(mssql等),是一个软件

  数据库:db1(student_db),是一个文件夹

  表:studen_info 是一个文件

  记录:1 jack 18 male 133****1234  一条记录学生信息的内容

二. SQL语言

  SQL语言主要用于存取数据、查询数据、更新数据和管理关系数据库系统,SQL语言由IBM开发。SQL语言分为3种类型:

  1. 1DDL语句 数据库定义语言: 数据库、表、视图、索引、存储过程,例如CREATE DROP ALTER
  2.  
  3. 2DML语句 数据库操纵语言: 插入数据INSERT、删除数据DELETE、更新数据UPDATE、查询数据SELECT
  4.  
  5. 3DCL语句 数据库控制语言: 例如控制用户的访问权限GRANTREVOKE

三. 创建数据库及常用操作

  1.  1.数据库的命名规则:

  可以由字母、数字、下划线、@、#、$(一般不推荐在数据库名字中使用特殊符号)
  区分大小写
  唯一性
  不能使用关键字如 create select
  不能单独使用数字
  最长128位

  2.数据库的常用操作.

注:进入mysql的时候,需要以root身份登录(msyql -uroot -p),否则会报错: Access denied for user ''@'localhost' to database 'db8'

  1. 操作文件夹(库)
  2. # 增
  3. create database db1 charset utf8;
  4. # 查
  5. show create database db1; #查看指定的数据库
  6. show databases; #查看所有的数据库
  7. # 改
  8. alter database db1 charset gbk; #更改db1数据库的字符编码
  9. # 删
  10. drop database db1; #删除db1数据库
  11. # 其他
  12. select database(); #查看当前所在数据库
  13. use db1; #切换到db1数据库
  1. 操作文件(表)
  2. 切换文件夹(数据库):use db1 # 切换到指定的数据
  3. 查看当前所在文件夹(数据库):select database();

  4. create table t1(id int,name char); #创建一个表
         create table t1(id int,name char(3)); #指定name字段的长度
  5.  
  1. show create table t1; #查看表结构
  2. desc t1; #查看表结构(推荐)
  3. show tables #查看所有的表

  4. alter table t1 modify name char(6); #更改name字段的长度
  5. alter table t1 change name NAME char(10); #更改字段名称和长度

  6. drop table t1; #删除表
  1. 操作文件内容(记录)

  2. insert t1(id,name) values(1,"alex"),(2,"jack"),(3,"lili"); #向表t1插入多个字段值

  3. select id,name from db1.t1; #查看db1下面t1表.如果查看当前数据的下表,可以省略数据库名(db1)
  4. select * from db1.t1 #查看所有信息

  5. update db1.t1 set name="boy"; #更改t1中name字段的所有值
  6. update db1.t1 set name="SB" where id =2; #仅更改id为2的名字

  7. delete from db1.t1; # 删除表中所有的数据
  8. delete from db1.t1 where id =2; #删除表中id为2的数据

四. 存储引擎

  存储引擎说白了就是如何存储数据、如何为存储的数据建立索引和如何更新、查询数据等技术的实现方法。因为在关系数据库中数据的存储是以表的形式存储的,所以存储引擎也可以称为表类型(即存储和操作此表的类型)

  SQL 解析器、SQL 优化器、缓冲池、存储引擎等组件在每个数据库中都存在,但不是每 个数据库都有这么多存储引擎。MySQL 的插件式存储引擎可以让存储引擎层的开发人员设 计他们希望的存储层,例如,有的应用需要满足事务的要求,有的应用则不需要对事务有这 么强的要求 ;有的希望数据能持久存储,有的只希望放在内存中,临时并快速地提供对数据 的查询。

  

  一种类型表明的是一种存储方式
  存储引擎:就是表的类型,不同的类型就会对应不同的处理机制去处理他
  事务:就是要么同时成功,要么同时不成功

四-1.使用存储引擎

  1.在创建表时,指定存储引擎;  

  1. 1.create table t1(id int) engine = innodb 会出现2个文件
  2. 2.create table t2(id int) engine = myisam 会出现3个文件(速度比上面的快),但是我们还是用innodb存储
  3. 3.create table t3(id int) engine = memory 只有表结构没有表数据,是创建到内存中的
  4. 4.create table t4(id int) engine = blackhole 黑洞,吃数据(数据存进去就没有了,存进去就没有了)

  2.在配置文件中指定

  

  1. [mysqld]
  2. default-storage-engine=INNODB
  3. innodb_file_per_table=1

五.基本操作语句语法

  1.插入数据(insert)

  1. 1. 插入完整数据(顺序插入)
  2. 语法一:
  3. INSERT INTO 表名(字段1,字段2,字段3…字段n) VALUES(值1,值2,值3…值n);
  4.  
  5. 语法二:
  6. INSERT INTO 表名 VALUES (值1,值2,值3…值n);
  7.  
  8. 2. 指定字段插入数据
  9. 语法:
  10. INSERT INTO 表名(字段1,字段2,字段3…) VALUES (值1,值2,值3…);
  11.  
  12. 3. 插入多条记录
  13. 语法:
  14. INSERT INTO 表名 VALUES
  15. (值1,值2,值3…值n),
  16. (值1,值2,值3…值n),
  17. (值1,值2,值3…值n);
  18.  
  19. 4. 插入查询结果
  20. 语法:
  21. INSERT INTO 表名(字段1,字段2,字段3…字段n)
  22. SELECT (字段1,字段2,字段3…字段n) FROM 2
  23. WHERE …;

  2.更新数据(update)

  

  1. 语法:
  2. UPDATE 表名 SET
  3. 字段1=值1,
  4. 字段2=值2,
  5. WHERE CONDITION;
  6.  
  7. 示例:
  8. UPDATE mysql.user SET password=password(‘123’)
  9. where user=’root and host=’localhost’;

  3.删除数据(delete)

  

  1. 语法:
  2. DELETE FROM 表名
  3. WHERE CONITION;
  4.  
  5. 示例:
  6. DELETE FROM mysql.user
  7. WHERE password=’’;
  8.  
  9. 练习:
  10. 更新MySQL root用户密码为mysql123
  11. 删除除从本地登录的root用户以外的所有用户

day 7-12 数据库的基本操作和存储引擎的更多相关文章

  1. mysql数据库之基本操作和存储引擎

    一.知识储备 数据库服务器:一台计算机(对内存要求比较高) 数据库管理系统:如mysql,是一个软件 数据库:oldboy_stu,相当于文件夹 表:student,scholl,class_list ...

  2. 二、mysql数据库之基本操作和存储引擎

    一.知识储备 数据库服务器:一台计算机(对内存要求比较高) 数据库管理系统:如mysql,是一个软件 数据库:oldboy_stu,相当于文件夹 表:student,scholl,class_list ...

  3. 数据库_PXC群集与存储引擎

    1. PXC介绍与群集搭建; 2.数据存储引擎. 一, PXC介绍 1.介绍 PXC(Percona XtraDB Cluster)基于Galara的一台开源软件,应用于解决mysql的高可用集群问题 ...

  4. MySQL存储引擎的实际应用以及对MySQL数据库中各主要存储引擎的独特特点的描述

    MySQL存储引擎的实际应用以及对MySQL数据库中各主要存储引擎的独特特点的描述: 1.MySQL有多种存储引擎: MyISAM.InnoDB.MERGE.MEMORY(HEAP).BDB(Berk ...

  5. 重新学习MySQL数据库3:Mysql存储引擎与数据存储原理

    重新学习Mysql数据库3:Mysql存储引擎与数据存储原理 数据库的定义 很多开发者在最开始时其实都对数据库有一个比较模糊的认识,觉得数据库就是一堆数据的集合,但是实际却比这复杂的多,数据库领域中有 ...

  6. Mysql数据库的触发器、存储引擎和存储过程

    数据库的触发器 1.触发器 触发器是MySQL响应以下任意语句而自动执行的一条MySQL语句(或位于BEGIN和END语句之间的一组语句): DELETE,INSERT,UPDATE 我们可以监视某表 ...

  7. 【转】MySQL数据库MyISAM和InnoDB存储引擎的比较

    MySQL有多种存储引擎,MyISAM和InnoDB是其中常用的两种.这里介绍关于这两种引擎的一些基本概念(非深入介绍). MyISAM是MySQL的默认存储引擎,基于传统的ISAM类型,支持全文搜索 ...

  8. MySQL数据库MyISAM和InnoDB存储引擎的比较

    MySQL有多种存储引擎,MyISAM和InnoDB是其中常用的两种.这里介绍关于这两种引擎的一些基本概念(非深入介绍). MyISAM是MySQL的默认存储引擎,基于传统的ISAM类型,支持全文搜索 ...

  9. MySQL数据库MyISAM和InnoDB存储引擎的比较(转)

    MySQL有多种存储引擎,MyISAM和InnoDB是其中常用的两种.这里介绍关于这两种引擎的一些基本概念(非深入介绍). MyISAM是MySQL的默认存储引擎,基于传统的ISAM类型,支持全文搜索 ...

随机推荐

  1. YYModel HandyJson

    数学基础: 以类型集合空间为基础,多阶向量结构间的同构映射: 若两个数学结构之间存在同构映射,那么这两个结构叫做是同构的. 基于集合空间的映射: 原理: 1.根据类型名称获得类型的元信息: 2.根据映 ...

  2. centos7下部署mysql主从复制

    首先大致看一下这个图 环境说明: 系统:centos7 IP:master:192.168.7.235 slave:192.168.7.226 mysql版本MySQL-5.7 1.Master 下载 ...

  3. Python代码分行问题

    可以用“\”符号把一行过长的Python代码分解成几行,多个语句也可以写在同一行,语句之间要用“;”隔开.

  4. 联想Y7000安装Ubuntu16.04/Win10双系统,wifi问题,显卡驱动和CUDA10安装

    https://blog.csdn.net/la9881275/article/details/86720752 Ubuntu16.04系统安装拿到Ubuntu镜像制作装机优盘,这里就不写了.我的优盘 ...

  5. 吴恩达课后作业学习2-week3-tensorflow learning-1-例子学习

    参考:https://blog.csdn.net/u013733326/article/details/79971488 使用TensorFlow构建你的第一个神经网络 我们将会使用TensorFlo ...

  6. 无备份时用dbms_repair恢复坏块的方法

    份的情况下可以直接使用备份来恢复. 对于通过备份恢复,Oracel为我们提供了很多种方式,冷备,基于用户管理方式,RMAN方式等等. 对于这几种方式我们需要实现基于数据库以及文件级别的恢复.RMAN同 ...

  7. P2251 质量检测--洛谷luogu

    传送门 题目描述 为了检测生产流水线上总共N件产品的质量,我们首先给每一件产品打一个分数A表示其品质,然后统计前M件产品中质量最差的产品的分值Q[m] = min{A1, A2, ... Am},以及 ...

  8. linux内存源码分析 - 零散知识点

    本文为原创,转载请注明:http://www.cnblogs.com/tolimit/ 直接内存回收中的等待队列 内存回收详解见linux内存源码分析 - 内存回收(整体流程),在直接内存回收过程中, ...

  9. 记一次Dubbo服务注册异常

            公司项目重构,把dubbo版本从2.5.8升级为2.6.2.升级后在本地运行一点问题都没有:可是通过公司自研的发布系统将项目发布到测试环境的linux服务器下面后,出现了dubbo服务 ...

  10. Netty入门(二)之PC聊天室

    参看Netty入门(一):Netty入门(一)之webSocket聊天室 Netty4.X下载地址:http://netty.io/downloads.html 一:服务端 1.SimpleChatS ...