SQL Server详细使用教程(包含启动SQL server服务、建立数据库、建表的详细操作) 非常适合初学者-程序员宅基地

技术标签: sqlserver  学习方法  改行学it  数据库  sql  

文章目录


前言

   本文主要详细介绍SQL server2019的简单使用,以《数据库系统概论(第5版)》的第79页—第80页为例,详细介绍如何使用SQL server2019这款数据库软件,包括启动SQL server服务,建立数据库(学生—课程模式S-T),建立课程表等,内容比较简单,容易理解,适合广大初学者了解SQL server的简单使用。不会涉及到复杂的语法知识,如果有也会详细解释的!(下文标红的字请重点关注一下!

   本文的需要建表的数据如下:

2.Course

课程号

Cno

课程名

Cname

先行课

Cpno

学分

Ccredit

1 数据库 5

4

2 数学 2
3 信息系统 1 4
4 操作系统 6 3
5 数据结构 7 4
6 数据处理 2
7 PASCAL语言 6 4

一、启动SQL server服务的三种方法

1.不启动SQL server服务的影响

       在使用Microsoft SQL Server Management Studio 18r时,必须先启动SQL server服务,如果直接打开Microsoft SQL Server Management Studio 18,输入用户密码后,点击连接,会提示类似下图的错误信息:

        出现上面的错误提示的原因是没有启动SQL server服务,导致无法连接服务器,为了解决上面的出现的错误,需要启动SQL server服务器,关闭Microsoft SQL Server Management Studio,按照下述的三种方法之一,启动SQL server服务即可。

2.方法一:利用cmd启动SQL server服务

(1)在开始里面搜索cmd,如下图所示:

(2)选择命令提示符,鼠标右击,点击以管理员身份运行(一定要注意要以管理员身份运行,否则启动SQL server服务会失败!) 打开后界面如下:

(3)在命令提示符中,输入以下的代码:

net start mssqlserver

         输入完上述的代码之后,按回车键,会自动启动SQL server服务,此时的界面如下图所示:

 此时显示SQL server服务已经启动成功了,SQL server服务启动之后,关闭命令提示符,打开Microsoft SQL Server Management Studio输入用户密码后,点击连接,就可以正常使用了(也可以windows 身份验证登录)

说明:

        如果在命令提示符中,遇到发生系统错误,拒绝访问的提示,很大部分原因是因为没有以管理员身份运行命令提示符

3.方法二:利用SQL Server配置管理器启动SQL server服务

利用SQL Server 2019 配置管理器启动SQL server服务,具体操作步骤如下:

(1)在开始里面搜索SQL server,如下图所示:

(2)在搜索SQL server后,会有SQL server 2019 配置管理器显示(版本不同,显示可能不同,只要是配置管理器就行) ,选中SQL server 2019  配置管理器以管理员身份运行,打开之后,如下图所示:

(3)右击需要启动的服务,点击启动就行(如果对SQL server不够了解的同学,可以尝试启动,SQL server服务下的所有服务,无法启动的服务可以略过,不用管) ,启动之后如下图所示:

      此时显示SQL server服务已经启动成功了,SQL server服务启动之后,关闭SQL server配置管理器,打开Microsoft SQL Server Management Studio输入用户密码后,点击连接,就可以正常使用了(也可以windows 身份验证登录)

4.方法三:在服务管理器中启动SQL server服务

        打开服务管理器有两种方法,这里只详细介绍一种简单打开服务管理器的方法,第二种打开服务管理器的方法再后面会简略的介绍一下。

具体的操作步骤如下所示:

(1)在开始里面搜索服务,如下所示:

(2)选中“服务”,以管理员身份运行“服务” (服务管理器),此时的界面如下图所示:

 (3)用鼠标往下滑,找到SQL server服务,此时如下图所示:

 (4)根据描述,选择要启动的SQL server服务,点击启动此服务中的“启动”,此时选中SQL server服务,会自动启动(如果对SQL server不够了解的同学,可以尝试一个一个启动,SQL server服务下的所有服务,无法启动的服务可以略过,不用管),启动完需要的SQL server服务之后,此时的界面如下图所示:

        此时显示SQL server服务已经启动成功了,SQL server服务启动之后,关闭SQL server配置管理器,打开Microsoft SQL Server Management Studio输入用户密码后,点击连接,就可以正常使用了(也可以windows 身份验证登录)

        在前面介绍启动服务管理器,说过有两种启动方法,我已经介绍一种比较简单的方法,启动服务管理器,下面我将介绍简略的介绍第二种启动“服务”(服务管理器)的方法,该方法虽然比较简单,但比较繁琐。具体步骤如下所示

        选中我的电脑(此电脑)————右击————找到管理————点击管理————双击服务与应用程序————双击服务————此时服务管理器已经打开————接着按照上述的方法二的第(3)步开始就行,就可以启动SQL server服务

        至此,启动SQL server服务的三种方法,我已经介绍完毕,一般我们采用方法一和方法二启动SQL server服务更多一些,介绍比较仔细,非常适合新手,如果有问题和建议可以私信我,或者在评论下面发表意见。

二、建立数据库的方法

(1)成功启动SQL server服务后,打开Microsoft SQL Server Management Studio 18之后,在身份验证这一项中,可以选择SQL server身份验证(需要用户密码)或者Windows 身份验证(不需要用户密码),服务器名称根据自身的需求选择,一般默认就行,如下图所示

 如果SQL server服务启动成功之后,点击连接之后,此时的界面如下图所示:

一般出现上图,说明SQL server服务启动成功。

下面,将介绍不用SQL语句建立数据库的方法。

(1)选中对象资源管理中的数据库,鼠标右击数据库 ,点击新建数据库,如下图所示:


 (2)数据库的名称,根据需求自己决定,这里以《数据库系统概论第(5)版》第79页为例,将数据库的名称设为“学生—课程模式S-T”,如下图所示:

 数据库存储的路径可以自己决定,建议默认就行。输入完数据库的名称之后,点击确定就行。此时的界面如下图所示:

 (3)在对象资源管理器中,在数据库的旁边有一个“加号”,点击这个“+”,此时的界面如下图所示:

此时我们就能发现我们创建的“学生—课程模式S-T”的这个数据库。点击旁边的“+”,就可以看到该数据库下的详细目录 ,如下图所示

 现在可以看出我们的数据库是建立成功的。我们可以通过SQL语句检查我们的数据库是否建立成功,点击新建查询,如下图所示:

 在该窗口下出入以下代码:(SQL语句不区分大小写!一般常用大写。)

select * from sys.databases

 (1)上述代码的作用:查询所有的数据库(在系统数据库master下【初学者可以暂时忽略,后面我会在其他文章里面详细说明】

(2)上述代码的解释:select意思是选择,“*(星号)”在SQL语言里面表示所有的,from表示“来自”,database的意思是数据库,由于我们要查找的是所有的数据库,数据不止一个,还有系统数据库,所以是database的复数形式:databases在"mysql"这款数据库的软件一般是database,但是“sql server”是要在database的前面加上sys.(sys有“计算机系统”含义)。由于我们使用的SQL server这款软件所以是sys.databases。即select * from sys.databases 的含义是选择 所有的 来自 所有的数据库,就是查找所有的数据库的意思。(不懂得可以留言)

输入上面的代码之后,此时的界面如下图所示:

 点击执行按钮,(其他版本的Microsoft SQL Server 会有一个感叹号,点击就行),运行的结果如下图所示:

        此时,我们会看到,它会显示5个数据库,最后一个是我们建立的数据库,前面四个就是我在前面说的系统数据库,此时我们的数据库是建立成功的!

注意:对数据库的操作,最好在我们自己的建立的数据库上操作,建议不用对系统数据库操作 

如果误删除系统数据库或者修改系统数据库的话,后果我不知道,因为我不敢尝试!

后果,大家可以参考其他博主的文章(欢迎在评论区留言)

        至此,创建数据库的简单的方法,我已经详细介绍完了。创建数据库可以使用SQL语句进行创建,具体的语法和代码,我会在另外一篇文章上详细介绍,利用SQL语句对数据库的进行操作,我会在另一篇文章做详细的介绍。

       

三、建表的方法

        我在前面已经介绍了建立数据库一种简单的方法,对数据库来说,最重要的是查询操作,但查询是建立在数据上的,意思就是要想查询,必须要有数据才行,把数据展示出来就是表,所以我接下来介绍一种简单的建表的方法,以《数据库系统概论(第5版)》第79页课程表为例

此时的界面如下图所示


 (1)在前言中已经给出需要建表的数据,建立的是课程表。在对象资源管理器中,选中表,鼠标右击表,选择新建,点击表,如下图所示:

点击后,此时界面如下图所示 

 根据《数据库系统概论(第5版)》给我们提供的数据如下所示:

课程号

Cno

课程名

Cname

先行课

Cpno

学分

Ccredit

1 数据库 5

4

2 数学 2
3 信息系统 1 4
4 操作系统 6 3
5 数据结构 7 4
6 数据处理 2
7 PASCAL语言 6 4

接下来我们需要设置列名,数据类型,是否允许Null值(null表示为空

显然列名就是我们的课程号Sno,课程名Cname,先行课Cpno,学分Ccredit

数据类型,我会再另外一篇文章把我总结的分享给大家,这里只介绍常用的

tinyint       小整型数据,一般是1,2,3这类的数据

bigint        大整型数据,一般表示比较大的数据类型

float(n)      可选精度的浮点数(实数),精度至少为n为数字

char(n)    长度为n的定长字符串

varchar(n) 最大长度为n的变长字符串

由于课程号、先行课、学分由于数值很小,所以我们用tinyint就可以了。(当然也可以用bigint,只不过有点大材小用了),对于课程名显然是字符串,我们可以用char或者varchar,这里选择用varchar(因为varchar可以节省存储空间,虽然节省的这点存储空间没有用),根据上述的分析,我们的数据类型的选择也已经出来了。

对于是否允许null值,也就是是否允许空值的出现,根据具体情况来判断,比如“学号”和“课程号”,这些值必须存在,不然就没有意义了,可以设置不允许空值的出现。对于先行课可有可无,所以设置允许空值,如果设置了允许空值,在插入数据的时候,遇到空值,用null表示

按照上述的分析,我们进行列名、数据类型、空值的设置。结果如下表所示:

 我们的表的框架已经建立好了,接下来需要保存这个表的框架,将鼠标移动到,如下图所示的位置:

 在这个位置,鼠标右击,此时的界面会出现:

点击保存就行,此时就保存这个表的框架(也可以按住快捷键ctrl+s保存) 

根据自己的需求输入表名,这里将表名设置为“课程表” ,点击确定就可以了,此时的界面如下图所示:

 接下来,将数据插入表中,在对象资源管理器中,找到自己创建好的数据库,在自己创建好的数据库下,找到表,点击表前面的加号(+),此时的对象资源管理器如下图所示:

 此时,我们就会发现我们建立的课程表,鼠标右击课程表,此时的界面如下图所示:

 点击“编辑200行”后,此时的界面如下图所示:

 此时我们会发现前面我们设置的列名,按行依次插入你想要插入的数据(注意:在插入数据的时候,我建议一行一行的插入),如果遇到感叹号,可以不用管,继续插入数据的操作,插入完之后,结果如下图所示:

       此时建立课程表的操作已经全部完成了,建立其他表,也是按照同样的方法,建表是可以使用SQL语句,但这篇文章是面向刚开始接触数据库技术和这款sql server的数据库的软件的初学者,所以这篇文章很少提到SQL语句的使用,后面根据情况,把我学到利用SQL语句建库和建表的代码分享给大家。

       查询建立的表的详细的数据,可以通过下面语句实现,新建查询,输入和运行下面语句就可以查看课程表的详细内容。

use [学生—课程模式S-T]
select * from [课程表]

总结

        本文主要详细的介绍启动SQL server服务的三种方法,建立数据库、建立课程表的简单的方法。很多内容是可以用SQL语句直接运行出来,但是面向初学者的文章非常少,所以我想把我学到一些简单的内容分享给大家,同时也是对我自己技术的锻炼,如果能把自己学会的东西讲给别人,别人能听懂,说明讲的那个人真的就会了。后面我会把我学到用SQL语句建立学生—课程的数据库的方法,建立学生表、课程表、选课表的方法,分享给大家,如果大家有什么好的方法和建议,可以分享给我,我想在CSDN写文章,本身就是锻炼自己,学习技术的一种方法。如果大家有任何问题和建议,希望可以在评论区留言,有什么我对数据库的误解和错误,希望大家能指出来,这是我第一次花很长的时间写的文章,希望能够得到大家的支持!如果你觉得这篇文章不错或者对你理解数据库、使用数据库有帮助的话,请帮忙点点赞!谢谢大家!(后续我将介绍保存数据库的方法与生成脚本的方法)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_56187614/article/details/127872574

智能推荐

【大数据】HDFS管理员 HaAdmin 集群高可用命令详细使用说明_hdfs主备namenode切换命令-程序员宅基地

文章浏览阅读1.3k次。HaAdmin高可用集群管理工具使用,切换NameNode的主备状态。_hdfs主备namenode切换命令

Python列表排序—冒泡の简单应用_自行从网络上搜索并学习冒泡排序法,实现在不使用 python 中已有的用于排序的函数-程序员宅基地

文章浏览阅读1.4k次。1.一个无序的列表,不适用内置函数或方法,将其进行从小到大的排序(冒泡法)冒泡排序(交换排序)原理: 从第一个元素开始,比较相邻元素的大小,若大小顺序有误,则对调后进行下一个元素的比较。如此扫描过一次之后就可确保最后一个元素位于正确的顺序。接着再逐步进行第二次扫描,直到完成所有元素的排序关系为止。 如,3个数,需要比较2轮。第一轮比较2次,第二轮比较1次。(可以自己画图理解一下。因为每轮比较之后都可以确认最后一个位置,所以比较次数-1)实现代码如下:# ......_自行从网络上搜索并学习冒泡排序法,实现在不使用 python 中已有的用于排序的函数

介绍Linux操作系统下杀死进程命令的方法(二)-程序员宅基地

文章浏览阅读93次。介绍Linux操作系统下杀死进程命令的方法(二)2. killall   作用:通过程序的名字,直接杀死所有进程  用法:killall 正在运行的程序名  举例: [root@localhost beinan]# pgrep -l gaim 2979 gaim [ro..._下面可以杀死所有名字叫proc_link,进程的所有命令是

mysql多进程多核_多CPU,多核,多进程,多线程-程序员宅基地

文章浏览阅读357次。当面临这些问题的时候,有两个关键词无法绕开,那就是并行和并发。首先,要先了解几个概念:1、进程是程序的一次执行。2、进程是资源分配的基本单位(调度单位)。3、一个进程可以包括多个线程。4、在单CPU计算机中,有一个资源是无法被多个程序并行使用的:CPU。5、操作系统调度器:拆分CPU为一段段时间的运行片,轮流分配给不同的程序。6、操作系统内存管理模块:管理物理内存、虚拟内存相关的事务。由于CPU同..._数据库多核心对一个进程

【办公自动化】python一键批量给视频添加随机位置水印-程序员宅基地

文章浏览阅读139次,点赞7次,收藏3次。使用了Python的对一个视频文件进行文字水印处理。具体来说,它通过随机选择位置,在视频中添加了一个文字水印。这个文字水印包括了这段文本,并使用了字体(SimSun.ttc),字号为50,颜色为红色。最后会输出一个名为"xxx.mp4"的视频文件。使用场景:随着自媒体的兴起,很多人发布的视频都需要有加水印的需求,但是如果固定到位置,水印很容易就会被处理掉使用python给视频添加水印(位置随机),大大提高处理水印的难度。

react native realm 与 nodejs 版本之间的坑_default.realm: unable to open a realm at path-程序员宅基地

文章浏览阅读2.3k次。现在手上这个android RN项目出现一个问题,这里记录一下,其中package.json文件中配置了realm的版本:"realm": "^1.1.1"。然后用命令行npm install进行安装node_modules的时候,始终安装不起realm,下面的链接是当初出现这个问题的描述。https://ask.csdn.net/questions/716880当时,有人说是把版本降低..._default.realm: unable to open a realm at path

随便推点

Java获取接口所有实现类的两种方法 spring和java spi_iservice getmap-程序员宅基地

文章浏览阅读4.1k次。有时候,根据业务逻辑的需求,我们想要获取到某个接口的所有实现类。在这里大致介绍两种方式:1.借助Spring容器实现Spring作为一个容器,管理着一个项目中所有经过配置的Java类(xml配置文件或Annotation方式)。如果某个接口的所有实现类均被Spring托管了,那么通过Spring就可以很简单的返回这些实现类。import org.springframework.beans.BeansException;import org.springframework.context._iservice getmap

操作系统--第六章 输入输出系统--习题答案_(输入输出)章节后习题-程序员宅基地

文章浏览阅读1w次,点赞12次,收藏55次。操作系统第四版课后的全部习题答案,学习通作业答案。说明:操作系统其他章节的习题答案也在此“操作系统”专栏。_(输入输出)章节后习题

ArcGIS Engine代码初始化许可_arcgis10.6 arcgisengine许可证-程序员宅基地

文章浏览阅读470次。1、在Program.cs的 static void Main() 中添加如下内容//绑定Runtime if (!RuntimeManager.Bind(ProductCode.Engine)) { if (!RuntimeManager.Bind(ProductCode.Desktop)) ..._arcgis10.6 arcgisengine许可证

磁盘调度算法的C++实现(FCFS、SSTF、SCAN、CSCAN、NStepSCAN)_nstepscan算法实现-程序员宅基地

文章浏览阅读1.3w次,点赞4次,收藏57次。Description因为代码结构过于冗余,再加上有小伙伴私信我能不能重写一下,我就重写了,新代码在这里,请移步,谢谢!本实验是模拟操作系统的磁盘寻道方式,运用磁盘访问顺序的不同来设计磁盘的调度算法。实现的磁盘调度算法有FCFS,SSTF,SCAN,CSCAN和 NStepSCAN算法。 设定开始磁道号寻道范围,依据起始扫描磁道号和最大磁道号数,随机产生要进行寻道的磁道号序列。 选..._nstepscan算法实现

AttributeError: module 'torch._C' has no attribute '_cuda_setDevice'(在python命令后面加上 --gpu_ids -1)-程序员宅基地

文章浏览阅读4.5w次,点赞42次,收藏57次。1. 问题:AttributeError: module 'torch._C' has no attribute '_cuda_setDevice'运行命令python train.py --data_dir sample_data时,出现上述错误。2. 参考:https://github.com/KupynOrest/DeblurGAN/issues/74从这里知道了下一个链..._attributeerror: module 'torch._c' has no attribute '_cuda_setdevice

2018年html5移动开发框架,HTML5——7个最牛的HTML5移动开发框架-程序员宅基地

文章浏览阅读273次。0.前言html你并不须要任何的原生应用编程经验,你只须要一些HTML、CSS和JavaScript的知识。首先HTML5会愈来愈好,由于移动端的硬件也会愈来愈强,其实你手机上的不少应用已经悄悄的使用混合式开发了,这也许就是HTML5的魅力所在吧。编程1. 开发跨平台的移动应用bootstrap目前已经有不少的框架能够帮助你开发跨平台的移动应用,在这篇文章中,咱们只介绍最牛的7个。后端1.1 IO..._后端html框架