[MySQL]数据库原理4,预备实操,RDBMS,Stored Procedure,Structured Query Language,—喵喵期末不挂科

宝宝,你不点个赞吗?不评个论吗?不收个藏吗?

最后的最后,关注我,关注我,关注我,你会看到更多有趣的博客哦!!!

喵喵喵,你对我真的很重要。

目录

前言

MySQL的简介

MySQL的基础知识

安装包!!!

安装问题

注释

启动,启动,启动——

创建表

查看表

修改表(期末重点,啊——)

总结


前言

期末要考数据库原理,可不能挂啊,现在复习还来得及,嘻嘻


插曲,如果博客没保存丢失了怎么办

喵喵就遇到了,太惊悚了,CSDN有一个自动保存,这就很棒,我是退出来了想参加1024,回去找没有内容了,应该是出Bug了,宝砸,不要慌。

点它:

自动保存会每个几分钟保存我们的博客,恢复到这个版本,简直是绝杀!

如果还没有,那你是真怨种啊,找客服,看技术能不能把你捞起来。

当然最好是自己习惯性保存草稿,不求人,赞赞赞。

感谢,客服“宝宝”,超赞的!

超尴尬的,写了一年了,现在才知道,哎呀~哎呀~哎呀~


MySQL的简介

MySQL 是一种关系型数据库管理系统,它是由瑞典 MySQL AB 公司开发的,后来被 Sun Microsystems 公司收购,现在属于 Oracle 公司管理。MySQL 以其强大的功能、高性能和可靠性而被广泛应用于各种 Web 应用程序和网站。

以下是在了解MySQL的一些要点:

  1. 数据库和表:MySQL 数据库由一个或多个表组成。每个表由一组列(字段)和行(记录)组成。
  2. 数据类型:MySQL 支持各种数据类型,包括整数、浮点数、字符串、日期等。
  3. 数据操作:可以使用 SQL(Structured Query Language)语句对数据库进行操作。常见的操作包括插入数据、查询数据、更新数据和删除数据。
  4. 索引和主键:可以在表上创建索引,提高查询性能。主键是唯一标识表中每行数据的列。
  5. 查询语句:SELECT 语句用于从表中检索数据。可以使用各种条件来过滤数据,并使用排序、聚合和分组来处理数据。
  6. 数据连接:通过 JOIN 操作可以将多个表连接在一起,从而获得更复杂的查询结果。
  7. 数据库管理:MySQL 提供了一些管理工具,如创建数据库和表、设定用户权限等。
  8. 事务处理:MySQL 支持事务处理,可以确保数据库操作的一致性和完整性。
  9. 备份和恢复:可以使用 MySQL 的备份工具来创建数据库备份,并在需要时进行恢复。
  10. 扩展性:MySQL 可以与各种编程语言和开发框架集成,如 PHP、Java、Python等,使开发者拥有更大的灵活性和可扩展性。

MySQL是一种开源的关系型数据库管理系统(RDBMS),它被广泛应用于大型企业、中小型企业以及个人开发者的数据库应用中。MySQL最早由瑞典的MySQL AB公司开发,后来被Sun Microsystems收购,再后来又被Oracle公司收购。尽管MySQL的所有权发生了变化,但它仍然作为一个强大而受欢迎的数据库管理系统存在。

MySQL拥有许多出色的特性,其中一些包括:

  1. 可扩展性:MySQL可以从小型项目扩展到大型企业级应用。它可以处理大量数据和高并发访问,适用于高负载的应用程序。

  2. 高性能:MySQL具有优化查询和事务处理的能力,能够处理大量的读写操作,提供高性能的数据库服务。

  3. 安全性:MySQL提供多层次的安全性控制,包括用户认证、权限管理和数据加密等功能,可以保护数据库免受未经授权的访问和数据泄露的风险。

  4. 可移植性:MySQL可以在多个操作系统上运行,包括Windows、Linux、macOS等。这使得MySQL非常灵活,可以在各种环境中部署和使用。

  5. 开发者友好:MySQL提供了丰富的开发工具和API,包括MySQL Workbench、MySQL Connector等,使开发人员能够方便地创建、管理和优化数据库。

  6. 社区支持:作为一个开源项目,MySQL拥有庞大的用户社区和开发者社区。这些社区提供了丰富的文档、教程和支持,使得用户能够快速解决问题和获取帮助。


MySQL的基础知识

MySQL是一种关系型数据库管理系统,用于存储和管理数据。以下是一些MySQL数据库的基本概念:

  1. 数据库(Database):是一个包含数据表、视图、函数等对象的容器。一个MySQL服务器可以包含多个数据库。

  2. 数据表(Table):是MySQL中存储数据的基本结构。它由行和列组成,行代表记录,列代表字段。

  3. 列(Column):也被称为字段(Field),代表数据表中的一个属性。每个列都有一个数据类型和约束。

  4. 行(Row):也被称为记录(Record),代表数据表中的一条数据。

  5. 主键(Primary Key):一列或一组列,用于唯一标识数据表中的每条记录。

  6. 外键(Foreign Key):用于建立数据表之间的关联关系。它指向另一个表的主键。

  7. 索引(Index):用于加快查询操作的数据结构。可以在一个或多个列上创建索引。

  8. 视图(view):是基于一个或多个表的查询的结果集。它可以像表一样被查询、更新和删除。

  9. 存储过程(Stored Procedure):是一组预编译的SQL语句,类似于子程序或函数,可以在数据库中被调用和执行。

  10. 触发器(Trigger):是一段SQL代码,可以在数据库中的特定操作(如插入、更新、删除)发生时自动执行。


安装包!!!

需要的话,私信喵喵,发发发


安装问题

如果无法运行,可能是因为电脑本身就运行了一个MYSQL,停掉不影响使用。

任务管理器——服务——找到MYSQL——右键停止它,就可以用啦!


注释

mysql注释:mysql注释符有三种:1、#...2、--  ...3、/*...*/


启动,启动,启动——

在喵喵这里拿数据库,然后给它解压!

启动,点它,会出来一个黑框叉掉

启动,点它

出来的效果

启动

密码root,别改其他的,难得记!

有颜色,就算是运行成功喽!超赞的!接下来我们来学习语言吧!


先打开命令窗口

来,我们看彩虹:

注意不能是中文符号哦,尤其是引号。


创建表

1.创建表

create table if not exists 表名
(
  字段名1  字段类型  not null/null  default  key comment,
  字段名2  字段类型  not null/null  default  key comment,
  ......
  字段名n  字段类型  not null/null  default  key comment
)engine=innodb  charset=utf8;

注:一个表只能有一个primary key 

      多个字段作为该表的主键,称为复合主键,只能放在所有字段的后面定义

先使用jxgl

create table IF not exists score_2
(
 s_no char(8) not null  comment '学号',
 c_no char(4)   comment '课程号',
 report float(4)  comment '成绩',
 primary key(s_no,c_no)
)engine=innodb charset=utf8;

嘿嘿嘿,创建成功!赞赞赞

再建一个

CREATE TABLE `teachers_1` (
  `t_no` char(8) NOT NULL COMMENT '教师编号',
  `t_name` char(4) NOT NULL DEFAULT '' COMMENT '教师姓名',
  `d_no` char(4) DEFAULT NULL COMMENT '系别',
  PRIMARY KEY (`t_no`,`t_name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

看看sorce是如何建立的,复杂点的:


CREATE TABLE `score` (
  `s_no` char(8) NOT NULL,
  `c_no` char(4) NOT NULL,
  `report` float(5,1) DEFAULT NULL,
  PRIMARY KEY (`s_no`,`c_no`),
  KEY `c_no` (`c_no`),
  KEY `score_index` (`s_no`,`c_no`),
  CONSTRAINT `score_ibfk_1` FOREIGN KEY (`s_no`) REFERENCES `students` (`s_no`) ON DELETE CASCADE ON UPDATE CASCADE,
  CONSTRAINT `score_ibfk_2` FOREIGN KEY (`c_no`) REFERENCES `course` (`c_no`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8


查看表

  • 查看表

show tables;

  • 查看表的基本结构

desc  teachers_1;

  • 查看表的详细结构

show create table teachers_1;

注:如果运行不出来一定要多刷新几次哦!


修改表(期末重点,啊——)

alter  table  表名
       1.添加一个字段:add 字段定义 位置[first/after 字段名]
       2.删除一个字段:drop 字段名
       3.修改字段的默认值:alter 字段名 set default value/drop default
       4.修改字段名:change  原字段名  新字段定义  位置[first/after 字段名]
       5.修改字段类型:modify 字段名 新类型 位置[first/after 字段名]
       6.修改表名:rename to 新表名

实践运用

--在teachers_1表的末尾添加一个工资salary字段
--alter table teachers_1
---      add salary float(4) after d_no;
--删除teachers_1表的salary字段
--alter  table teachers_1
--       drop salary;
--alter table score
--      drop s_no;
--把teachers_1表的d_no默认值改为软件学院
--alter table teachers_1
--      alter d_no set DEFAULT '软件学院';
--把teachers_1表的d_no默认值删除
--alter table teachers_1
--       alter d_no drop default;
--把teachers_1表的d_no改为d_name
--alter table teachers_1
--      CHANGE d_no d_name char(8);
--把teachers_1表的d_name字段类型改为varchar,宽度为20,放在首位。
--alter table teachers_1
--      modify d_name varchar(20) first;
--把teachers_1表的表名改为教师表
alter table teachers_1
      rename to 教师表;

看效果

   1.添加一个字段:add 字段定义 位置[first/after 字段名]

--在teachers_1表的末尾添加一个工资salary字段
--alter table teachers_1
---      add salary float(4) after d_no;

   2.删除一个字段:drop 字段名

--删除teachers_1表的salary字段
--alter  table teachers_1
--       drop salary;
--alter table score
--      drop s_no;

 3.修改字段的默认值:alter 字段名 set default value/drop default

--把teachers_1表的d_no默认值改为软件学院
--alter table teachers_1
--      alter d_no set DEFAULT '软件学院';

4.修改字段名:change  原字段名  新字段定义  位置[first/after 字段名]

--把teachers_1表的d_no默认值删除
--alter table teachers_1
--       alter d_no drop default;
--把teachers_1表的d_no改为d_name
--alter table teachers_1
--      CHANGE d_no d_name char(8);

 5.修改字段类型:modify 字段名 新类型 位置[first/after 字段名]

--把teachers_1表的d_name字段类型改为varchar,宽度为20,放在首位。
--alter table teachers_1
--      modify d_name varchar(20) first;


 6.修改表名:rename to 新表名

--把teachers_1表的表名改为教师表
alter table teachers_1
      rename to 教师表;


总结

只是一些基础知识,期末可不敢挂啊!有时觉得神奇,真好玩!喵喵喵~

总体而言,MySQL是一款功能强大、性能出色、安全可靠的关系型数据库管理系统。它在全球范围内被广泛使用,并得到了许多大型企业和开发者的信赖。无论是小型项目还是大型企业级应用,MySQL都是一个理想的数据库解决方案。


宝宝,你不点个赞吗?不评个论吗?不收个藏吗?

最后的最后,关注我,关注我,关注我,你会看到更多有趣的博客哦!!!

喵喵喵,你对我真的很重要。

猜你喜欢

转载自blog.csdn.net/ormstq/article/details/133996379