SQL 数据库 学习 003 什么是数据库? 为什么需要数据库?是不是所有的软件都是用Sql Server?
什么是数据库? 为什么需要数据库? 是不是所有的软件都是用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?的更多相关文章
- 关于SQL SERVER数据库学习总结
对于SQL SERFVER数据库也学了有一阵子了,自己也对自己所学做了一些总结. 我们首先学习数据库设计的一些知识点和用SQL语句建库. 设计数据库步骤:需求分析阶段,概要设计阶段,详细设计阶段, 建 ...
- MySQL数据库学习笔记(九)----JDBC的ResultSet接口(查询操作)、PreparedStatement接口重构增删改查(含SQL注入的解释)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- SQL Server数据库学习总结
经过一段时间的学习,也对数据库有了一些认识,数据库基本是由表,关系,操作组成:对于初学者首先要学的 一图胜“十”言:SQL Server 数据库总结 一个大概的总结 经过一段时间的学习,也对数 ...
- SQL server2005学习笔记(一)数据库的基本知识、基本操作(分离、脱机、收缩、备份、还原、附加)和基本语法
在软件测试中,数据库是必备知识,假期闲里偷忙,整理了一点学习笔记,共同探讨. 阅读目录 基本知识 数据库发展史 数据库名词 SQL组成 基本操作 登录数据库操作 数据库远程连接操作 数据库分离操作 数 ...
- 数据库学习笔记 4 强大的SQL
其实这篇文章应该至少一个星期前就应该更新了,但是最近小猿我和喜欢了好多年的女神牵手成功,所以这些天有点飘. ---创建表结构 create table tablename ( id int, name ...
- 数据库学习---SQL基础(二)
数据库学习---SQL基础(一) 数据库学习---SQL基础(二) 数据库学习---SQL基础(三) 上篇复习的sql的增删改查,and ,or ,>=, <=,!=等逻辑运算符,还有in ...
- 数据库学习---SQL基础(一)
数据库学习---SQL基础(一) 数据库学习---SQL基础(二) 数据库学习---SQL基础(三) SQL(struct query language)结构化查询语言:一种专门与数据库通信的语言, ...
- SQL 数据库 学习 007 通过一个示例简单介绍什么是字段、属性、列、元组、记录、表、主键、外键 (上)
SQL 数据库 学习 007 通过一个示例简单介绍什么是字段.属性.列.元组.记录.表.主键.外键 (上) 我们来介绍一下:数据库是如何存储数据的. 数据库是如何存储数据的 来看一个小例子 scott ...
- SQL 数据库 学习 005 学习必备的一些操作 --- 如何新建数据库 如何附加和分离数据库(如何备份还原数据库) 如何删除数据库
我的电脑系统: Windows 10 64位 使用的SQL Server软件: SQL Server 2014 Express 如果我们要学习这个数据库,我们需要学习什么知识.比如:如何新建一个数据库 ...
随机推荐
- CArray,CList,CMap如何实例化
1.定义一个CMap,向这个CMap中增加数据项(键-值对).CMap<CString, LPCTSTR, CString, LPCTSTR>m_ItemMap;CString strKe ...
- 批量修改文件名的bash脚本
#!/bin/bash while IFS='' read -r line || [[ -n "$line" ]]; do # echo "sox $line --cha ...
- Python库-BeautifulSoup
sp = BeautifulSoup.bs4.BeautifulSoup(html.text,"html.parser") 方法 1.sp.title 返回网页标题 2.sp.te ...
- Java经典练习题_Day04
一.选择题 1. 下列关于数组的说法正确的是:(A) A. 在Java中数组的长度是可变的 B. 数组中存储的数据的类型是相同的 C. 数组在进行扩容操作的时候源数组的地址不发生改变 D. int[] ...
- 汇编_压缩BCD码和非压缩BCD码
BCD码是表示十进制数的,非压缩BCD码是用8位表示的,其实只用低4位,高4位全为0. 例如,十进制数36,用非压缩BCD码表示为:0000 0011 0000 0110 ,这是两个字节. 压缩BCD ...
- 问题排查-JVM堆外内存问题排查
首先确认堆占用 jmap 查看heap内存使用情况 jmap -heap pid 1 可以查看到MetaspaceSize,CompressedClassSpaceSize,MaxMetaSize j ...
- 同步机制之--java CyclicBarrier 循环栅栏
CyclicBarrier介绍一个同步辅助类,它允许一组线程互相等待,直到到达某个公共屏障点 (common barrier point).在涉及一组固定大小的线程的程序中,这些线程必须不时地互相等待 ...
- CodeForces - 963B Destruction of a Tree (dfs+思维题)
B. Destruction of a Tree time limit per test 1 second memory limit per test 256 megabytes input stan ...
- MySQL 聚合函数、运算符操作、约束、表的复制
1.聚合函数 1.分类 avg(字段名) : 求该字段平均值 sum(字段名) : 求和 max(字段名) : 最大值 min(字段名) : 最小值 count(字段名) : 统计该字段记录的个数2. ...
- [POJ] Bode Plot
Description Consider the AC circuit below. We will assume that the circuit is in steady-state. Thus, ...