什么是数据库? 为什么需要数据库? 是不是所有的软件都是用Sql Server?

我的电脑系统: Windows 10 64位

使用的SQL Server软件: SQL Server 2014 Express


本篇博客是属于:科普。大概的看看就行。


一 . 什么是数据库

如果我们狭义的理解,它就是一个存储数据的仓库。

如果我们广义的理解,它就是一个:可以对数据进行存储和管理的软件,以及 数据本身,统称为 数据库

数据库是由:关系操作 组成。

你就这样理解,就够了。

二 . 为什么需要数据库

1 .

几乎所有的应用软件的后台都需要数据库

比如说:银行。张三、李四…将钱存入银行,我们不就需要一个来存储这些信息的库吗,不就需要数据库了。再比如,卖书的,很多的书,价钱、出版社…这些大量的数据都需要数据库。再比如,对于软件,软件最重要的是什么?就是用户的数据。比如QQ软件,QQ软件的技术实现的就是很简单的,随便一个程序员就能写出来,这个技术本身不难,但是为什么腾讯这么厉害。就是因为它的数据量很大,它有全国几亿个人的信息。

所以说,在应用软件里面,数据是十分十分的重要。所以一个软件最赖以生存的是数据,数据在哪呢?就在 数据库 里面。数据库不在内存里,因为电脑一断电,内存里的数据就没了。数据库是存储在硬盘上的。(系统软件就不使用数据库了。)

2 .

数据库存储数据占用的空间小,并且容易持久保存。

比如:同样的数据,如果让你直接存储的话,可能会占用5M空间。但是如果使用数据库软件来存数据的话,它会对数据进行压缩,而且文件的组织和管理都很合理。

数据库便于我们保存数据。如果我们自己保存数据的话,我们可能会建很多很多的文件夹,会很乱。

3 .

存储比较安全

借助我们的数据库软件,最终生成的文件只有两个。一个是.mdf 后缀的文件,一个是 .LDF 后缀的文件。

你把两个文件拷贝到另外一个机器,它也可以运行。

文件都是加密的,要想打开它,只能通过 SQL Server Management Studio 软件来打开,并且你必须要有权限,你只要输入了正确的用户名和密码才能将这些文件打开。

所以说:数据库文件:很小,也很安全。

4 .

容易维护 和 升级

什么叫容易维护?

比如说,如果一个数据库里面有1万本图书。如果你现在要找出版社是人民出版社,价钱是80~90元之间,评价等级是五星的图书。如果我们手动的去找,是一件很痛苦的事。如果我们使用数数据库软件,只需要写一小段命名,在敲回车,它就会帮我们找到满足用户要求的结果。这个使用到的命令就是 SQL 语句,我们后面会讲。

并且数据库软件,低版本是向高版本兼容的。

5 .

数据库移植比较容易

6 .

简化对数据的操作

当我们数据量很庞大的时候,使用库操作起来会非常的方便。

7 .

为将来学习Oracle做准备

我们学SQL Server 这个软件,一方面是为了学数据库本身,另一方面是为了以后去学Oracle做准备。Oracle比我们的SQL Server 要复杂的多,并且在市场上,一般公司招Oracle的人是最多的,而且SQL Server是属于中型数据库,而Oracle是属于大型数据库。如果你把Oracle学好的话,你会很厉害,你一辈子只要Oracle不倒,你就可以靠它吃饭。所有的我们现在将介绍的内容,在学Oracle时都可以用上。比如说:什么是表、什么是库、怎么查、怎么删、怎么改、怎么建、什么事务、存储过程、索引,跟SQL Serve基本上是一模一样的,它们的思想是一样的,唯一的区别是内部的实现不一样,所有说你现在学SQL Server没学好,在去学Oracle的时候就会很困难。

8 .

B/S 架构里面包含数据库

什么是 B/S 架构,后面我们会详细的介绍,现在简单的说一下 :

B/S 架构分3块,

举例:假设一个用户想在一个网站上查询作者叫张三 的图书信息,当用户点击按钮开始查询时,查询结果(作者是张三的图书)就会显示出来。这是如何实现的?

用户点下按钮之后,会将一个请求发送到网站,网站内部使用第二个框里面的技术,生成了一个SQL语句,并将这个条SQL语句发送个后台的数据库,后台的数据库执行完这个命令,就可以把有效的数据找出来,然后对数据进行处理,最终返回给用户。用户就可以在页面上看到这些数据了。

就是这样实现的。我们所有的操作,最终都演变成了对数据库里面的数据的操作。


总之数据库很重要,所有一定要把它学好。而且它也不是很难。


三 . 是不是所有的软件都是用Sql Server?

大多数应用软件,都可能会使用数据库,但是不一定使用的是SqlServer。数据库是一个语言,这种语言有很多软件都可以实现。我们现在所学习的软件是 SQL Server 2014 。(中型数据库)

另外一个软件是:MySQL ,我们也可以使用它,它的好处是免费的,所以很多小公司使用它,但是它有问题,当数据量是几千万条数据的时候,它的速度就慢了。所以说免费有免费的好处,但是整体的性能不高,而且安全性也不高,对于前端的控制也不是很丰富。(小型数据库)

另外还有一个软件:Oracle。(大型数据库)

还有一个软件:Db2(大型数据库)

也就是说,我们这个数据库它是一个编程语言,一些公司遵循了数据库的语法设计了一些软件。数据库不是软件,是一种语言,是人类创造的一种存储数据、操作数据的一种方式、一种思想。

所以我们必须要学习数据库。比如:如果有一万本图书,你不使用数据库,是很难存放的。

SQL 数据库 学习 003 什么是数据库? 为什么需要数据库?是不是所有的软件都是用Sql Server?的更多相关文章

  1. 关于SQL SERVER数据库学习总结

    对于SQL SERFVER数据库也学了有一阵子了,自己也对自己所学做了一些总结. 我们首先学习数据库设计的一些知识点和用SQL语句建库. 设计数据库步骤:需求分析阶段,概要设计阶段,详细设计阶段, 建 ...

  2. MySQL数据库学习笔记(九)----JDBC的ResultSet接口(查询操作)、PreparedStatement接口重构增删改查(含SQL注入的解释)

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  3. SQL Server数据库学习总结

    经过一段时间的学习,也对数据库有了一些认识,数据库基本是由表,关系,操作组成:对于初学者首先要学的     一图胜“十”言:SQL Server 数据库总结 一个大概的总结 经过一段时间的学习,也对数 ...

  4. SQL server2005学习笔记(一)数据库的基本知识、基本操作(分离、脱机、收缩、备份、还原、附加)和基本语法

    在软件测试中,数据库是必备知识,假期闲里偷忙,整理了一点学习笔记,共同探讨. 阅读目录 基本知识 数据库发展史 数据库名词 SQL组成 基本操作 登录数据库操作 数据库远程连接操作 数据库分离操作 数 ...

  5. 数据库学习笔记 4 强大的SQL

    其实这篇文章应该至少一个星期前就应该更新了,但是最近小猿我和喜欢了好多年的女神牵手成功,所以这些天有点飘. ---创建表结构 create table tablename ( id int, name ...

  6. 数据库学习---SQL基础(二)

    数据库学习---SQL基础(一) 数据库学习---SQL基础(二) 数据库学习---SQL基础(三) 上篇复习的sql的增删改查,and ,or ,>=, <=,!=等逻辑运算符,还有in ...

  7. 数据库学习---SQL基础(一)

     数据库学习---SQL基础(一) 数据库学习---SQL基础(二) 数据库学习---SQL基础(三) SQL(struct query language)结构化查询语言:一种专门与数据库通信的语言, ...

  8. SQL 数据库 学习 007 通过一个示例简单介绍什么是字段、属性、列、元组、记录、表、主键、外键 (上)

    SQL 数据库 学习 007 通过一个示例简单介绍什么是字段.属性.列.元组.记录.表.主键.外键 (上) 我们来介绍一下:数据库是如何存储数据的. 数据库是如何存储数据的 来看一个小例子 scott ...

  9. SQL 数据库 学习 005 学习必备的一些操作 --- 如何新建数据库 如何附加和分离数据库(如何备份还原数据库) 如何删除数据库

    我的电脑系统: Windows 10 64位 使用的SQL Server软件: SQL Server 2014 Express 如果我们要学习这个数据库,我们需要学习什么知识.比如:如何新建一个数据库 ...

随机推荐

  1. Python学习笔记第一讲

    1.pycharm快捷键 撤销与反撤销:Ctrl + z,Ctrl + Shift + z 缩进.不缩进:Tab.Shift + tab 运行:Shift + F10 取消注释,行注释:Ctrl + ...

  2. STM32学习笔记之__attribute__ ((at())绝对定位分析

    STM32也会遇到这样的绝对定位的问题如下: uint8_t   UART_RX_BUF[1024]   __attribute__ ((at(0X20001000)));   //就是将串口接收的数 ...

  3. nginx限制请求之二:(ngx_http_limit_req_module)模块

    相关文章: <高可用服务设计之二:Rate limiting 限流与降级> <nginx限制请求之一:(ngx_http_limit_conn_module)模块> <n ...

  4. cookie跨域问题汇总

    一.通过nginx反向代理 通过nginx反向代理后,使得浏览器认为访问的资源都是属于相同协议,域名和端口的. 详细见:<nginx实现跨域访问> 二.jsonp方式请求 v jquery ...

  5. Required String parameter 'id' is not present

    问题详情:       简单的说,我就是通过ajax发起了一个post请求到后台,但是后台没有收到请求发过去的参数,并且还报了这样的错误.       错误描述告诉我们,请求参数里面并没有存在id.我 ...

  6. XML的学习

    XML是可扩展标记语言德意思,它和HTML一样都是标记语言(标签语言),不同之处在于XML可拓展,何为可拓展?在HTML中每个标签都有其特定的含义,我们不可以随便写一个标签并赋予其意义,而XML中就可 ...

  7. Java 中 wait, notify 和 notifyAll的正确使用 – 以生产者消费者模型为例

    如何使用Wait 尽管关于wait和notify的概念很基础,它们也都是Object类的函数,但用它们来写代码却并不简单.如果你在面试中让应聘者来手写代码,用wait和notify解决生产者消费者问题 ...

  8. mysql 更改密码

    Mac 安装mysql时会生成一个默认密码: 这个可以在通知中找到,如果你需要更改密码则继续看下面, 今天给mac安装了MySQL,安装过程非常的顺利,但是在用一个可视化工具进行连接时,需要输入密码, ...

  9. Android 4 学习(19):Services

    参考<Professional Android 4 Development> Services Service是invisible的,因此其优先级不高于visible的Activity,之 ...

  10. Halcon函数【转】

    comment ( : : Comment : )   注释语句 exit ( : : : )  退出函数 open_file ( : : FileName, FileType : FileHandl ...