GO框架基础 (一)、MySQL数据库

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

什么是数据库

数据库是一个组织化的数据集合,它被设计为方便存储、管理和检索数据。数据库通常以表格的形式组织数据,其中每一行代表一个数据记录,每一列代表一个数据字段。数据库系统提供了一种结构化的方法来存储和管理数据,以便用户可以有效地访问和操作数据。

MySQL数据库

MySQL是一个开源的关系型数据库管理系统(RDBMS),它具有以下优势:

  1. 开源性: MySQL是开源软件,意味着用户可以免费获取、使用和修改它的源代码。这使得MySQL成为许多开发人员和组织的首选数据库,因为它不需要付费许可证费用。

  2. 跨平台支持: MySQL支持多种操作系统,包括Windows、Linux、macOS等,使得它能够在各种环境中运行和部署。

  3. 易于使用: MySQL的安装、配置和使用相对简单,具有友好的用户界面和广泛的文档资料。它提供了丰富的功能和工具,使得用户能够轻松地管理和操作数据库。

  4. 高性能: MySQL具有优化的查询执行引擎,能够处理大量数据和复杂的查询。它支持索引、缓存、分区等功能,提高了数据检索和处理的效率。

  5. 可扩展性: MySQL支持水平和垂直两种扩展方式,可以根据应用需求灵活扩展数据库的性能和容量。它还支持主从复制、集群等高可用性和负载均衡解决方案。

  6. 丰富的功能: MySQL提供了许多强大的功能,包括事务支持、存储过程、触发器、视图、复制、安全性等,使得它能够满足各种复杂的业务需求。

  7. 活跃的社区支持: MySQL拥有一个庞大的开发者社区,提供了丰富的资源和支持。用户可以通过社区论坛、邮件列表、文档、教程等获取帮助和交流经验。

  8. 广泛应用: MySQL被广泛应用于各种领域,包括Web开发、企业应用、电子商务、云计算等。许多知名的网站和应用程序都使用MySQL作为其后端数据库。

MySQL安装及图形化界面安装

MySql官网安装,选择msi的安装方式,msi是图形化界面,直接安装即可。

Navicat

Navicat官网安装
Navicat是一款流行的数据库管理工具,它提供了用于连接、管理和维护多种类型数据库的图形化界面。Navicat最初由PremiumSoft CyberTech Ltd.开发,目前已经成为了许多开发人员和数据库管理员的首选工具之一。

MySql数据类型

MySQL支持多种数据类型,包括以下主要类型:

  1. 整数类型:

    • INT: 常用的整数类型,存储范围为-2147483648到2147483647。
    • TINYINT: 一个字节的整数类型,存储范围为-128到127。
    • SMALLINT: 两个字节的整数类型,存储范围为-32768到32767。
    • BIGINT: 长整数类型,存储范围更大。
  2. 浮点数类型:

    • FLOAT: 单精度浮点数。
    • DOUBLE: 双精度浮点数。
    • DECIMAL: 用于存储固定精度的小数。
  3. 字符串类型:

    • CHAR: 定长字符串。
    • VARCHAR: 变长字符串。
    • TEXT: 较大的文本数据。
    • ENUM: 枚举类型,存储一个预定义的值列表。
    • SET: 集合类型,存储零个或多个预定义的值。
  4. 日期和时间类型:

    • DATE: 日期,格式为’YYYY-MM-DD’。
    • TIME: 时间,格式为’HH:MM:SS’。
    • DATETIME: 日期和时间,格式为’YYYY-MM-DD HH:MM:SS’。
    • TIMESTAMP: 时间戳,用于存储从UNIX纪元开始的秒数。
  5. 二进制类型:

    • BLOB: 用于存储二进制大对象数据。
    • BIT: 位数据类型。

这些是MySQL中常用的数据类型,每种数据类型都具有特定的用途和存储特性,可以根据实际需求选择合适的数据类型来存储数据。

MySql基础语法

通过图形化界面创建一个表,字段如下:
GO框架基础 (一)、MySQL数据库,GO语言从基础到应用,数据库,golang,mysql文章来源地址https://www.toymoban.com/news/detail-829227.html

-- 数据简单查询
-- SELECT FIELD(str,str1,str2,str3,...)
-- FROM TABLE
-- [WHERE CONDITION]
-- [GROUP BY FIELD(str,str1,str2,str3,...)]
-- [ORDER BY FIELD(str,str1,str2,str3,...)]
-- LIMIT

SELECT * FROM t_student

SELECT stuid,name,gender FROM t_student
-- WHERE查询
SELECT stuid,name,gender,age FROM t_student WHERE gender = 1

-- 避免重复数据查询
SELECT DISTINCT name FROM t_student

-- 拼接
SELECT CONCAT(stuid,name) FROM t_student

-- in 查询
SELECT * FROM t_student WHERE classno =1 OR classno =2
SELECT * FROM t_student WHERE classno IN (1,2,3)
SELECT * FROM t_student WHERE classno NOT IN (1,2,3)

-- BETWEEN AND 范围查询
SELECT * FROM t_student WHERE age  BETWEEN 16 AND 20

-- 聚合和统计
SELECT count(1) as peoplenum,gender,MAX(age),MIn(age),AVG(age),SUM(age),GROUP_CONCAT(name) FROM t_student GROUP BY gender
SELECT count(1) as peoplenum,name FROM t_student GROUP BY name HAVING peoplenum > 1

-- 分页
SELECT count(1) FROM t_student

-- 模糊查询 LIKE
SELECT * FROM t_student WHERE name LIKE  '%i'

-- 匹配单个字符. _是占位符,
SELECT * FROM t_student WHERE name LIKE  '__i'
SELECT * FROM t_student WHERE name LIKE  'h%'


-- 排序
SELECT stuid,name,gender,age FROM t_student WHERE gender = 1 ORDER BY age DESC

-- 联合查询  
-- INNER JOIN 交集 两边都有
SELECT t1.*,t2.* FROM t_student t1 INNER JOIN t_classroom t2 ON t1.classno = t2.classno

-- LEFT JOIN 先查询左表所有数据 再匹配右表数据 无数据填充null
SELECT * FROM t_student t1 LEFT JOIN t_classroom t2 ON t1.classno = t2.classno
UNION
-- RIGHT JOIN 先查询左表所有数据 再匹配右表数据 无数据填充null
SELECT * FROM t_student t1 RIGHT JOIN t_classroom t2 ON t1.classno = t2.classno
WHERE t1.classno IS NOT NULL

-- 子查询 先执行括号内的
SELECT * FROM t_student WHERE classno IN (SELECT classno FROM t_classroom)

-- EXISTS
SELECT * FROM t_student t1 WHERE EXISTS (SELECT * FROM t_classroom t2 WHERE t1.classno = t2.classno)

-- 分页处理
SELECT * FROM t_student LIMIT 2,2

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

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

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

相关文章

  • MySQL数据库基础(五):SQL语言讲解

    文章目录 SQL语言讲解 一、SQL概述 二、SQL语句分类 1、DDL 2、DML 3、DQL 4、DCL 三、SQL基本语法 1、SQL语句可以单行或多行书写,以分号结尾 2、可使用空格和缩进来增强语句的可读性 3、MySQL数据库的SQL语句不区分大小写,建议使用大写  4、可以使用单行与多行注释 四、总

    2024年02月19日
    浏览(44)
  • 【PHP网页应用】MySQL数据库增删改查 基础版

    使用PHP编写一个简单的网页,实现对MySQL数据库的增删改和展示操作 页面实现在index.php,其中basic.php为没有css美化的原始人版本 函数实现在database.php 目录 功能基本实现版  CSS美化版 basicindex.php  index.php   database.php 代码讲解 我们来展示一下页面和操作示例。 运行网页,可

    2024年01月16日
    浏览(36)
  • MySQL笔记(一):设计范式、基础概念、数据库定义语言DDL

    MySQL是一种数据库管理系统 (DBMS),是基于客户机-服务器的数据库; 分为两个不同的部分, 服务器软件(MySQL DBMS)是负责所有数据访问和处理的一个文件,这个软件运行在称为数据库服务器的计算机上,与数据文件打交道; 客户机则是与用户打交道的软件,对于用户提出的

    2024年02月03日
    浏览(50)
  • Go语言(Golang)数据库编程

    要想连接到 SQL 数据库,首先需要加载目标数据库的驱动,驱动里面包含着于该数据库交互的逻辑。 sql.Open() 数据库驱动的名称 数据源名称 得到一个指向 sql.DB 这个 struct 的指针 sql.DB 是用来操作数据库的,它代表了0个或者多个底层连接的池,这些连接由sql 包来维护,sql 包会

    2024年02月03日
    浏览(68)
  • Go 语言连接数据库实现增删改查

    MySQL驱动https://github.com/go-sql-driver/mysql 创建数据库后建表并插入数据 SQL 查询 插入结果 运行 SQL 查询更新结果 运行 SQL 查询删除结果

    2024年02月08日
    浏览(32)
  • Go 单元测试之Mysql数据库集成测试

    目录 一、 sqlmock介绍 二、安装 三、基本用法 四、一个小案例 五、Gorm 初始化注意点 sqlmock 是一个用于测试数据库交互的 Go 模拟库。它可以模拟 SQL 查询、插入、更新等操作,并且可以验证 SQL 语句的执行情况,非常适合用于单元测试中。 使用 sqlmock 进行 MySQL 数据库集成测试

    2024年04月17日
    浏览(34)
  • 从零实现一个数据库(DataBase) Go语言实现版 0.介绍

    英文源地址 我们为什么需要数据库?为什么不是直接把数据dump进文件中. 第一个话题就是持久化. 我们将讨论如果写入文件的过程中程序崩溃了, 或者电源断电了, 文件的状态会是什么样的呢? 文件是否只是丢失了最后一次写操作? 或者以写了一半的文件结束 或者是以更差的状态

    2024年02月06日
    浏览(33)
  • django框架——实现MySQL数据库数据的删除

    在html中的删除按钮中绑定js文件中的事件,带上参数,点击即触发(删除按钮不能是a链接,不然报错) js文件中实现该功能,发起ajax请求到后端视图中对数据库进行操作 路由导入 在视图里面实现删除功能

    2024年02月13日
    浏览(40)
  • MYSQL数据库基础(数据库)

    用户在客户端输入SQL语句 客户端会把SQL通过网络发送给服务器 服务器会执行这个SQL,把结果返回给客户端 客户端接收到结果后,显示到界面上 1.创建数据库 1.1 语法 1.2 解析 已经有了数据库,为何还要创建 计算机中,不同的词有不同的含义,如一门学科、一类软件、某个具

    2024年02月07日
    浏览(40)
  • 【REST2SQL】07 GO 操作 Mysql 数据库

    【REST2SQL】01RDB关系型数据库REST初设计 【REST2SQL】02 GO连接Oracle数据库 【REST2SQL】03 GO读取JSON文件 【REST2SQL】04 REST2SQL第一版Oracle版实现 【REST2SQL】05 GO 操作 达梦 数据库 【REST2SQL】06 GO 跨包接口重构代码 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle旗

    2024年01月22日
    浏览(75)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包