前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >数据库基础知识

数据库基础知识

作者头像
Fisherman渔夫
发布2020-04-15 09:39:19
1.2K0
发布2020-04-15 09:39:19
举报
文章被收录于专栏:渔夫渔夫

数据库基础知识

数据库和数据库管理软件

  • 数据库(database) 保存有组织的数据的容器(通常是一个文件或一组文件)。
  • 数据库管理系统(DBMS),又称为数据库软件,我们通过数据库软件来创建和管理数据库。

我们之所以常常把 DB 等价位 DBMS,是因为我们使用 DBMS 来访问 DB,DB 对我们来说是透明的。

一个数据库由一到多个表组成。

表(table):某种特定类型数据的结构化清单。

  • 结构化:表由列、行分割成一个个网格组成。
  • 特定类型:表的每条记录将有着相同项,不应将顾客的清单和订单的清单存储在一个表中。
  • 表名:数据库中的每个表都有一个名字,用来标识自己。此名字是唯一的, 这表示数据库中没有其他表具有相同的名字。不同数据库的表可以用相同的名字。

模式(schema):关于数据库和表的布局及特性的信息。

(column):表中的一个字段。所有表都是由一个或多个列组成的。每一列数据含义相同且属于不同条的用户,比如 1 列 id、2 列 姓名。

数据类型(datatype):所容许的数据的类型。每个表列都有相应的数据类型,它限制(或容许)该列中存储的数据。数据类型有利于统一规则进行排序。

(row):表中的一个记录。表中的数据是按行存储的,一条记录一个行。

主键

主键(primary key):一列(或一组列),其值能够唯一区分表中每个行。没有主键,更新或删除表中特定行很困难,因为没有安 全的方法保证只涉及相关的行。设计人员应当确保其设计的每一个表都有一个主键,以便以后的数据操纵和管理。

表中的任何列都可以作为主键,只要它满足以下条件:

  • 任意两行都不具有相同的主键值;
  • 每个行都必须具有一个主键值(主键列不允许NULL值)。

主键通常定义在表的一列上,但这并不是必需的,也可以一起使用多个列作为主键。在使用多列作为主键时,上述条件必须应用到构成主键的所有列,所有列值的组合必须是唯一的(但单个列的值可以不唯一)。


主键的最好习惯

除 MySQL 强制实施的规则外,应该坚持的

几个普遍认可的最好习惯为:

  • 不更新主键列中的值;
  • 不重用主键列的值;
  • 不在主键列中使用可能会更改的值。(例如,如果使用一个名字作为主键以标识某个供应商,当该供应商合并和更改其名字时,必须更改这个主键。)

SQL

SQL(发音为字母 S-Q-L 或 sequel)是结构化查询语言(Structured Query Language)的缩写。SQL 是一种专门用来与数据库通信的语言。

SQL有如下的优点。

  • SQL不是某个特定数据库供应商专有的语言。几乎所有重要的 DBMS都支持SQL,所以,学习此语言使你几乎能与所有数据库打交道。
  • SQL简单易学。它的语句全都是由描述性很强的英语单词组成,而且这些单词的数目不多。
  • SQL尽管看上去很简单,但它实际上是一种强有力的语言,灵活使用其语言元素,可以进行非常复杂和高级的数据库操作。

但是 SQL 虽然企图抽象出一个查询规范,但是事实上任意两个 DBMS 实现的 SQL 都不完全相同(大体相同)。

客户机—服务器软件

MySQL、Oracle以及Microsoft SQL Server等数据库是基于客户机—服务器的数据库。客户机—服务器应用分为两个不同的部分。服务器部分是负责所有数据访问和处理的一个软件。这个软件运行在称为数据库服务器的计算机上。

  • 服务器软件:与数据文件打交道。服务器软件为MySQL DBMS。你可以在本地安装的副本上运行,也可以连接到运行在你具有访问权的远程服务器上的一个副本。
  • 客户机软件:与用户打交道的软件。客户机可以是开发语言(如ASP、ColdFusion、JSP和 PHP)、程序设计语言(如 C、C++、Java)等。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 数据库基础知识
    • 数据库和数据库管理软件
        • 主键
          • SQL
            • 客户机—服务器软件
            相关产品与服务
            云数据库 SQL Server
            腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档