SQL Server的安装和首个库的创建

一、熟悉SQL Server的安装环境;

1.安装Microsoft的数据库管理系统SQL Server 2022

先把SQL Server 2022下载好后进行解压后出现以下界面然后点击基本进行安装

然后会出现以下界面:

一步步按照提示往下走即可,把SQL Server 2022安装完成后再对SSMS进行安装,SSMS安装完成以后点击打开,然后对本机服务器进行连接,如果显示找不到服务器则要到电脑管理那里手动打开SQL Server 2022的服务,最后连接好服务器就可以使用了。

找不到服务器的操作:回到桌面,右击“此电脑”,在点击“管理”,点开“服务与应用程序”可以看到“服务”,点击“服务”,往下拉找到SQL Server服务,点击“启用”即可。

打开服务后服务器连接成功后的界面:

二、找出SQL Server的组件和实用程序

1.关系引擎关系引擎又称为查询处理器,它包含的SQLServer组件用于确定查询需要完成的任务,以及如何实现的最佳方案.关系引擎包含两个主要的部分:查询优化和**查询执行.**查询优化器也是关系引擎中最复杂的组件,甚至是整个SQLServer产品中最复杂的组件,它用于确定批处理中查询的最佳执行方案包含三大组件:(1)命令解析器(query parser):检查语法和转换查询树(2)查询优化器(query optimizer):负责执行查询(3)查询执行器(query executor):优化查询命令解析器命令解析器处理用户发往SQLServer的T-SQL语言事件

2.存储引擎存储引擎包含需要真正访问和修改磁盘数据的组件,包含三大组件:

(1)事务管理器:通过锁来管理数据及维持事务的ACID属性。

(2)数据访问方法:处理对行、索引、页、行版本、空间分配等的I/O请求。

(3)缓冲区管理器:管理SQL Server的主要内存消耗组件Buffer Pool。

3.Buffer Pool他是一个非常关键的组件,数据库中的数据实际上最终都是要存放在磁盘文件上的。 在对数据库执行增删改操作的时候,实际上主要都是针对内存里的Buffer Pool中的数据进行的,也就是实际上主要是对数据库的内存里的数据结构进行了增删改。同时引入了一个redo log机制,你在对内存里的数据进行增删改的时候,他同时会把增删改对应的日志写入redo log中,用于数据库崩溃时进行恢复。事务日志每个 SQL Server 数据库都具有事务日志,用于记录所有事务以及每个事务对数据库所做的修改,是保证事务ACID属性的重要组件, 如果系统出现故障,你将需要依靠该日志将数据库恢复到一致的状态。

4.SQL Server的常用管理工具

SQL Server Management Studio

SQL Server商务智能开发平台

SQL Server的分析服务

SQL Server 配置管理器

SQL Server文档和教程

三、数据SQL Server 的数据类型:

1.SQL Server包含了Character字符串、Unicode字符串、Binary类型、Number数字类型、Date类型在这些类型中又有很多的数据类型。

Character字符串:

char(n) 是固定长度的字符串,最多 8,000 个字符;

varchar(n) 是可变长度的字符串,最多 8,000 个字符;

varchar(max) 是可变长度的字符串,最多 1,073,741,824 个字符;

text 是可变长度的字符串,最多 2GB 字符数据。

Unicode字符串:

nchar(n) 是固定长度的Unicode 数据,最多 4,000 个字符;

nvarchar(n) 是可变长度的Unicode 数据,最多 4,000 个字符;

nvarchar(max) 是可变长度的 Unicode 数据,最多 536,870,912 个字符;

ntext 是可变长度的Unicode 数据,最多 2GB 字符数据。

Binary类型:

bit是允许 0、1 或 NULL binary(n) 固定长度的二进制数据,最多 8,000 字节;

varbinary(n) 是可变长度的二进制数据,最多 8,000 字节;

varbinary(max) 是可变长度的二进制数据,最多2GB字节;

image 是可变长度的二进制数据,最多2GB。

Number数字类型:

我比较常用的Number数字类型是tinyint 它允许从 0 到 255 的所有数字,存储1字节;

int 允许从 -2,147,483,648 到 2,147,483,647 的所有数字,储存4字节;

decimal(p,s) 固定精度和比例的数字,允许从 -10^38 +1 到 10^38 -1 之间的数字,p 参数指示可以存储的最大位数(小数点左侧和右侧),p 必须是 1 到 38 之间的值,默认是 18,s 参数指示小数点右侧存储的最大位数,s 必须 是 0 到 p 之间的值,默认是 0,储存5-17字节;real 从 -3.40E + 38 到 3.40E + 38 的浮动精度数字数据,储存4字节等等多种数字类型。

四、了解表达式和流程控制语句

T-SQL语言提供了一些可以用于改变语句执行顺序的命令,称为流程控制语句。流程控制语句允许用户更好地组织存储过程中的语句,可以方便地实现程序的功能。与程序设计语言一样,SQL提供的流程控制语句如下: begin...end、if、if...else、case、while、while...continue...break、return、goto、waitfor   1.begin...end        begin...end语句用于将多个SQL语句组合为一个逻辑块。当流程控制语句必须执行一个包含两条或者两条以上的SQL语句的语句块时,使用begin...end语句。

  1. if选择结构可以带else子句;
  2. 2.case  :使用case语句可以很方便地实现多重选择得情况,比if...then结构有更多得选择和判断得机会,从而避免编写多重得if...then嵌套循环。
  3. while:while子句是SQL语句支持的循环结构,在条件为true的情况下,while子句可以循环执行其后的一条SQL命令.如果想循环执行一组命令,则需要配合begin...end子句使用。
  4. return :return语句用于从查询或过程中无条件退出。return语句可在任何时候用于从过程,批处理或语句块中退出。
  5. goto:goto命令用来改变程序执行的流程,使程序跳到标识符指定的程序行再继续往下执行
  6. Waitfor: waitfor指定触发器,存储过程或事物执行的时间、时间间隔或事件;还可以用来暂时停止程序的执行,直到所设定的等待时间已过才继续往下执行。

五、使用可视化创建一个数据库并观察其中的组件、数据库文件的扩展名以及数据库的特点。

1.可视化条件下创建一个数据库:

右击“数据库”进行新建界面,设置好“数据库名”,按照其参数设置即可。 

2.数据库文件的扩展名:

(1)主要数据文件(*.mdf):主要数据文件的建议文件扩展名是 .mdf。主要数据文件包含数据库的启动信息,并指向数据库中的其他文件,存储部分或全部的数据。用户数据和对象可存储在此文件中,也可以存储在次要数据文件中。每个数据库有一个主要数据文件。mdf 文件并非普通文件,因此不借助相应软件是无法打开 mdf 文件的。打开mdf文件的常用虚拟光驱软件主要有:Daemon Tools 、东方光驱魔术师等。

(2)次要数据文件 (*.ndf)次要数据文件的建议文件扩展名是 .ndf。次要数据文件是可选的,由用户定义并存储用户数据,用于存储主数据文件未能存储的剩余数据和一些数据库对象。通过将每个文件放在不同的磁盘驱动器上,次要文件可用于将数据分散到多个磁盘上。如果数据库超过了单个 Windows 文件的最大大小,可以使用次要数据文件,这样数据库就能继续增长。

(3)事务日志 (*.ldf)事务日志的建议文件扩展名是 .ldf。事务日志文件保存用于恢复数据库的事务日志信息。数据库的插入、删除、更新等操作都会记录在日志文件中,而查询不会记录在日志文件中。整个的数据库有且仅有一个日志文件。每个数据库必须至少有一个日志文件。

Sql Server数据库特点:

优点:易用性、适合分布式组织的可伸缩性、用于决策支持的数据仓库功能、与许多其他服务器软件紧密关联的集成性、良好的性价比等; 为数据管理与分析带来了灵活性,允许单位在快速变化的环境中从容响应,从而获得竞争优势。从数据管理和分析角度看,将原始数据转化为商业智能和充分利用Web带来的机会非常重要。作为一个完备的数据库和数据分析包,SQLServer为快速开发新一代企业级商业应用程序、为企业赢得核心竞争优势打开了胜利之门。作为重要的基准测试可伸缩性和速度奖的记录保持者,SQLServer是一个具备完全Web支持的数据库产品,提供了对可扩展标记语言 (XML)的核心支持以及在Internet上和防火墙外进行查询的能力;

缺点:开放性 :SQL Server 只能windows上运行没有丝毫开放性操作系统系统稳定对数据库十分重要Windows9X系列产品偏重于桌面应用NT server只适合小型企业而且windows平台靠性安全性和伸缩性非常有限象unix样久经考验尤其处理大数据库。伸缩性并行性 :SQL server 并行实施和共存模型并成熟难处理日益增多用户数和数据卷伸缩性有限。安全性:没有获得任何安全证书。 性能 :SQL Server 多用户时性能佳 。客户端支持及应用模式: 客户端支持及应用模式。只支持C/S模式,SQL Server C/S结构只支持windows客户用ADO、DAO、OLEDB、ODBC连接。 使用风险:SQL server 完全重写代码经历了长期测试断延迟许多功能需要时间来证明并十分兼容。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/200150.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Leetcode刷题笔记题解(C++):LCR 021. 删除链表的倒数第 N 个结点

思路:用双指针去遍历链表,删除left的下一个节点,注意的是n大于等于链表长度即删除第一个节点 /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode() : val(0), next(nullptr) {…

tmux简单使用

它允许你在一个终端窗口中创建多个终端会话,并在它们之间进行切换。以下是tmux的一些主要用途和功能: 多窗口: Tmux允许你在一个终端中创建多个窗口。每个窗口可以包含一个或多个终端会话,你可以轻松地在这些窗口之间切换。面板分…

不愧是字节出来的,太厉害了。。。

前段时间公司缺人,也面了许多测试,一开始瞄准的就是中级水准,当然也没指望能来大牛,提供的薪资在15-20k这个范围,来面试的人有很多,但是平均水平真的让人很失望。看了简历很多上面都是写有4年工作经验&…

Jmeter 接口-加密信息发送(一百九十九)

方式1:使用函数助手 比如MD5加密方式: 如图,需要对${user}进行MD5加密 1、打开函数助手,找到MD5,输入需要加密的值 2、将${__MD5(${user},)}放到请求中 3、查看请求,请求成功 方式2:导入jar包…

Docker实战【镜像部署】

文章目录 💥 简介💡 基础-Tomcat镜像部署🎖️ 企业实战-制作Tomcat项目镜像🎯 企业实战-Docker部署SpringBoot项目🚀 问题复盘🍓 总结 💥 简介 由于公司内部机器要做迁移,原系统机器…

深度学习优化器

不断优化 Example:for input, target in dataset:optimizer.zero_grad()output model(input)loss loss_fn(output, target)loss.backward()optimizer.step() import torch import torchvision.datasets from torch import nn from torch.nn import Sequential,Conv2d,MaxPoo…

题目:小明的彩灯(蓝桥OJ 1276)

题目描述&#xff1a; 解题思路&#xff1a; 一段连续区间加减&#xff0c;采用差分。最终每个元素结果与0比较大小&#xff0c;比0小即负数输出0。 题解&#xff1a; #include<bits/stdc.h> using namespace std;using ll long long; const int N 1e5 10; ll a[N],…

跨语种「AI同传」颠覆语音翻译!Meta谷歌连发重大突破

Meta谷歌接连放出重磅成果&#xff01;Meta开源无缝交流语音翻译模型&#xff0c;谷歌放出无监督语音翻译重大突破Translation 3。 就在Meta AI成立10周年之际&#xff0c;研究团队重磅开源了在语音翻译领域的突破性进展——「无缝交流」&#xff08;Seamless Communication&a…

Spring Cloud NetFlix

文章目录 Spring Cloud NetFlix1 介绍2 Eureka&#xff08;服务注册与发现&#xff09;2.1 介绍2.2 服务注册与发现示例2.2.1 Eureka Server&#xff1a;springcloud-eureka2.2.2 Eureka Client&#xff1a;springcloud-provider2.2.3 Eureka Client&#xff1a;springcloud-co…

激光炸弹(二维前缀和)-Java版

import java.io.*;/** 题目分析:一个最大5000 * 5000 的矩阵, 爆炸范围在 [0,10e9]* 地图上的目标是随机分布,如果要暴力计算每一个区间R的权值,会很麻烦* 可以用二维前缀和先将权值存起来* for(int i 1;i < n;i ) {for(int j 1;j < m;j ) {g[i][j] g[i][j-1] g[i-1]…

二叉树的前序中序后序遍历

二叉树的前序中序后序遍历-含递归和迭代代码 前序(中左右)中序(左中右)后序(左右中) 前序(中左右) 对于二叉树中的任意一个节点&#xff0c;先打印该节点&#xff0c;然后是它的左子树&#xff0c;最后右子树 A-B-D-E-C-F //递归 const preorderTraversal (root) > {const…

11.29 知识回顾(视图层、模板层)

一、视图层 1.1 响应对象 响应---》本质都是 HttpResponse -HttpResponse---》字符串 -render----》放个模板---》模板渲染是在后端完成 -js代码是在客户端浏览器里执行的 -模板语法是在后端执行的 -redirect----》重定向 -字符串参数不是…

用友NC JiuQiClientReqDispatch反序列化RCE漏洞复现

0x01 产品简介 用友NC是一款企业级ERP软件。作为一种信息化管理工具,用友NC提供了一系列业务管理模块,包括财务会计、采购管理、销售管理、物料管理、生产计划和人力资源管理等,帮助企业实现数字化转型和高效管理。 0x02 漏洞概述 用友 NC JiuQiClientReqDispatch 接口存在…

CETN03 - The Evolution of Computers

文章目录 I. IntroductionII. First Modern Digital Computer: ENIAC (1946)III. First Generation ComputerIV. Second Generation ComputerV. Third Generation ComputerVI. Fourth Generation ComputerVII. ConclusionI. 引言II. 第一台现代数字计算机&#xff1a;ENIAC&…

很全面 影响无人机自动返航的因素总结

在无人机技术不断成熟的今天&#xff0c;自主返航技术成为保障飞行安全的一种重要工具。无人机在多种情况下能够智能判断&#xff0c;主动实施返航动作&#xff0c;为用户提供更加可靠的飞行保障。以下是一些常见的无人机自动返航场景&#xff0c;让我们深入了解这项技术背后的…

【Maven】安装和使用

1. Maven 概述 Maven 是一款用于管理和构建 java 项目的工具&#xff0c;可以进行依赖管理、统一项目结构和项目构建。 1.1 Maven 模型 项目对象模型 (Project Object Model)依赖管理模型(Dependency)构建生命周期/阶段(Build lifecycle & phases) 1.2 Maven 仓库 仓库的…

HarmonyOS与AbilitySlice路由配置

上一章我有教到鸿蒙应用开发——Ability鸿蒙应用开发的基础知识&#xff0c;那么今天我们来讲一下AbilitySlice路由配置 AbilitySlice路由配置 虽然一个Page可以包含多个AbilitySlice&#xff0c;但是Page进入前台时界面默认只展示一个AbilitySlice。默认展示的AbilitySlice是…

Unity 网格布局控件-Grid Layout Group

Unity 网格布局控件-Grid Layout Group是Unity中的UGUI控件&#xff0c;用于在 UI 中创建网格布局&#xff0c; 它的作用是&#xff1a;自动将子对象排列成网格&#xff0c;即我们可以通过该组件对子对象按行和列的形式排列&#xff0c;根据指定的约束条件自动调整它们的大小和…

前缀和列题AcWing795-Java版

import java.io.*;//前缀和:改题目要求 求一串整数数列中l~r中的数的和 //可以提前算好前n项的和s[n],然后用s[n] - s[n - 1]public class Main {static int n,m,l,r;static int N 100010;static BufferedReader in new BufferedReader(new InputStreamReader(System.in));st…

git解决冲突

记录一次 git 解决冲突的过程。 情况是前一段时间我基于本地的 master 分支上新建了一个分支比如叫做 weight_linear: git checkout -b weight_linear 然后我已经在这个分支上进行了修改并上传到 github 上了&#xff0c;比如&#xff1a; git add . git commit -m "u…