MySQL基本概念

本文介绍了数据库管理系统(DBMS)的基础概念,包括数据库、表、模式、列、数据类型、行、主键等,并详细解释了MySQL这一特定类型的DBMS及其客户端工具。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.数据库软件(DBMS)

     也称数据库管理系统,数据的所有存储、检索、管理和处理都是由DBMS完成的,用户并不直接访问数据库,而是使用DBMS,通过DBMS访问数据库;

     分类:基于共享文件系统的DBMS,用于桌面用途

           ‚基于客户机-服务器的DBMS,用于高端关键应用

     服务器:与数据文件打交道的负责所有数据访问和处理的软件

     客户机:与用户打交道的软件

2.数据库(database)

     通过DBMS创建和操纵的一个可以保存有组织的数据的容器,通常是一个文件或一组文件;

3.表

     是一种结构化的文件,可用来存储某种特定类型的数据;

     相同数据库中表名必须唯一,不同数据库中可不相同;

4.模式

     关于数据库和表的布局及特性的信息;

5.列

     表中的一个字段,所有表都是由一个或多个列组成的;

6.数据类型(datatype)

     所容许的数据的类型,每个表列都有相应的数据类型,它限制(容许)该列中存储的数据;

7.行

     表中的数据时按行存储的,行就是表中的一个数据库记录;

     垂直的列为表列,水平的行为表行;

 

 

8.主键

     能够唯一区分表中的每个行,可以是任何一列或一组列;

     每个行都必须有一个主键值,且唯一,主键列不允许NULL值;

     习惯:不更新主键列中的值;

           不重用主键列中值;

           不在主键列中使用可能会更改的值

9.SQL(Structured Query Language)

     一种专门用来与数据库通信的语言,不可完全移植;

10.MySQL

     (1)MySQL是一种基于客户机-服务器的数据库软件(DBMS)

     (2)MySQL的客户机应用工具:

            mysql命令行实用程序(核心MySQL安装的一部分)

            ‚MySQL Administrator(图形交互客户机)

            ƒMySQL Query Browser(图形交互客户机)

     (3)mysql命令行必须以分号结束SQL语句;

      SQL语句不区分大小写,习惯:SQL关键字大写,列和表名小写;

      SQL语句可在一行给出,也可分成多行;

11.选择数据库

     在执行任意数据库操作前,必须要先通过use关键字选择并打开一个数据库    

12.create database 数据库名;//创建一个数据库

   show databases;  //返回可用数据库的一个列表

   show tables;     //返回当前选择的数据库内可用表的列表

   show columns from 表名;//对每个字段返回一行详细信息

13.自动增量

   自动为每个行分配下一个可用编号,不用手动分配唯一值;

  使用它必须在用create语句创建表时把它作为表定义的组成部分

 

### MySQL 和 PostgreSQL基本概念 #### MySQL 基本概念 MySQL 是一种关系型数据库管理系统(RDBMS),它使用结构化查询语言(SQL)来管理和操作数据。MySQL以其快速、可靠和易于使用的特性著称,在Web应用程序开发中广泛应用,尤其是在LAMP(Linux, Apache, MySQL, PHP/Python/Perl)栈环境中。 #### PostgreSQL 基本概念 PostgreSQL 同样是一种开源的关系型数据库系统,强调标准兼容性和高级功能的支持。相比其他RDBMS,PostgreSQL提供了更为丰富的SQL标准实现以及多种编程接口,并且内置了对复杂事务处理的支持,适用于构建大型企业级应用和服务平台[^1]。 ### 主要差异 #### 性能表现 对于不同的应用场景,两者表现出不同优势。当面对轻量化需求或是简化管理的任务时,MySQL往往能够提供更优的选择;而对于涉及大量复杂查询或承受高并发访问压力的情况,则PostgreSQL通常会成为更好的解决方案。 #### 扩展能力 - **PostgreSQL**: 支持像Citus这样的扩展工具来进行分布式SQL处理。 - **MySQL**: 凭借其成熟的分片策略及集群架构设计,在应对互联网领域内海量用户的横向扩容方面展现出较高的灵活性[^2]。 #### SQL 特性支持程度 就SQL特性的覆盖范围而言,PostgreSQL明显优于MySQL——前者几乎完全遵循ANSI/ISO的标准定义,后者则仅部分实现了这些规范,比如缺乏对公共表表达式的直接支持(即`WITH`子句)[^3]。 #### 数据操纵语句的安全考量 在执行更新(`UPDATE`)或删除(`DELETE`)操作时,如果涉及到左外联结(`LEFT JOIN`)的方式,应当谨慎行事,因为这可能导致实际影响到超出预期数量的数据记录。这种情况下,建议先明确业务逻辑再做决定[^4]。 ```sql -- 示例:安全地使用 UPDATE 配合 LEFT JOIN (假设为 MySQL) UPDATE orders o JOIN customers c ON o.customer_id = c.id SET o.status = 'processed' WHERE c.country = 'USA'; ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值