8、数据库学习规划:MS SQL Server - 学习规划系列文章
微软的SQL Server数据库是笔者最先接触的数据库,虽然之前有Access,但是那个是学校里知道的,没实际去开发基于Access的程序。SQL Server发展到现在已经有很多个版本了,其功能也非常的强大,单表的话千万级数据量也能轻松应对,在现在的应用中也有很大的用户量,因为它是微软出品的。微软对其的支持和开发肯定是到位的了。
1、 简介;
SQL Server 是Microsoft 公司推出的关系型数据库管理系统。具有使用方便可伸缩性好与相关软件集成程度高等优点,可跨越从运行Microsoft Windows 98 的膝上型电脑到运行Microsoft Windows 2012 的大型多处理器的服务器等多种平台使用。Microsoft SQL Server 是一个全面的数据库平台,使用集成的商业智能 (BI)工具提供了企业级的数据管理。Microsoft SQL Server 数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序。
2、 SQL语言;
SQL Server是关系型的数据库,也是支持SQL脚本的,但是它是基于T-SQL的,与其它的数据库有自己的SQL脚本类型和方式。所以,如果使用SQL Server的话,就得去学习T-SQL脚本。不过,该脚本的学习难度不大,主要是基础的SQL脚本,视图,存储过程,触发器这几种,只要编写过就能够快速入门。
3、 使用的工具;
对于数据库,世面上有不少的工具,但是因为SQL Server是微软出品的,自然有其自己打造的数据库管理工具,这个工具就是SQL Server Management Studio (SSMS) ,其安装和使用都挺简单的,非常容易上手,对于SQL Server的管理和数据库表设计、编写等等的支持和使用都非常方便。
4、 网站;
https://www.sqlservercentral.com/
这个网站应该是我访问最多的网站之一,自打习惯使用英文浏览和搜索资料开始,这个网站就一直留在我的个人收藏夹里。网站聚集了多位知名的 SQL Server Blogger,涉及到 SQL Server 知识的方方面面,从存储引擎,执行引擎,到 Analysis Service, Reporting Service,可以说应有尽有。帖子的深度,刚刚好适合进阶。
这个网站吸引了很多 SQL Server 高手前来助阵,他们有出色的事业,管理多套数据库,时不时要被西雅图邀请去 SQL Server Summit 演讲,还维护一份个人博客。我现在依然不知道这些高手为什么来这里一起写文,一起演讲,但一群人围绕同一件事情,一起努力,你说的事情有人懂,百思不得其解的问题,有人会帮你,想想都兴奋。
比如下面这位老哥,Hugo Kornelis,他的个人网站是:
https://sqlserverfast.com/
这哥们就非常厉害,写作,出书,做编辑,主业是数据库资深开发顾问。他醉心研究 SQL Server 的 execution plan 内部原理. 我从他这里偷师不少好东西。与国内大部分开博讲文有所不同,他在讲述表象的同时,往往会把内部原理深入浅出的说给读者。
最重要的是,他的博文非常之长。由于每篇都是一个专题,如果用PDF来看,足足有20多页。很可能,你需要2-3天(每天看2小时左右)才能消耗完。但看完之后,你立马会觉得自己功力成长很多。
第二位作者,作为DBA来说,他的博客是不能错过的:
https://voiceofthedba.com/
他就是鼎鼎大名的 Steve Jones, 大概 2010 年的时候,人家就开始玩视频直播了。这在 DBA 中是少有的。同时,他也是 sqlservercentral.com 的创始人。
最让人兴奋的是 Brent Ozar. 除了 make sql server run fast 之外,他还玩法拉利,以至于他的书或讲座PPT,都以红色法拉利作为封面,寓意着 run fast. 爱旅游,爱咖啡,爱直播,爱twitter, 爱youtube,简直是 10 年后的我。作为一名超级粉,必然全网都关注 Ozar.
https://www.brentozar.com/
大家如果不知道他的手段之厉害,可以后台回复【5000】,【1500】看 Ozar 无私奉献的脚本。
这是他的youtube频道,可以订阅下,非常有意思:
https://www.youtube.com/watch?v=HJdJyd1hh3A&feature=youtu.be
嗯,我们大概有900多位读者是可以直接看油管的,听力也绝对没问题,所以强烈推荐。
最后要推荐的这个网站,相当有分量,不仅在撰写文章方面特别厉害,更有很多出色的收费产品,我相信大家都用过。
我随便说两个产品,如果用过的朋友,肯定知道我说的是哪个公司了,一个产品是 SQL Prompt, 系统视图,底层表(数据字典),表结构等等,在一个数据库中是上千上万的存在,如果靠个人的记忆,肯定记不住。有些不常用的表,我们经常需要去翻翻ER图,但依靠这个产品,只要我们输入开头3-4个字母,剩下的就自动帮我们填补好了,就像是人工智能一样,其实这就是编辑器的Intelligence.
另一个是 SQL Monitor, 在资深的数据库开发日常工作中,真正处理特别棘手的事情不多,往往都是些刚入门的小朋友,写的语句造成了阻塞,低效。像这类情况,对于缺乏经验的朋友来说,就是盲盒了。此时只要打开 SQL Monitor, 调一下监控,谁都不能动你的 DB.
大家知道是哪个公司了吧,没错,就是红门 Red-Gate.
http://www.red-gate.com
每年红门都会出红皮书,对业内的数据库动向做总结和调查,比如下面两张就非常对我们的胃口:
没有人会对自己赖以吃饭的工具不关心,也没有人会对自己行业内平均薪水不动心。他们都替我们调查好了。
5、 学习建议;
先学习安装SQL Server数据库和管理工具SSMS;
学习SQL Server的T-SQL的脚本编写;
学习SQL Server的存储过程、触发器、视图的编写;
学习SQL Server的性能优化方法;
学习SQL Server的备份方法;
6、 总结;
微软的SQL Server笔者认为是非常容易上手使用的了,其提供的SSMS管理工具也很好的对数据库的支持和管理,笔者认为如果公司使用SQL Server数据库,那应该能够很快的进行入门,但是对于优化方面就得下下功夫了。
下面提供笔者的一个博文,对于学习者提供的电子书籍能够查看,能够更快的学到该知识:https://www.cnblogs.com/lzhdim/p/4604031.html
8、数据库学习规划:MS SQL Server - 学习规划系列文章的更多相关文章
- 学习使用MS SQL Server游标(CURSOR)
说实的,使用MS SQL Server这样久,游标一直没有使用过.以前实现相似的功能,都是使用WHILE循环加临时表来实现.刚才有参考网上示例练习写了一下.了解到游标概念与语法. 下面代码示例中,先是 ...
- MS SQL Server 数据库分离-SQL语句
前言 今天在在清理数据库,是MS SQL Server,其中用到分离数据库文件.在这过程中,出现了一个小小的问题:误将数据库日志文件删除了,然后数据就打不开了,除了脱机,其他操作都报错. 数据库分离 ...
- SQL Server 2005 盛宴系列 经典教程
SQL Server 2005 盛宴系列 经典教程 [复制链接] 发表于 2007-3-27 14:08 | 来自 51CTO网页 [只看他] 楼主 TECHNET SQL serve ...
- SQL Server学习之路(七):Python3操作SQL Server数据库
0.目录 1.前言 2.准备工作 3.简单测试语句 4.提交与回滚 5.封装成类的写法 1.前言 前面学完了SQL Server的基本语法,接下来学习如何在程序中使用sql,毕竟不能在程序中使用的话, ...
- SQL server学习(一)数据库的基本知识、基本操作和基本语法
在软件测试中,数据库是必备知识,假期闲里偷忙,整理了一点学习笔记,共同探讨. 阅读目录 基本知识 数据库发展史 数据库名词 SQL组成 基本操作 登录数据库操作 数据库远程连接操作 数据库分离操作 数 ...
- SQL server学习(一)数据库的基本知识、基本操作(分离、脱机、收缩、备份、还原、附加)和基本语法
在软件测试中,数据库是必备知识,共同探讨. 阅读目录 基本知识 数据库发展史 数据库名词 SQL组成 基本操作 登录数据库操作 数据库远程连接操作 数据库分离操作 数据库脱机.联机操作 数据库收缩操作 ...
- SQL server学习
慕课网sql server学习 数据库第一印象:desktop--web server--database server** 几大数据库:sql server.oracle database.DB2. ...
- SQL server学习(三)T-SQL编程、逻辑控制语句和安全模式
T-SQL编程 T-SQL编程与C语言类似,只是语法稍有不同而已,总体思想还是没有变化的.多的就不说了,还是从变量开始. 变量也分为全局变量和局部变量,表示方式稍有不同. 局部变量: 局部变量必须以标 ...
- SQL Server 学习博客分享列表(应用式学习 + 深入理解)
SQL Server 学习博客分享列表(应用式学习 + 深入理解) 转自:https://blog.csdn.net/tianjing0805/article/details/75047574 SQL ...
- sql server学习路径地址
联机丛书2005:https://docs.microsoft.com/zh-cn/previous-versions/sql/sql-server-2005/ms130214(v=sql.90) 联 ...
随机推荐
- Spring 学习笔记(1)文章导读
<Spring 学习笔记>系列文章是博主在学习过 Spring 后对其进行总结的入门系列博文,适合初入 Spring 的小白,如果你最近正在学习或者打算学习 Spring 的话,不妨随着本 ...
- M-SOLUTIONS Programming Contest 2020 游记 (AB水题,CD模拟,E题DFS)
A - Kyu in AtCoder 水题 B - Magic 2 题意很好理解,但写的时候注意一下边界 void solve() { int a, b, c, k; cin >> a & ...
- Android 加载图片占用内存分析
本文首发于 vivo互联网技术 微信公众号 链接:https://mp.weixin.qq.com/s/aRDzmMlkqB14Ty67GJs9vg作者:Xu Jie 不同Android版本,对一张图 ...
- NSSCTF Round#13 web专项
rank:3 flask?jwt? 简单的注册个账号,在/changePassword 下查看页面源代码发现密钥<!-- secretkey: th3f1askisfunny --> ,很 ...
- 十三、docker的四种网络类型
系列导航 一.docker入门(概念) 二.docker的安装和镜像管理 三.docker容器的常用命令 四.容器的网络访问 五.容器端口转发 六.docker数据卷 七.手动制作docker镜像 八 ...
- spring启动流程 (4) FactoryBean详解
FactoryBean接口 实现类对象将被用作创建Bean实例的工厂,即调用getObject()方法返回的对象才是真正要使用的Bean实例,而不是直接将FactoryBean对象作为暴露的Bean实 ...
- Linux 常见重要系统文件
Linux 常见重要系统文件 目录 Linux 常见重要系统文件 网卡配置文件 文件内容举例: DNS配置文件 文件内容举例: 系统hosts文件 文件内容举例: fstab文件 文件内容举例: rc ...
- Go-数组-实现队列
package main import ( "errors" "fmt" ) // 队列 // 特征: // 1. 按照元素的添加顺序排序,并且容量固定 // ...
- C#调用C++——CLR方式
一直是在写C#,最近接触到的项目中有C#调用C++接口的逻辑,自己学习了下,写个步骤日志,C#掉用C++的托管代码 项目分三个项目:1.底层C++动态库项目,2.中间层的CLR项目,3.上层的C#项目 ...
- K8S增加限制后的启动时间验证
K8S增加限制后的启动时间验证 背景 前段时间看了下JVM载linux上面的启动时间, 进行过一些验证. 最近想着能够验证一下K8S上面的启动相关的信息 所以就整理了一下. 虽然没有特别好的结论, 但 ...