• 数据库之基本操作和存储引擎


    一、知识储备

    数据库服务器:一台计算机(对内存要求比较高)

    数据库管理系统:如mysql,是一个软件

    数据库:oldboy_stu,相当于文件夹

    表:student,scholl,class_list,相当于一个具体的文件

    记录:1 susan  158426544   22,相当于文件中的一行内容

    二、初始SQL语言

    SQL(Structured Query Language 即结构化查询语言)
    SQL语言主要用于存取数据、查询数据、更新数据和管理关系数据库系统,SQL语言由IBM开发。SQL语言分为3种类型:
    DDL语句 数据库定义语言: 数据库、表、视图、索引、存储过程,例如CREATE DROP ALTER
    DML语句 数据库操纵语言: 插入数据INSERT、删除数据DELETE、更新数据UPDATE、查询数据SELECT
    DCL语句 数据库控制语言: 例如控制用户的访问权限GRANT、REVOKE

    三、系统数据库

    SQL(Structured Query Language 即结构化查询语言)
    SQL语言主要用于存取数据、查询数据、更新数据和管理关系数据库系统,SQL语言由IBM开发。SQL语言分为3种类型:
    DDL语句 数据库定义语言: 数据库、表、视图、索引、存储过程,例如CREATE DROP ALTER
    DML语句 数据库操纵语言: 插入数据INSERT、删除数据DELETE、更新数据UPDATE、查询数据SELECT
    DCL语句 数据库控制语言: 例如控制用户的访问权限GRANT、REVOKE

    四、创建数据库

    数据库命名规则:

    可以由字母、数字、下划线、@、#、$
    区分大小写
    唯一性
    不能使用关键字如 create select
    不能单独使用数字
    最长128位
    create database db1

    五、数据库相关操作

    复制代码
    数据库的相关操作
    注意:数据库就相当于文件夹
          表就相当于文件
    数据库的命名规则:
    一.数据库的增删改查(sql语句)
    增:create database db1;
    删:drop database db1;
    改:alter database db1 charset utf8
    查:show databases;#查看所有的数据库
        show create database db1;查看指定的数据库
    设置默认的utf8,在配置文件中:写上character_set_server = utf8
    use db2   #代表你鼠标双击切换目录
    select database() #查看你当前在哪个文件夹
    二.表的增删改查
    增:create table  t1(id int ,name char);  (t1.frm 表结构  ,t1.ibd 表数据) 
    删:drop table t1;
    改:
    插入数据:insert into test(id,name) values(1,'x')
    不写给谁传值就指定都传,而且还是按照位置传
    
    查:show tables;  #查看所有表
       show create table t1;#查看指定的表
       select * from t1 #查看表数据
       select id,name from t1  #查看表数据
    engine = InnoDB
    表的存储引擎是InnoDB
    复制代码

    六、什么是存储引擎?

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

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

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

    使用存储引擎

    方法1:建表时指定

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

    方法2:在配置文件中指定默认的存储引擎

    /etc/my.cnf
    [mysqld]
    default-storage-engine=INNODB
    innodb_file_per_table=1
  • 相关阅读:
    【leetcode】1630. Arithmetic Subarrays
    【leetcode】1629. Slowest Key
    【leetcode】1624. Largest Substring Between Two Equal Characters
    【leetcode】1620. Coordinate With Maximum Network Quality
    【leetcode】1619. Mean of Array After Removing Some Elements
    【leetcode】1609. Even Odd Tree
    【leetcode】1608. Special Array With X Elements Greater Than or Equal X
    【leetcode】1603. Design Parking System
    【leetcode】1598. Crawler Log Folder
    Java基础加强总结(三)——代理(Proxy)Java实现Ip代理池
  • 原文地址:https://www.cnblogs.com/mqhpy/p/11056357.html
Copyright © 2020-2023  润新知