MYSQL数据库基础(数据库)

这篇具有很好参考价值的文章主要介绍了MYSQL数据库基础(数据库)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、数据库使用流程

  1. 用户在客户端输入SQL语句
  2. 客户端会把SQL通过网络发送给服务器
  3. 服务器会执行这个SQL,把结果返回给客户端
  4. 客户端接收到结果后,显示到界面上

二、数据库的操作

1.创建数据库

1.1 语法

CREATE DATABASE [IF NOT EXISTS] db_name [create_specification [, 
create_specification] ...]

create_specification:
 [DEFAULT] CHARACTER SET charset_name
 [DEFAULT] COLLATE collation_name

1.2 解析

  • 已经有了数据库,为何还要创建
    • 计算机中,不同的词有不同的含义,如一门学科、一类软件、某个具体的数据库软件、某个部署了数据库的服务器的主机、某个具体的正在运行的数据库服务器程序、一个数据库集合……
    • 我们现在有的准确的说是 数据库服务器 ,在这个数据库服务器上,可以根据逻辑划分出多个不同的数据集合,每个数据集合就称为是一个‘数据库’,我们要创建的就是一个 数据集合
  • 基础语法
    • create ,database……相当于关键字,即无法充当变量名
    • SQL的关键字是不区分大小写的
    • 创建的数据库的名字不能重复(可以通过if not exists 来判断)
    • 单词之间至少有一个空格,不能没有
    • 在命令行客户端中输入的SQL语句必须以 ;(英文) 作为结尾
  • MYSQL的效率问题
    • (0.01 sec):sec是second(秒)的意思,0.01s即10毫秒,0.00sec 小于10毫秒。数据库的很多操作,都是并不高效的
  • 说明
    • [] 是可选项
      CHARACTER SET: 指定数据库采用的字符集
      COLLATE: 指定数据库字符集的校验规则

1.3 使用

创建名为test 的数据库
当我们创建数据库没有指定字符集和校验规则时,系统使用默认字符集:utf8,校验规则时:utf8_general_ci

create database test;

如果系统没有test数据库,则创建一个名为test的数据库,有则不创建
如果是单行SQL没有什么问题,但是如果是批量执行SQL(把很多SQL写到一个文件中),如果中间某个SQL报错,就会执行停止

create database if not exists test;

如果系统没有test数据库,则创建一个使用utf8mb4字符集的名为test的数据库,有则不创建
如果是单行SQL没有什么问题,但是如果
说明:MySQL的utf8编码不是真正的utf8,没有包含某些复杂的中文字符。MySQL真正的utf8是使用utf8mb4,建议大家都使用utf8mb4

create database if not exists test character set utf8mb4;
# 或
create database if not exists test charset utf8mb4;
  • 字符集
    • mysql的字符集
      • mysql 默认字符集是拉丁文(没法表示中文的),所以手动设定一个字符集是十分关键的,后续如果要插入一些中文,如果不是utf8/gbk之类的中文就会出现乱码
    • 字符集:针对汉字进行编码
      • VS 使用的编码方式是跟随系统,Windows 系统编码就是gbk。java 的字符集是在编译运行的时候,通过命令行参数显示指定的,一般默认都是utf8
      • 英文字母在计算机中通过ASCII表示,ASCII使用数字表示字符,且只能表示英文字母和标点符号以及阿拉伯数字。汉字要表示的内容特别多,但我们依旧是采用ASCII的编写思路,搞一个更大的表,来表示汉字。对于中文来说,最常见的表示方式是gbk和utf8
      • gbk:使用两个字节,表示一个汉字。    utf8:使用三个字节,来表示一个汉字(更加主流,除了汉字之外,各种其他国家的语言文字符号都能表示)。    utf8mb4:是完整版utf8,MySQL的utf8是残缺的,缺少了一些emoji表情

2.显示数据库

因为显示的数据库可能有多个,所以要加后缀s
系统自带的数据库,如information_schema、mysql、performance_schema、sys,不要乱改
cmd 上允许把一个SQL分成多行来写,如果没有;这表示换行,而不是“确认执行”

show databases;

3.使用数据库

后续操作的大前提(一旦选中了某个指定的数据库,后续操作就都是针对该数据库展开了)

use 数据库名

4.删除数据库

注意,一旦删掉数据库,里面的数据就都没有了,很难恢复

DROP DATABASE [IF EXISTS] db_name;
  • 如何避免删除数据库
    • 权限,不同的用户,能进行的操作是不一样的
    • 备份,一旦不小心误删除了某些重要数据,可以通过之前的备份数据,恢复回来
    • 检查,在执行某些重要操作的时候,拉上其他人帮忙一起检查

三、常用数据类型

3.1 数值类型

数值类型可以指定为无符号(unsigned),表示不取负数。
DECIMAL能够精确表示小数,但是float和double是不行的,但是DECIMAL存储空间占用的更多,计算速度也更慢

数据类型 大小 说明 对应Java类型 对应C类型
BIT[ (M) ] M指定位数,默认为1 二进制数,M范围从1到64,存储数值范围从0到2^M-1 常用Boolean对应BIT,此时默认是1位,即只能存0和1 char[]
TINYINT 1字节 Byte signed char
SMALLINT 2字节 Short short int
INT 4字节 Integer int
BIGINT 8字节 Long long long int
FLOAT(M, D) 4字节 单精度,M指定长度(有效数字的长度),D是小数点后的位数。会发生精度丢失 Float float
DOUBLE(M,D) 8字节 Double double
DECIMAL(M,D) M/D最大值+2 双精度,M指定长度,D表示小数点位数。精确数值 BigDecimal char[]
NUMERIC(M, D) M/D最大值+2 和DECIMAL一样 BigDecimal char[]

3.2 字符串类型

数据类型 大小 说明 对应Java类型 对应C类型
VARCHAR (SIZE) 0-65,535字节 可变长度字符串,SIZE表示最大长度,单位是字符,不是字节,即varchar(10)就表示最多十个字 String char[]
TEXT 0-65,535字节 长文本数据 String char[]
MEDIUMTEXT 0-16 777 215字节 中等长度文本数据 String char[]
BLOB 0-65,535字节 二进制形式的长文本数据 byte[] char[]

3.3 日期类型

数据类型 大小 说明 对应Java类型 对应C类型
DATETIME 8字节 范围从1000到9999年,不会进行时区的检索及转换 java.util.Date、java.sql.Timestamp MYSQL_TIME
TIMESTAMP 4字节 时间戳,范围从1970到2038年,自动检索当前时区并进行转换 java.util.Date、java.sql.Timestamp MYSQL_TIME

四、数据表操作

关系型数据库中,数据是以“表”的方式来进行组织的,每个数据库中,里面就可以有很多个数据表,每个表可以有很多行,每一行又可以有很多个列(字段)
所有的和表相关的操作,都需要选中数据库再进行

1.创建表

CREATE TABLE table_name (
 field1 datatype,     -- field 类型     datatyoe 结构
 field2 datatype,
 field3 datatype
);

2.查看当前数据库中的所有表

show tables;

3.查看指定表的结构

desc 表名       -- desc == describe(描述)

MYSQL数据库基础(数据库)

4.删除表文章来源地址https://www.toymoban.com/news/detail-468611.html

drop table 表名;
DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name] ...

到了这里,关于MYSQL数据库基础(数据库)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Mysql数据库从0到1】-入门基础篇--mysql基本使用

    mysql5.7和之前版本,默认字符集为latin1,插入中文字符会出现乱码。在使用5.7及之前的版本时候需要将字符编码修改为utf8字符集,utf8字符集指的是utf8mb3。 从mysql8.0开始,数据库默认字符编码改为utf8mb4。 Mysql 5.7 默认身份插件是 mysql_native_password Mysql 8.0 默认的身份插件是 cac

    2024年02月07日
    浏览(47)
  • MySQL数据库用户管理

    primary key主键约束:字段的值不能重复,不能为null,一个表只能有一个主键 unique key唯一性约束:字段的值不能重复,能为null,一个表可有多个唯一键 not null非空约束:字段的值不能为null default默认值约束: 字段的值如果没有设置则使用默认值自动填充 auto_increment自增约束:

    2024年02月08日
    浏览(51)
  • Mysql数据库用户操作

    # Mysql数据库用户操作 ## 1.1创建用户 ```shell create user ‘nz’ identified by ‘123456’ # hzm:用户账号,123456:密码 create user ‘nz’@’%’ identified by ‘123456’ #所有ip都可用账号 create user ‘nz’@’localhost’ identified by ‘123456’ #本地可用账号 create user ‘nz’@’192.168.12.1’ identified

    2024年02月16日
    浏览(53)
  • MySQL数据库介绍流程(最新mysql)

    1、下载地址: http://dev,mysql.com/downloads/windows/installer/8.0html 2、就是直接搜索:mysql官方  msyql官方网站                              这里就安装成功                点击鼠标右键,点击属性   没有话在这里,搜索高级系统打开这个           安装mysql找到文件        

    2024年02月13日
    浏览(36)
  • 【数据库】 mysql用户授权详解

    目录 MySQL用户授权 一,密码策略 1,查看临时密码 2,查看数据库当前密码策略: 二, 用户授权和撤销授权 1、创建用户 2,删除用户 3,授权和回收权限 mysql刚安装时,临时密码会存储在 /var/log/mysqld.log 1,查看临时密码 方法一:直接给出密码   方法二:查到的语句的最后为

    2024年02月11日
    浏览(58)
  • MySQL数据库——MySQL GRANT:用户授权

    授权就是为某个用户赋予某些权限。例如,可以为新建的用户赋予查询所有数据库和表的权限。MySQL 提供了 GRANT 语句来为用户设置权限。 在 MySQL 中,拥有 GRANT 权限的用户才可以执行  GRANT  语句,其语法格式如下: 其中: priv_type 参数表示权限类型; columns_list 参数表示权

    2024年02月06日
    浏览(58)
  • MySQL数据库,JDBC连接数据库操作流程详细介绍

    在学完 MySQL 和 Java 后,我们通常会尝试使用 Java编译器 连接 MySQL数据库,从而达到使用编译器来操作数据库的效果。连接的这个过程会用 JDBC 相关知识,因此我把 JDBC 包的下载及导入流程,以及 JDBC 的使用流程整理下来分享给大家。 目录 1. 啥是JDBC? 2. JDBC依赖包 2.1 依赖包

    2024年02月06日
    浏览(97)
  • Mysql数据库——用户管理与授权

    用户信息存放在 mysql 数据库下的 user 表(MySQL 服务下存在一个系统自带的 mysql 数据库)。 1.新建用户 2.查看用户信息 3.重命名用户 RENAME USER \\\'zhangsan\\\'@\\\'localhost\\\' TO \\\'lisi\\\'@\\\'localhost\\\'; 4.删除用户 DROP USER \\\'lisi\\\'@\\\'localhost\\\'; 5.修改当前登录用户密码 SET PASSWORD = PASSWORD(\\\'abc123\\\'); 6.修

    2024年02月09日
    浏览(49)
  • MySQL数据库——MySQL创建用户(3种方式)

    MySQL 在安装时,会默认创建一个名为 root 的用户,该用户拥有超级权限,可以控制整个 MySQL 服务器。 在对 MySQL 的日常管理和操作中,为了避免有人恶意使用 root 用户控制数据库,我们通常创建一些具有适当权限的用户,尽可能地不用或少用 root 用户登录系统,以此来确保数

    2024年02月05日
    浏览(42)
  • 从数据库到用户界面:社区医疗服务可视化的全流程解析

    ✍✍计算机毕业编程指导师 ⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流! ⚡⚡ Java、Python、微信小程序、大数据实战项目集

    2024年02月20日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包