MySQL:初识数据库初识SQL建库

news2024/11/16 0:03:28

目录

1、初识数据库

1.1 什么是数据库

1.2 什么是MySQL

2、数据库

2.1 数据库服务&数据库

2.2 C/S架构

3、 初识SQL

3.1 什么是SQL

3.2 SQL分类

 4、使用SQL

4.1 查看所有数据库

4.1.2 语句解析

 4.2 创建数据库

4.2.1 if not exists校验 

4.2.2 手动明确字符集和排序规则

4.2.3 SQL语句创建数据库

4.3 查看当前数据库服务的全局默认字符集


1、初识数据库

1.1 什么是数据库

首先,我们之前所学的如Java、C++等编程语言是用来处理用户数据的;而数据库是用来保存用户数据的,其底层应用了一些合适的数据结构对数据进行管理。

数据库可以将数据保存在磁盘(外存)中,实现了对数据的持久化,解决了程序重启或开关机后数据丢失的问题。

1.2 什么是MySQL

MySQL就是一个开源、免费、应用广泛的数据库软件。

MySQL是一个关系型数据库。


2、数据库

2.1 数据库服务&数据库

机器提供的数据库服务中可以存在多个数据库,而每个数据库中又存在着多张数据表,每张数据表都有相关的信息:

在表中,每一列称为字段、列,可以理解为Java中的属性;每一行,即所有列组成的一条记录(一行数据)称为一个数据行。

故,总结如下:

  • 数据库服务中可以创建多个数据库
  • 每个数据库中有多个数据表
  • 每个数据表中有多个数据行
  • 每个数据行由多个列组成
  • (即依次包含关系)

2.2 C/S架构

C- Client(客户端),S-Serve(服务端)

理解C/S架构,我们需要先了解以下定义:

  • 请求:当客户端向服务器发送请求时,明确指定自己要操作的目标(访问哪个库中的哪个表,哪个表中的哪些行,哪些行中的哪些列)的过程叫做请求。
  • 相应:服务器接收到客户端的相应后,把处理的结果返回给客服端的过程叫做相应。

请求与响应是成对出现的。 

对于客户端与服务器之间的交互模型,我们称之为C/S架构。

注意:客户端与服务器之间是通过网络进行交互的。127.0.0.1 这个IP始终代表本机IP(无论是否有网络)。

3、 初识SQL

3.1 什么是SQL

数据库用来保存数据,如果要操作数据库需要使用SQL。

SQL是一门语言,专门针对操作数据库的语言,我们只需掌握增删查改操作即可。

3.2 SQL分类

  1. DDL数据定义语言,用来维护存储数据的结构(data definition language)
  2. DML数据操纵语言,用来对数据(数据行)进行操作(data manipulation language)
  3. DCL数据控制语言,主要负责权限管理和事务(data control language)

我们只需学习DDL与DML,DCL主要使用于运维相关。


 4、使用SQL

4.1 查看所有数据库

查看当前所有数据库:show databases; 

如下图所示:

 

其中,红色标记出来的都是MySQL自带的数据库记录是一些关于MYSQL自身的一些配置,性能,系统变量信息:

4.1.2 语句解析

输入技巧:

1.Ctrl+C 重新开始新一行的输入。

2.若语句太长,只要没有遇见;回车即可在下一行继续上一行的输入。


 4.2 创建数据库

SQL语句是大小写不敏感的,所以以下两种语句是相同的:

create database if not exists Java113;

CREAT DATABASE IF NOT EXISTS JAVA113; 

4.2.1 if not exists校验 

其中,if not exists的作用是检查要创建的数据库是否存在,若不存在则创建,若存在则提示警告信息。

查看警告信息:show warnings; 

注意:

在实际的工作中,执行SQL语句时,不是手动一条一条执行的,而是批量一起执行,为了不让某一条语句的错误影响整个执行流程,都会加上一些类似于if not exists 的校验,防止因为某条SQL出错导致整个SQL中断执行。

4.2.2 手动明确字符集和排序规则

在创建数据库时,强烈建议大家手动明确字符集和排序规则!!!

4.2.3 SQL语句创建数据库

故完整创建数据库的SQL语句如下(if not exists校验 && character set ... collate...):

注:MySQL中允许开发者使用关键字命名,但是在使用的时候要用反引号把关键字引起来

如:create database if not exists `database` character set utf8mb4 collate utf8mb4_0900_ai_ci;

反引号在键盘上的位置为:ESC下边,TAB上边,1的左边,要用英文字符 (`)

关键字:database、create、user、from、to、password...... 


4.3 删除数据库

删除数据库:drop database if exists 数据库名;

注:drop删除语句的使用一定要谨慎,删除数据库是一个非常非常危险的操作,在自己的项目或是公司中千万不要这么做,使用之前一定要慎之又慎!!!


4.4 查看当前数据库服务的全局默认字符集

查看当前数据库服务的全局默认字符集:show variables like ‘%character%’;

使用MySQL的帮助信息的SQL语句为:\? 或者 ?

​​​​​​​



END

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1975707.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

新款奔驰S450升级动态按摩座椅有哪些功能

奔驰 S450 升级前排动态按摩座椅通常具有以下功能: 1. 多种按摩模式和强度选择:通过精心设计的气囊和机械装置,能够模拟如揉捏、敲击、推拿等不同的按摩手法,为驾驶者和前排乘客舒缓肌肉疲劳,放松身心。 2. 广泛的按…

本地部署文生图模型 Flux

本地部署文生图模型 Flux 0. 引言1. 本地部署1-1. 创建虚拟环境1-2. 安装依赖模块1-3. 创建 Web UI1-4. 启动 Web UI1-5. 访问 Web UI 0. 引言 2024年8月1日,blackforestlabs.ai发布了 FLUX.1 模型套件。 FLUX.1 文本到图像模型套件,该套件定义了文本到…

2024年最有效的谷歌外链技巧!

在2024年,谷歌外链的战略在谷歌SEO领域依然占据重要地位。有效的外链战略不仅仅依赖于数量,更注重质量和结构的多样性。以下是一些最有效的策略 1.多样化的链接结构: 排名靠前的网站通常拥有复杂多元的外链结构。这意味着他们的链接来自不同…

【Python机器学习】支持向量机——SMO高效优化算法

最小化的目标函数、优化过程中必须要遵循的额约束条件。不久之前,人们使用二次规划求解工具来解决上述最优化问题,这种工具是一种用于在线性约束下优化具有多个变量的二次目标函数的软件,而这些二次规划求解工具需要强大的计算能力支撑&#…

一文搞懂后端面试之数据库MySQL的各种锁以及锁优化【中间件 | 数据库 | MySQL | 锁机制】

锁与索引 在MySQL的InnoDB引擎里,锁是借助索引来实现的,加锁锁住的其实是索引项,更加具体的说,是锁住了叶子节点。 引出的问题: 一个表有很多索引,锁的是哪个索引呢? 答案是 查询最终使用的索…

AI2-CUDA、CuDNN、TensorRT的详细安装教程

一、查看本机的显卡 首先你要看你的电脑是否有NVIDIA的独立显卡,你可以在设备管理器-显示适配器中查看 点击“开始”--找到“NVIDA Control Panel” 点击帮助--系统信息--组件,查看NVCUDA.DLL对应的产品名称,就可以看住CUDA的版本号 这里的版…

P31结构体初阶 (1)

结构体的声明 结构体的基础知识 结构是一些值的集合,这些值成为成员变量。结构的每个成员可以是不同类型的变量。 结构体的声明 结构成员的类型 结构的成员可以是标量、数组、指针,甚至是其他结构体 结构体变量的定义和初始化 结构体成员的访问 结构…

AVL树图解(插入与删除)

文章目录 AVL树概念平衡因子 旋转左单旋更新父节点与孩子节点的连接 右单旋左右双旋 (先左单旋再右单旋)右左双旋 (先右单旋再左单旋)验证是否为AVL树ALV树的删除操作一. 高度不变删除叶子节点和单孩子节点1.1高度不变删除叶子节点1.2删除单孩子节点 二. 高度变化 - 旋转2.1 左…

基于JAVA的企业财务管理系统设计与实现

点击下载源码 基于JAVA的企业财务管理系统设计与实现 摘要 对于企业集来说,财务管理的地位很重要。随着计算机和网络在企业中的广泛应用,企业发展速度在不断加快,在这种市场竞争冲击下企业财务管理系统必须优先发展,这样才能保证在竞争中处…

第30届哈尔滨种博会提质升级,10月28-30日移师长春全新亮相!

紧扣农业新质生产力发展需要,持续推动区域种业发展和农业振兴,第30届哈尔滨种业博览会暨第19届哈尔滨农资博览会/北方现代农业设施设备展将于10月28-30日在长春东北亚国际博览中心举办。展会扎根东北,全面辐射北方地区,被东北地区…

50 IRF检测MAD-BFD

IRF 检测MAD-BFD IRF配置思路 网络括谱图 主 Ten-GigabitEthernet 1/0/49 Ten-GigabitEthernet 1/0/50 Ten-GigabitEthernet 1/0/51 备 Ten-GigabitEthernet 2/0/49 Ten-GigabitEthernet 2/0/50 Ten-GigabitEthernet 2/0/51 1 利用console线进入设备的命令行页…

C语言初阶(11)

1.结构体定义 结构体就是一群数据类型的集合体。这些数据类型被称为成员变量。结构的成员可以是标量、数组、指针,甚至是其他结构体。 2.结构体的声明和结构体变量命名与初始化 结构体声明由以下结构组成 struct stu {char name[12];int age; }; 结构体命名有两…

计算机毕业设计选题推荐-生活垃圾治理系统-Java/Python项目实战

✨作者主页:IT毕设梦工厂✨ 个人简介:曾从事计算机专业培训教学,擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Py…

解决卸载360安全卫士,报错“需要来自administrators权限才能对此文件夹进行更改”

卸载360卫士报错,见图: 解决过程: cmd 输入msconfig引导,勾上安全引导后确定立即重启进入安全模式然后进去360位置,进入文件夹后把所有都删除了 可能遇到的问题: 有个.dll的文件显示被其他进程访问删不掉…

Win11不在C盘安装WSL2(Linux环境),安装Nvidia驱动和默认使用Win11的网络代理服务

众所周知,WSL 2 为 Windows 用户提供了一个强大、高效且灵活的 Linux 环境,特别适合开发者使用。它结合了 Windows 和 Linux 的优点,为用户提供了更加全面和高效的工作环境。但缺点也很明显,那就是默认安装在本来空间就不富裕的C盘…

[一本通提高数位动态规划]恨7不成妻--题解--胎教级教学

[一本通提高数位动态规划]恨7不成妻--题解--胎教级教学 1前言2问题3化繁为简--对于方案数的求解(1)子问题的分解(2)数位dp-part1状态设置--利用约束条件推状态(3)数位dp-part2状态转移(4&#x…

【leetcode详解】正方形中的最多点数【中等】(C++思路精析)

思路精析: 自定义结构体解读: 一个点是否在题给正方形中,只取决于其横纵坐标的最大值,记为dis 沟通二位数组points和字符串s的桥梁,就是这个点的序号,记为idx 由此自定义结构体,储存dis 和i…

JAVA中List不能创建实例。结合ArrayList的理解。

今天在使用List的时候,我以为List是一个父类,ArrayList继承自List,所以我想着干脆直接就创建一个List实例。结果发现程序报错了。 后来我查看了List源码,和ArrayList源码,我发现。List是一个接口,而ArrayL…

mac中dyld[99014]: Library not loaded: @rpath/libmysqlclient.24.dylib解决方法

将需要的库做个软链即可 sudo ln -s -f /usr/local/mysql-9.0.1-macos14-arm64/lib/libmysqlclient.24.dylib /usr/local/mysql/lib/libmysqlclient.24.dylib 再执行就不会报这个错误了,报的下一个需要的库

去噪扩散恢复模型

去噪扩散恢复模型 Bahjat Kawar 计算机科学系 以色列海法理工学院 bahjat.kawarcs.technion.ac.il Michael Elad 计算机科学系 以色列海法理工学院 eladcs.technion.ac.il Stefano Ermon 计算机科学系 美国加利福尼亚州斯坦福大学 ermoncs.stanford.edu …