热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

MySQL数据库基础学习一、SQL的作用及分类二、数据类型三、存储引擎(建库建表、数据插入等))

MySQL 数据库基础学习一、SQL的作用及分类二、数据类型三、存储引擎 目标SQL的作用及分类数据库、表的创建(create)、修改(alter&#xff0

MySQL 数据库基础学习

    • 一、SQL的作用及分类
    • 二、数据类型
    • 三、存储引擎




目标
  1. SQL的作用及分类
  2. 数据库、表的创建(create)、修改(alter)及删除(drop)操作
  3. MySQL存储引擎作用及区别
  4. MySQL数据类型的分类及应用
  5. 主键(primary key)及自动递增(auto_increment)的应用
  6. 数据的添加操作(insert)

一、SQL的作用及分类

SQL:结构化查询语言,是一种数据库查询(数据库(database)、数据表(table)、视图(view)……)和程序设计语言,用于存取数据以及查询、更新和管理数据。补充:.sql是数据库脚本文件的拓展名。(.txt、.doc)

  1. 数据定义语言,DDL:针对数据库对象进行创建(create)、删除(drop)、修改(alter)

    A.创建数据库示例
    创建名为T的数据库
    create database T;
    B.删除数据库示例
    – 删除名为T的数据库
    drop database T;

    提醒:创建数据库后,会在mysql安装目录data文件夹下,产生同名的文件夹(对应数据库名);

    C、创建数据表示例
    – 在数据库T内创建名为 Students的数据表
    use T;#选择/使用数据库(切换当前操作数据库,方便后续的操作均是在指定的某数据库内完成)
    #在数据库的基础上创建表,以存放数据(逻辑结构上的)

create table Students(#描述表中列的结构(列名称 列存储数据的类型 列存储空间大小--长度 列存储数据是否允许为空(不设置此属性时,默认为允许为空) ...)stuNo char(8) not null primary key,stuAge tinyint null,stuGender bit not null
)

primary key:主键,声明对应的字段值不允许为空,且不能出现重复值—————能够让系统在一个表中直接找到唯一的数据行
提醒:创建表后,会在该文件夹下产生与该表同名的ibd文件(数据库对应数据文件)

  1. 数据操作语句,DML:针对表中数据执行添加(insert)、修改(update)、删除(delete)的操作

    #添加数据到指定表中(向表中添加数据)–insert

    #添加语法:insert into 表名(字段列表) values(值列表);

在MySQL中,如果insert语句没有为列指定数据值,MySQL将插入默认值;
如果创建表时,并没有为该字段定义默认值属性,那么MySQL会根据该列的数据类型设置初始值;如果是数值类型,初始值为0;如果是字符类型,初始值为’’(空字符串,区分之前看到的NULL);

#为Students表学号字段添加数据(MySQL为自动为表中的性别字段添加初始值)

insert into Students(stuNo) values('20190102');

#为Students表所有字段添加数据

insert into Students values('20190103',18,1);

3、数据查询语言,DQL:针对表中数据进行检索(select)操作。
#查询Students表中所有数据信息
select * from Students

二、数据类型

在MySQL中,数据类型分为三种:

  1. 数字类型
    整型:tinyint、bit、smallint、mediumint、int、bigint
    小数:float、double、decimal
  2. 字符类型
    char、varchar、text、blob、enum、set
  3. 日期和时间类型
    date、time、datetime、timestamp、year
    注意:使用数据类型,最主要的是搞明白对应字段存储数据的可能性!
    补充:字段属性unsigned、zerofill的用法!!!

  • unsigned 为非负数,用此类型可以增加存储数值范围!
    在这里插入图片描述
  • zerofill属性,在数字长度不够的数据前面填充0,以达到设定的长度。 在这里插入图片描述

三、存储引擎

1、存储引擎:告知MySQL如何存储数据,如何为存储的数据进行管理(索引构建、更新、查询等技术实现的方式)。
2、存储引擎的分类:

  • InnoDB:默认存储引擎(支持事务—读写效率差,额外占用一定空间)
  • MyISAM:曾经的默认存储引擎(不支持事务—处理速度快,占用空间小)
  • Memory:数据存储在系统内存中(响应速度快,但是存储信息量有限,且存储有效期有限)
    补充:注释方式

  1. SQL标准注释方式:
    • 单行注释:–注释内容(提醒:如果此方式应用到MySQL中,必须在第二个中横线后打一空格,再添加注释内容方有效)
    • 多行注释:/注释内容/(此方式可直接在MySQL中使用)
  2. MySQL注释方式:
    • #注释内容

推荐阅读
  • golang常用库:配置文件解析库/管理工具viper使用
    golang常用库:配置文件解析库管理工具-viper使用-一、viper简介viper配置管理解析库,是由大神SteveFrancia开发,他在google领导着golang的 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 深入解析JVM垃圾收集器
    本文基于《深入理解Java虚拟机:JVM高级特性与最佳实践》第二版,详细探讨了JVM中不同类型的垃圾收集器及其工作原理。通过介绍各种垃圾收集器的特性和应用场景,帮助读者更好地理解和优化JVM内存管理。 ... [详细]
  • Docker的安全基准
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 深入理解 SQL 视图、存储过程与事务
    本文详细介绍了SQL中的视图、存储过程和事务的概念及应用。视图为用户提供了一种灵活的数据查询方式,存储过程则封装了复杂的SQL逻辑,而事务确保了数据库操作的完整性和一致性。 ... [详细]
  • 本文深入探讨 MyBatis 中动态 SQL 的使用方法,包括 if/where、trim 自定义字符串截取规则、choose 分支选择、封装查询和修改条件的 where/set 标签、批量处理的 foreach 标签以及内置参数和 bind 的用法。 ... [详细]
  • 本文详细介绍了如何通过多种编程语言(如PHP、JSP)实现网站与MySQL数据库的连接,包括创建数据库、表的基本操作,以及数据的读取和写入方法。 ... [详细]
  • 本文深入探讨了如何通过调整InnoDB的关键配置参数来优化MySQL的随机IO性能,涵盖了缓存、日志文件、预读机制等多个方面,帮助读者全面提升数据库系统的性能。 ... [详细]
  • 本文介绍了如何通过 Maven 依赖引入 SQLiteJDBC 和 HikariCP 包,从而在 Java 应用中高效地连接和操作 SQLite 数据库。文章提供了详细的代码示例,并解释了每个步骤的实现细节。 ... [详细]
  • 本文介绍如何通过创建替代插入触发器,使对视图的插入操作能够正确更新相关的基本表。涉及的表包括:飞机(Aircraft)、员工(Employee)和认证(Certification)。 ... [详细]
  • 深入解析Android自定义View面试题
    本文探讨了Android Launcher开发中自定义View的重要性,并通过一道经典的面试题,帮助开发者更好地理解自定义View的实现细节。文章不仅涵盖了基础知识,还提供了实际操作建议。 ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • 本文介绍了Java并发库中的阻塞队列(BlockingQueue)及其典型应用场景。通过具体实例,展示了如何利用LinkedBlockingQueue实现线程间高效、安全的数据传递,并结合线程池和原子类优化性能。 ... [详细]
author-avatar
土土不怕苦_402
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有