数据库学习

文章目录
  1. 1. 数据库基本概念与MySQL入门
    1. 1.1. 数据库基本概念
      1. 1.1.1. 技术初衷
      2. 1.1.2. 数据库管理系统
      3. 1.1.3. 数据库的分类
      4. 1.1.4. SQL简介
    2. 1.2. MySQL入门
      1. 1.2.1. MySQL管理
      2. 1.2.2. 基本语法

数据库基本概念与MySQL入门

  数据库可以看作电子化的文件柜——存储电子文件的处所。用户可以对文件中的资料执行新增、查询、更新、删除等操作。所谓“数据库”是以一定方式储存在一起、能予多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。一个数据库由多个表空间(Tablespace)构成。

数据库基本概念

  数据库就是”数据“的仓库,一种用于存储信息和数据的软件,它由表、关系、及操作对象组成,数据放在表中。数据库服务器即安装了数据库软件的计算机,一般以主从式架构提供数据库服务。
数据库服务器功能
应用程序
作用:响应操作并显示结果,向数据库请求数据。
要求:美观并且操作简单方便。
数据库服务器
作用:存储数据、检索数据、生成新的数据。
要求:统一、安全、性能等。

技术初衷

  在操作系统出现之后,随着计算机应用范围的扩大、需要处理的数据迅速膨胀。最初,数据与程序一样,以简单的文件作为主要存储形式。以这种方式组织的数据在逻辑上更简单,但可扩展性差,访问这种数据的程序需要了解数据的具体组织格式。当系统数据量大或者用户访问量大时,应用程序还需要解决数据的完整性、一致性以及安全性等一系列的问题。因此,必须开发出一种系统软件,它应该能够像操作系统屏蔽了硬件访问复杂性那样,屏蔽数据访问的复杂性。由此产生了数据管理系统,即数据库。

数据库管理系统

  数据库管理系统(Database Management System),简称DBMS。是为管理数据库而设计的电脑软件系统,一般具有存储、截取、安全保障、备份等基础功能。数据库管理系统可以依据它所支持的数据库模型来作分类,例如关系式、XML;或依据所支持的电脑类型来作分类,例如服务器聚类、移动电话;或依据所用查询语言来作分类,例如SQL、XQuery;或依据性能冲量重点来作分类,例如最大规模、最高执行速度;亦或其他的分类方式。不论使用哪种分类方式,一些DBMS能够跨类别,例如,同时支持多种查询语言。

数据库的分类

  随着数据库技术与其他分支学科技术的结合,出现了多种新型数据库,例如:与分布处理技术结合产生的分布式数据库、与并行处理技术结合产生的并行数据库、与人工智能结合产生的演绎数据库、与多媒体技术结合产生的多媒体数据库。另外,数据库技术应用于特定的领域,出现了工程数据库、 地理数据库、统计数据库、空间数据库等特定领域数据库。
常见关系数据库:
MySQL MariaDB Percona Server PostgreSQL Microsoft Access Microsoft SQL Server Google Fusion Tables FileMaker Oracle数据库 Sybase dBASE Clipper FoxPro foshub
常见非关系型数据库(NoSQL):
BigTable(Google) Cassandra MongoDB CouchDB Redis Apache Cassandra Dynamo LevelDB(Google)

SQL简介

  SQL(Structured Query Language)结构化查询语言是一种特定目的编程语言,用于管理关系数据库管理系统(RDBMS),或在关系流数据管理系统(RDSMS)中进行流处理。SQL基于关系代数和元组关系演算,包括一个数据定义语言和数据操纵语言。SQL的范围包括数据插入、查询、更新和删除,数据库模式创建和修改,以及数据访问控制。

MySQL入门

  MySQL原本是一个开放源码的关系数据库管理系统,原开发者为瑞典的MySQL AB公司,该公司于2008年被昇阳微系统(Sun Microsystems)收购。2009年,甲骨文公司(Oracle)收购昇阳微系统公司,MySQL成为Oracle旗下产品。MySQL在过去由于性能高、成本低、可靠性好,已经成为最流行的开源数据库,因此被广泛地应用在Internet上的中小型网站中。随着MySQL的不断成熟,它也逐渐用于更多大规模网站和应用。非常流行的开源软件组合LAMP中的“M”指的就是MySQL。
官方网站:https://www.mysql.com

MySQL管理

●使用命令行工具管理MySQL数据库(命令mysql和mysqladmin),也可以从MySQL的网站下载图形管理工具MySQL Workbench。
●Navicat是一套专为MySQL设计的强大数据库管理及开发工具。它可以用于任何版本的MySQL数据库,并支持大部分MySQL的功能,包括触发器、索引、查看等。
●phpMyAdmin是由PHP写成的MySQL数据库系统管理程序,让管理者可用Web接口管理MySQL数据库。借由此Web接口可以成为一个简易方式输入繁杂SQL语法的较佳途径,尤其要处理大量资料的导入及导出更为方便。其中一个更大的优势在于由于phpMyAdmin跟其他PHP程序一样在网页服务器上执行,但是可以在任何地方使用这些程序产生的HTML页面,也就是于远程管理MySQL数据库。使用phpMyAdmin就可以方便的建立、修改、删除数据库及资料表。

基本语法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
/*
-- 单行注释
*/
-- 创建XX数据库
CREATE DATABASE XX;
-- 删除XX数据库
DROP DATABASE XX;

/*
新建两张表
班级表 (班级编号 班级名称)
学生表 (学生编号 学生姓名 学生年龄 生日 身高 班级编号)
*/

-- PRIMARY KEY 主键
-- NOT NULL 数据必须插入,不能为空
-- COMMENT 注释
-- FOREIGN KEY 外键

CREATE TABLE classes
(
bjid INT PRIMARY KEY out_increment COMMENT'班级编号',
bjname VARCHAR(20) NOT NULL COMMENT'班级名称'
);

CREATE TABLE student
(
stuid INT PRIMARY KEY auto_increment COMMENT'学生编号',
stuname VARCHAR(40) NOT NULL COMMENT'学生姓名',
age INT DEFAULT 3 COMMENT'年龄',
birthday DATE NULL COMMENT'生日',
height FLOAT COMMENT'身高',
bjid INT COMMENT'班级编号',
FOREIGN KEY (bjid) REFERENCES classes(bjid)
);

版权声明

Scholar’s Blog by scholargeek is licensed under a Creative Commons BY-NC-ND 4.0 International License.
董仕麟创作并维护的scholargeek博客采用创作共用保留署名-非商业-禁止演绎4.0国际许可证

本文首发于Scholar’s Blog博客,版权所有,侵权必究。

本文永久链接:https://scholargeek.github.io/2022/12/30/MySQL/

更新日期:


本站总访问量