数据库、数据表的基本操作

1.数据库的基本操作
(1)创建数据库

(2)删除数据库

(3)将数据库的字符集修改为gbk

gbk是汉字内码扩展规范,是GB2312和GB13000的扩展,主要用于简体中文。

(4)切换数据库

2.数据表的基本操作

数据库中的数据表是数据库结构的基本组成部分,用于存储数据的集合。数据表通常也被称为关系、表或简单称为表。以下是数据表的一些基本概念:

  1. 结构化数据:数据表以结构化的方式存储数据,通常由行(记录)和列(字段)组成。每一列代表数据的一个特定属性,每一行代表一个数据项。

  2. 列(字段):数据表的每一列都有一个特定的数据类型,如整数、浮点数、字符串、日期等,这决定了该列可以存储哪些类型的数据。

  3. 行(记录):数据表的每一行代表一个数据记录。例如,在一个员工表中,每一行可能代表一个员工的详细信息。

  4. 主键:数据表中的一列或多列可以被指定为主键,用于唯一标识表中的每条记录。主键的值必须是唯一的,不能为NULL。

  5. 外键:外键是表中的一列或多列,它在另一个表的主键中存在,用于建立两个表之间的关联。

  6. 索引:为了提高查询效率,可以在数据表的列上创建索引。索引可以帮助数据库管理系统快速定位到表中的特定数据。

  7. 约束:约束用于限制可以插入表中的数据的类型。常见的约束包括非空(NOT NULL)、唯一(UNIQUE)、主键(PRIMARY KEY)和外键(FOREIGN KEY)。

  8. 表关系:数据表之间可以存在不同的关系,如一对一、一对多和多对多关系。这些关系通过外键约束来实现。

  9. 视图:视图是基于查询的表的表示形式,它像一个虚拟表,可以包含来自一个或多个数据表的数据。

  10. 存储过程和触发器:存储过程是一组为了执行特定任务而预编译的SQL语句,而触发器是与表相关联的特殊的存储过程,它在特定数据库操作(如INSERT、UPDATE或DELETE)执行时自动触发。

  11. 规范化:数据库规范化是设计数据库表的过程,目的是减少数据冗余和提高数据完整性。

  12. 数据完整性:数据表设计时需要考虑数据完整性,确保数据的准确性和一致性。

数据表是数据库操作的核心,通过它们可以执行插入、查询、更新和删除操作。设计良好的数据表结构可以提高数据库的性能和可维护性。

注意:在操作数据表之前应使用“USE 数据库名;”指定操作是在哪个数据库中进行先关操作,否则会抛出“No database selected”错误。

(1)创建数据表

(2)查看数据表,查看表达字段信息

(3)修改数据表

3.数据表的约束
(1)主键约束

在MySQL中,主键(Primary Key)是一种特殊的唯一性约束,用于唯一标识表中的每条记录。主键在数据库表中扮演着重要的角色,以下是主键的一些关键特性和作用:

  1. 唯一性:主键的值必须是唯一的,不能有重复的记录。这意味着表中的每一行都有一个不同的主键值。

  2. 非空(NOT NULL):主键列不能接受NULL值。每个记录都必须有一个有效的主键值。

  3. 唯一标识:主键用于唯一标识表中的每一行,是数据表中记录的唯一标识符。

  4. 性能优化:主键通常被用来创建索引,这可以提高查询效率。

  5. 外键关联:主键可以被其他表的外键引用,以建立表之间的关系。

  6. 自动增长:在MySQL中,如果需要,可以设置主键列为自增(AUTO_INCREMENT)。这样,每次插入新记录时,主键列的值会自动递增,无需手动指定。

  7. 一个表只有一个主键:虽然一个表可以有多个唯一索引,但只能有一个主键。

  8. 数据完整性:主键约束有助于维护数据的完整性,确保每个记录都可以被唯一地识别。

  9. 索引顺序:在MySQL的InnoDB存储引擎中,如果没有特别指定,主键将被用作表的聚簇索引(clustered index)。

(2)非空约束

(3)默认值约束

(4)唯一性约束

(5)外键约束

外键约束即FOREIGN KEY常用于多张表之间的约束。

外键约束(Foreign Key Constraint)在数据库管理系统中用于维护不同数据表之间的链接和数据的引用完整性。以下是外键约束的主要用途:

  1. 维护引用完整性: 外键约束确保一个表中的每条记录在另一个表中都有对应的引用。这有助于保持数据的一致性和准确性。

  2. 建立表之间的关系: 外键用于在两个表之间建立链接,通常是一个表的某个字段指向另一个表的主键。

  3. 数据完整性: 外键约束强制实施数据完整性规则,防止无效或不一致的数据被插入到数据库中。

  4. 级联操作: 外键约束可以定义级联规则,例如,当主键表中的记录被更新或删除时,外键表中相应的记录可以自动更新或删除。

  5. 简化查询: 通过外键关系,可以简化连接查询,因为数据库可以更容易地识别表之间的关系。

  6. 数据一致性: 在分布式数据库系统中,外键约束有助于保持数据的一致性,即使数据分布在不同的地理位置。

  7. 防止孤立记录: 外键约束可以防止在删除主键表中的记录时,外键表中仍然存在指向该记录的引用,从而避免孤立记录的产生。

  8. 提供数据导航: 外键关系为数据库提供了一种导航方式,使得从一个表到另一个表的数据访问更加直观和方便。

  9. 优化性能: 在某些情况下,外键可以作为数据库查询优化的一部分,帮助数据库管理系统更有效地组织数据和索引。

  10. 支持事务: 外键约束支持事务性操作,确保数据库操作的原子性,一致性,隔离性和持久性(ACID属性)。

  11. 数据建模: 在数据库设计阶段,外键约束是数据模型中的重要部分,有助于定义数据表之间的关系。

外键约束是关系型数据库管理系统中的一个基本特性,对于确保数据库中数据的完整性和一致性至关重要。在设计数据库时,合理使用外键可以大大提高数据管理的效率和质量。

-- 在创建数据表时语法如下:
CONSTRAINT 外键名 FOREIGN KEY (从表外键字段) REFERENCES 主表 (主键字段)
-- 将创建数据表创号后语法如下:
ALTER TABLE 从表名 ADD CONSTRAINT 外键名 FOREIGN KEY (从表外键字段) REFERENCES 主表 (主键字段);

4.数据一致性

建立外键是为了保证数据的完整和统一性。但是,如果主表中的数据被删除或修改从表中对应的数据该怎么办呢?很明显,从表中对应的数据也应该被删除,否则数据库中会存在很多无意义的垃圾数据。

(1)删除外键

注意:

1、从表里的外键通常为主表的主键
2、从表里外键的数据类型必须与主表中主键的数据类型一致
3、主表发生变化时应注意主表与从表的数据一致性问题

5.数据表插入数据
(1)为表中所有字段插入数据

6.更新数据
(1)update更新部分数据

(2)update更新全部数据

6.删除数据
(1)delete删除部分数据

(2)delete删除全部数据

7.数据表简单查询
(1)查询所有

(2)查询指定的字段

(3)从查询结果中过滤重复数据

(4)算数运算符

8.聚合函数
(1)count()统计该查询表中有多少人

(2)用max()和min()查询该表中年龄最大和最小的

(3)计算指定列表的数值和

(4)计算指定列表的平均值

9.根据条件查询

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

vmware 正版免费下载

Broadcom 已经收购了 vmware 并且对普通用户提供免费服务. 那么我们怎么去获取这个玩意呢, 注册完之后打开就是这么个狗屎 , 根本不知道在哪里下载,注册的时候还不能用国内邮箱更是超级狗屎 转到 dashboard 搜索 workstation Pro你会搜索到这么一个奇怪的网址然后…

LeetCode 算法:盛最多水的容器c++

原题链接🔗:盛最多水的容器 难度:中等⭐️⭐️ 题目 给定一个长度为 n 的整数数组 height 。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。 找出其中的两条线,使得它们与 x 轴共同构成的容器可以…

JavaSE——集合框架二(6/6)-(案例)补充知识:集合的嵌套(需求与分析、问题解决、运行测试)

目录 案例引入 需求与分析 问题解决 运行测试 集合的嵌套 顾名思义,指的是集合中的元素又是一个集合。 本篇通过一个案例对这一知识进行了解: 案例引入 需求与分析 要求在程序中记住如下省份和其对应的城市信息,记录成功后&#xff0…

【AI】llama-fs的 安装与运行

pip install -r .\requirements.txt Windows PowerShell Copyright (C) Microsoft Corporation. All rights reserved.Install the latest PowerShell for new features and improvements! https://aka.ms/PSWindows(venv) PS D:\XTRANS\pythonProject>

【错误记录】HarmonyOS 运行报错 ( Failure[MSG_ERR_INSTALL_FAILED_VERIFY_APP_PKCS7_FAIL] )

文章目录 一、报错信息二、问题分析二、解决方案 一、报错信息 在 DevEco Studio 中 , 运行程序 , 编译时正常编译 , 但是在真机运行时 , 报如下错误 , 核心报错信息是 " Failure[MSG_ERR_INSTALL_FAILED_VERIFY_APP_PKCS7_FAIL] " ; 完整报错信息 : 05/29 10:58:55…

【软件全套资料】软件项目各阶段各类资料文档支撑,项目申报,立项,开发,运维,交付,售后,体系认证,评审资质

在软件开发过程中,文档扮演着至关重要的角色。它不仅记录了项目的需求、设计和开发过程,还为项目的维护和管理提供了便利。本文将详细介绍软件开发文档的重要性和作用,以及需求分析、软件设计、开发过程、运维管理和项目管理等方面的文档编写…

大数据治理平台建设解决方案(66页PPT)

方案介绍: 本解决方案旨在构建一个集数据集成、数据存储、数据处理、数据分析和数据安全于一体的大数据治理平台,帮助企业实现数据资产的统一管理和高效利用,提升业务决策效率和准确性。本大数据治理平台建设解决方案旨在为企业提供全面、高…

支持AMD GPU的llm.c

anthonix/llm.c: LLM training in simple, raw C/HIP for AMD GPUs (github.com) llm.c for AMD devices This is a fork of Andrej Karpathys llm.c with support for AMD devices. 性能 在单个7900 XTX显卡上使用默认设置,目前的训练步骤耗时约为79毫秒&#x…

使用IDEA在WSL2的Ubuntu的docker中运行项目

1、新建项目 1.1 从远程仓库拉取代码 2、配置环境 2.1 配置IDEA运行环境 2.1.1 配置JDK 注意:Ubuntu 20.04运行项目请使用JDK11,使用JDK8会编译报错,报错如下: 2.1.2 配置Maven 2.1.3 配置运行环境 2.1.4 配置远程Debug 2.2、配…

“两客一危”车辆综合监控信息化产品及应用分析

引言 随着科技的不断进步和社会的发展,“两客一危”车辆(即长途客车、旅游包车和危险品运输车)的安全监管问题日益凸显。为了提升车辆的安全性能和管理效率,综合监控信息化产品应运而生。本文将对这一产品进行详细介绍&#xff0…

【一百零一】【算法分析与设计】差分,1109. 航班预订统计,P4231 三步必杀,P5026 Lycanthropy

1109. 航班预订统计 这里有 n 个航班,它们分别从 1 到 n 进行编号。 有一份航班预订表 bookings ,表中第 i 条预订记录 bookings[i] [first(i), last(i), seats(i)] 意味着在从 first(i) 到 last(i) (包含 first(i) 和 last(i) )…

在Linux kali下载、安装Perl环境

目录 Perl介绍 下载安装 官网下载 在Windows安装 在Linux和Mac OS安装 Perl介绍 Perl一种功能丰富的计算机程序语言,运行在超过100种计算机平台上,适用广泛,从最初是为文本处理而开发的,现在用于各种任务,包括系统…

【Qt知识】Qt框架中的信号(Signals)与槽(Slots)机制

Qt框架中的信号(Signals)与槽(Slots)机制是一种强大的通信方式,允许对象之间相互通信而无需对象之间直接引用或了解对方。这一机制简化了应用程序的事件处理和组件之间的交互,是Qt的一大特色和核心概念。 …

【SQL学习进阶】从入门到高级应用【企业真题】

文章目录 第一题第二题第三题第四题第五题第六题第七题第八题第九题MySQL行转列使用case whengroup by完成 第十题 🌈你好呀!我是 山顶风景独好 💕欢迎来到我的博客,很高兴能够在这里和您见面! 💕希望您在这…

【RuoYi】实现文件的上传与下载

一、前言 首先,最近在做一个管理系统,里面刚好需要用到echarts图和富文本编辑器,然后我自己去看了官网觉得有点不好懂,于是去B站看来很多视频,然后看到了up主【程序员青戈】的视频,看了他讲的echarts图和富…

社交媒体数据恢复:飞信

请注意,本教程只适用于飞信,并且不涉及推荐任何数据恢复软件。 一、备份飞信聊天记录 在开始恢复飞信聊天记录之前,我们建议您先备份现有的聊天记录。这样,即使恢复过程中出现问题,您也可以通过备份文件找回重要的聊…

搭建基于Django的博客系统增加广告轮播图(三)

上一篇:ChatGPT搭建博客Django的web网页添加用户系统(二) 下一篇:搭建基于Django的博客系统数据库迁移从Sqlite3到MySQL(四) 功能概述 增加轮播图显示广告信息。 需求详细描述 1. 增加轮播图显示广告信…

python解决flask启动的同时启动定时任务

业务场景描述:在常规的开发中,我们开发接口服务,一般会将数据放在数据库、文件等第三方文件,启动服务后,服务到后台数据库中加载数据,这样做的好处当然是开发会更加便利以及数据的可复用性较高,…

一键实现文件夹批量高效重命名:轻松运用随机一个字母命名,让文件管理焕然一新!

在数字化时代,文件夹管理是我们日常生活和工作中不可或缺的一部分。然而,随着文件数量的不断增加,文件夹命名的繁琐和重复成为了一个让人头疼的问题。你是否曾因为手动一个个重命名文件夹而感到枯燥乏味?你是否曾渴望有一种方法能…

arm cortex-m架构 SVC指令详解以及其在freertos的应用

1. 前置知识 本文基于arm cortex-m架构描述, 关于arm cortex-m的一些基础知识可以参考我另外几篇文章: arm cortex-m 架构简述arm异常处理分析c语言函数调用规范-基于arm 分析 2 SVC指令 2.1 SVC指令位域表示 bit15 - bit12:条件码&#…