首页 > 其他分享 >学习笔记十二

学习笔记十二

时间:2023-12-03 22:46:28浏览次数:23  
标签:关系 数据库 MySQL 十二 笔记 学习 命令 表中 table

《Unix/Linux系统编程》第十四章学习笔记

MySQL

MySQL是一个关系数据库系统。在关系数据库中,数据存储在表中。关系数据库系统的标准查询语言是SQL(结构化查询语言)

Ubuntu Linux下MySQL的安装与使用

(1)安装MySQL

命令sudo apt-get install mysql-server可以安装一个mysql—server包,mysql-server包包括一个MySQL服务器和一个客户机。

(2)连接MySQL

首先要运行MySQL客户机程序,从X-window终端输入MySQL客户机命令mysql,它连接到同一台计算机上默认本地主机上的MySQL服务器。连接到MySQL服务器后,即可访冋MySQL shell,它只接受MySQL命令或MySQL脚本,而不接受普通sh命令。在输入MySQL命令时,要注意以下几点。

 

所有的MySQL命令行末尾必须是分号。

  • MySQL命令行不区分大小写。

(3)显示数据库

SHOW DATABASES命令可显示MySQL中的当前数据库。

(4)新建数据库

CREATE DATABASE XXX命令将创建一个名为XXX的新数据库。

(5)删除数据库

DROP DATABASE dbname会删除已存在的命名为dbname的数据库。DROP操作是不可逆的。一旦数据库被删除,就无法撤销或恢复

(6)选择数据库

假设MySQL已经有几个数据库。为了操作特定的数据库,必须通过USE dbname命令选择一个数据库。

(7)创建表

CREATE TABLE table_name命令会在当前数据库中创建一个表。DESCRIBE或DESC命令显示表格式和列属性。

(8)删除表

DROP TABLE table_name命令可删除表。

(9)插入行

要在表中添加行,可使用INSERT命名,具有如下语法形式:INSERT INTO table_name VLAUES(column Vaiuel, column Value2,...);

(10)删除行

用DELETE命令从表中删除行,其语法形式如下:

img

(11)更新表

UPDATE命令用于修改表中的现有记录(列)。它的语法形式如下:UPDATE table_name SET coll = valuel, col2 = value2,... WHERE condition;

(12)修改表

ALTER TABLE命令用于添加、删除或修改当前表中的列。它还用于添加和删除当前表 中的各种约束条件。

img

MySQL中的数据类型

MySQL中使用的基本数据类型,主要有三类:数字、字符串、日期和时间。

 

 

    • 数值类型:

      INT:整数(4字节),TINYINT:(1字节),SMALLINT:(2 字节) FLOAT:浮动指针数。

 

    • 字符串类型:

      CHAR(size):固定长度字符串,长度为1〜255字符。 VARCHAR(size):可变长度字符串,但不能使用任何空格。 TEXT:可变长度的字符串。

 

  • 日期和时间类型:

    DATE:日期格式为 YYYY-MM-DD。 TIME:以S格式保存时间。

关联表

一个真正的数据库可能包含多个相互关联的表。在MySQL中,使用主键-外键约束条件来定义表关系。在两个表之间创建链接,其中一个表的主键与另一个表的外键相关联。在MySQL中,表可能以几种方式相关联,包括:

 

 

    • 一对一(1-1)关系: 一对一(1-1)关系是指两个表仅基于一个匹配行相互关联的关系。可以使用主键-外键约束条件创建这类关系。

       

 

    • 一对多(l-M)关系:

      一对多关系是指一个表中的一行在另一个表中有多个匹配行的关系。可以使用主键-外键关系来创建这种关系。

 

    • 多对多(M-M)关系:

      如果一个表中的多条记录与另一个表中的多条记录相关,则两个表具有多对多(M-M) 关系。处理M-M关系的标准方法是在两个表之间创建一个连接表。连接 表使用外键来引用两个表中的主键,从而在两个表之间创建连接。

 

  • 自引用关系

连接操作

在MySQL中,可使用连接操作在多个表中检索数据。连接操作有4种不同的类型。

 

(INNER) JOIN table 1, table2:检索两个表中共有的项。LEFT JOIN table 1, table2:检索表1中的项以及两个表中共有的项。RIGHT JOIN tablel,table2:检索表2中的项以及两个表中共有的项。

  • OUTER JOIN tabell,table2:检索两个表中非共有以及没有用的项。
  • 对于正则集运算,MySQL中的连接操作可以解释如下。+表示两个集合的并集,^表 示两个集合的交集。

进行ChatGPT测试如下图所示:

 

标签:关系,数据库,MySQL,十二,笔记,学习,命令,表中,table
From: https://www.cnblogs.com/20191128hzy/p/17871650.html

相关文章

  • 2023-2024-1 20231325 《计算机基础与程序设计》第10周学习总结
    ###目录*作业信息*教材学习内容总结1.《计算机科学概论》第12,13,14章2.《c语言程序设计》第9章*基于AI的学习*学习心得*学习进度条作业信息这个作业属于哪个课程2023-2024-1《计算机基础与程序设计》这个作业的要求在哪里1.学习《计算机科学概论》第12......
  • 2023-2024-1 学号:20231305 《计算机基础与程序设计》第10周学习总结
    2023-2024-1学号:20231305《计算机基础与程序设计》第10周学习总结作业信息这个作业属于哪个课程<班级的链接>(如2022-2023-1-计算机基础与程序设计)这个作业要求在哪里<作业要求的链接>(如2022-2023-1计算机基础与程序设计第一周作业)这个作业的目标<自学教材计......
  • 2023-2024-1 20232426刘嘉成 《网络空间安全导论》第4周学习总结
    2023-2024-120232426刘嘉成《网络空间安全导论》第4周学习总结教材学习内容总结简要总结本周学习内容:系统安全与系统各组件安全的关系(不依靠还原论)系统安全原理系统安全结构教材学习思维导图教材学习中的问题和解决过程问题1:不理解涌现性和综合特性问题1解决方案:询......
  • 【graphviz笔记】
    入门新建sample.dot文件,打开编辑为:digraphg{xy}在命令行中输入dotsample.dot-Tpng-osample.png-T后接要生成的图片格式,可以是pdf、svg格式等。-o指明生成文件名指定节点属性digraphg{ 1[label="x",color=orange,style=filled] 2[label="y",col......
  • 2023-2024-1 20231427 《计算机基础与程序设计》第十周学习总结
    作业信息这个作业属于哪个课程https://edu.cnblogs.com/campus/besti/2023-2024-1-CFAP/homework/13006(如)这个作业要求在哪里<作业要求的链接>(如https://www.cnblogs.com/rocedu/p/9577842.html#WEEK10)这个作业的目标<信息系统数据库与SQL人工智能与专家......
  • 2023-2024-1 20231418 《计算机基础与程序设计》第10周学习总结
    2023-2024-120231418《计算机基础与程序设计》第10周学习总结作业信息这个作业属于哪个课程2023-2024-1-计算机基础与程序设计这个作业要求在哪里2022-2023-1计算机基础与程序设计第十周作业这个作业的目标计算机科学概论第12,13,14章《C语言程序设计》第9章作业......
  • openGauss学习笔记-140 openGauss 数据库运维-例行维护-例行维护表
    openGauss学习笔记-140openGauss数据库运维-例行维护-例行维护表为了保证数据库的有效运行,数据库必须在插入/删除操作后,基于客户场景,定期做VACUUMFULL和ANALYZE,更新统计信息,以便获得更优的性能。140.1相关概念使用VACUUM、VACUUMFULL和ANALYZE命令定期对每个表进行维护,主要......
  • 2023-2024-1-20231324《计算机基础与程序设计》第十周学习总结
    2023-2024-1-20231324《计算机基础与程序设计》第十周学习总结 作业信息这个作业属于哪个课程2023-2024-1-计算机基础与程序设计这个作业要求在哪里2022-2023-1计算机基础与程序设计第十周作业这个作业的目标计算机科学概论第12,13,14章《C语言程序设计》第9章作......
  • 学习记录:用python实现井字棋小游戏
    1.实现双人井字棋 创建3*3矩阵 制作下棋函数 制作判断获胜函数 2.实现简单ai 在输入下棋位置后自动在空位下棋 3.复杂化 自动寻找下后获胜的位置 若无则判断对手是否即将获胜并进行堵截 仍无则在随机空位下棋 新手上路出现了很多啼笑皆非的bug 诸如在print下方出现N......
  • 2023-2024第一学期 20232315 《网络空间安全导论》学习第四周
    一、教材学习内容总结最近我学习了《网络空间安全导论》第四章--系统安全基础,了解了系统安全思维、系统安全原理以及系统安全的结构,下面是一张思维导图:二、教材学习中的问题及解决过程问题一:系统的涌现性和综合特性有什么区别?解决方法:百度答案:综合特性主要是指可以通过系统......