SQL Server

【数据库系统原理与应用/数据库系统概论】 期末复习手册

强颜欢笑 提交于 2021-01-07 12:38:07
课程教材:《数据库系统概论》 王珊 萨师煊 本文是自己根据学校的课程内容整理的数据库期末复习资料,可能不同学校的教学内容不同,所以难免会有内容的遗漏,同时由于时间紧迫,难免会有笔误或知识性错误之处,欢迎斧正,希望能帮到有需要的同学。 文章目录 第一章 :绪论 1.1四个基本概念: 1.1.1数据 1.1.2数据库 1.1.3数据库管理系统 1.1.4数据库系统 1.2数据库系统的特点 1.2.1数据**结构化** 1.2.2数据的**共享性高,冗余度低,易于扩充** 1.2.4数据由**DBMS**统一管理 1.3数据模型 1.3.1两大类数据模型 1.3.1.1 概念模型 1.3.1.2 逻辑模型和物理模型 1.3.2数据模型的组成要素 1.3.3 概念模型相关概念 1.3.3.1 实体(Entity) 1.3.3.2 属性(Attribute) 1.3.3.3 码(Key) 1.3.3.4 域(Domain) 1.3.3.5 实体型(Entity Type) 1.3.3.6 实体集(Entity Set) 1.3.3.7 联系(Relationship) 1.3.4 两个实体型之间的联系 1.3.4.1 一对一联系(1:1) 1.3.4.2 一对多联系(1:n) 1.3.4.3 多对多联系(m:n) 1.3.5 ER模型 1.3.5.1 关系模型的数据结构 1.3.5.2

Sql 获取向上取整、向下取整、四舍五入取整

我是研究僧i 提交于 2021-01-07 04:48:23
【四舍五入取整截取】 select round(54.6,0) 返回55 【向下取整截取】 select floor(54.6) 返回54 【向上取整截取】 select ceiling(54.3) 返回55 --MSSQL取整函数的使用 --两个整数相除将截断小数部分 select 3/4,4/3,5/3 --结果 0,1,1 --返回大于或等于所给数字表达式的最小整数 SELECT CEILING(123.55), CEILING(123.45),CEILING(-123.45), CEILING(0.0) --结果 124,124,-123,0 -- www.2cto.com --四舍五入 round(a,b) -- 结果a 精确到小数点右 b位,或是左 -b位 select round(54.36,-2), round(54.36,-1),round(54.36,0), round(54.36,1),round(54.36,2) --结果 100.00,50.00,54.00,54.40,54.36 ---四舍五入 并转化为 整数 select cast(round(56.361,0) as int),cast(round(56.561,0) as int) --结果 56,57 --举例使用 ---两个整数相除 舍弃小数部分( 全部都向前进位) declare

AWS的EC2部署SQL Server Always-On集群(三)---部署DC

元气小坏坏 提交于 2021-01-06 16:45:36
1 登陆 EC2 参考《部署 EC2 》中第 5 章,通过 Bastion 虚拟机登陆 DC 虚拟机 2 安装控制器组件 登陆 DC EC2 ,点击左下角的 开始菜单 ,选择服务管理器 Server Manager 在服务管理器中,选择仪表板,点击添加角色和功能 点击下一步 保持默认,点击下一步 继续保持默认,点击下一步 在 服务器角色 页面,选择 活动目录域服务 ,点击 下一步 在 功能 页面,点击 下一步 点击 下一步 点击 安装 安装完成,点击 关闭 3 配置域控制器 在 服务器管理器 页面,点击 黄色的感叹号 ,点击 将本机提升为域控制器 选择 创建一个新林 ,输入 域名 ,本次测试使用域名为: garycloud.cn 输入 域恢复密码 ,点击下一步 点击 下一步 保持默认,点击 下一步 保持默认,点击 下一步 保持默认,点击 下一步 点击 安装 ,安装完成系统会自动重启 4 创建用户并添加到域管理员组和企业管理员组 在 服务器管理器 界面,点击 工具 -> AD 用户和计算机 在 GaryCloud.cn 域中,点击 用户 ,单击 右键 ,选择 新建 -> 用户 输入用户 显示名称 和 登陆的名称 ,点击下一步 输入该 用户的密码 ,并选择密码 永不过期 摘要页面,查看设置,没有错误的话,点击 完成 将该用户加到域管理员组和企业管理员组中

linux下MySQL使用方法

£可爱£侵袭症+ 提交于 2021-01-06 15:50:28
一、登录MySQL 登录MySQL的命令是mysql, mysql 的使用语法如下: mysql [-u username] [-h host] [-p[password]] [dbname] username 与 password 分别是 MySQL 的用户名与密码,mysql的初始管理帐号是root,没有密码,注意:这个root用户不是Linux的系统用户。MySQL默认用户是root,由于 初始没有密码,第一次进时只需键入mysql即可。 [root@test1 local]# mysql Welcome to the MySQL monitor. Commands end with or \g. Your MySQL connection id is 1 to server version: 4.0.16-standard Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> 出现了“mysql>”提示 符,恭喜你,安装成功! 增加了密码后的登录格式如下: mysql -u root -p Enter password: (输入密码) 其中-u后跟的是用户名,-p要求输入密码,回车后在输入密码处输入密码。 注意:这个mysql文件在/usr /bin目录下,与后面讲的启动文件/etc

SQL SERVER 中日期格式化,及GETDATE()、CONVERT()函数使用说明

不问归期 提交于 2021-01-06 12:58:52
1. date和datetime类型的区别 date是SQL Server 2008新引进的数据类型。它表示一个日期,不包含时间部分,可以表示的日期范围从公元元年1月1日到9999年12月31日。只需要3个字节的存储空间。 dateTime 日期和时间部分,可以表示的日期范围从公元1753年1月1日00:00:00.000 到9999年12月31日23:59:59.997 ,精确到3.33毫秒,它需要8个字节的存储空间。 2. GETDATE()函数,返回当前日期时间(datetime类型) SELECT GETDATE(); 返回 2017-03-16 09:10:08.947 例如创建表格M CREATE TABLE [dbo].[M]( [id] [int] NULL, [日期] [date] NULL, [时间] [datetime] NULL ) ON [PRIMARY] 可以使用GETDATE()函数插入数据 INSERT INTO M(id, 日期, 时间) VALUES (1, CONVERT(VARCHAR, GETDATE(), 110), GETDATE()); 3. CONVERT()函数,格式化日期 CONVERT() 函数是把日期转换为新数据类型的通用函数,也可以用不同的格式显示日期/时间数据。 语法: CONVERT(data_type(length)

SQL SERVER 中GETDATE()函数,以及常用的几种日期格式化

蓝咒 提交于 2021-01-06 12:08:40
SQL SERVER中的日期类型 在SQL SERVER 中用来表示时间日期的类型有两个: date,datetime date 是SQL Server 2008新引进的数据类型。它表示一个日期,不包含时间部分,可以表示的日期范围从公元元年1月1日到9999年12月31日。只需要3个字节的存储空间。 datetime 日期和时间部分,可以表示的日期范围从公元1753年1月1日00:00:00.000 到9999年12月31日23:59:59.997 ,精确到3.33毫秒,它需要8个字节的存储空间。 GETDATE()函数 在SQL SERVER 中想要获取当前时间,可以直接使用 GETDATE() 函数,它返回的是数据是datatime类型。如下图: 至于如果想直接返回一个date类型的日期,这时候就需要使用 CONVERT 做日期格式化 select CONVERT ( VARCHAR , GETDATE (), 23 ) CONVERT()函数,格式化日期 CONVERT() 函数是把日期转换为新数据类型的通用函数,也可以用不同的格式显示日期/时间数据。 语法: CONVERT(data_type(length),date,style) data_type(length) 规定目标数据类型(带有可选的长度)。 date指需要转换的日期值。 style 规定日期/时间的输出格式。

ML.NET生成器带来了许多错误修复和增强功能以及新功能

落花浮王杯 提交于 2021-01-05 13:51:11
ML.NET是一个开源的跨平台机器学习框架,适合 .NET 开发人员。它允许将机器学习集成到 .NET 应用中,而无需离开 .NET 生态系统,甚至拥有 ML 或数据科学背景。ML.NET工具(Visual Studio 中的 UI 模型生成器和跨平台 ML.NET CLI),可根据您的场景和数据自动训练自定义机器学习模型。 此版本ML.NET生成器带来了许多错误修复和增强功能以及新功能,包括高级数据加载选项和来自 SQL Server的流训练数据。 高级数据加载选项 以前,模型生成器不提供任何数据加载选项,它依赖于 AutoML 来检测列、标头和分隔符以及十进制分隔符样式。 让我们看一下模型生成器中使用出租车费数据集中新的高级数据加载选项。这是一个回归问题,您可以根据旅行距离、付款类型和乘客人数等几个因素预测出租车票价金额。 在模型生成器中,选择值预测方案和本地训练环境后,您将最终进入 "数据" 步骤。选择"文件" 作为数据源类型 ,浏览出租车票价数据集,选择数据集后,将 "列"更改为"预测" fare_amount。 选择"高级数据"选项以打开高级数据加载选项对话框。 在此对话框中,有两个部分 - 列设置 和数据格式 。 列设置 在" 列设置 "部分中,您可以将每个要素列(用于预测标签的列)的列更改为分类、文本、数字或忽略: 分类列包含在标记组离散数量中的数据。例如

delphi(假三层之数据访问层)(第一天)

佐手、 提交于 2021-01-04 08:34:11
本论文主要是通过三天来讲解三层的结构,今天是第一天,先讲解一下delphi下的Models层,我主要封装了两个查询得到数据集的函数,主要是通过在表示层上创建的数数据集控件传递进来,通过业务逻辑对语句的处理进行操作数据集,最后提交数据集的数据到数据库中去,进而想成delphi中的假三层,这样做能够独立于业务逻辑层和数据访问层,其他的都可以调用这两层,其中业务逻辑层,明天再讲,逻辑层写的不怎么好,个人觉得还是数据访问层封装方法封装通用性程度高一点。例如:TADOQuery,TADOTable数据集控件,通过一层一层的传递。 下面直接上代码: unit UnitModels; interface uses SysUtils, Classes, DB, ADODB; type TModel = class(TDataModule) conConnection: TADOConnection; procedure DataModuleCreate(Sender: TObject); private { Private declarations } public { Public declarations } FConnection : TADOConnection; // 返回影响的行数 function SqlExec(const ASql: string;var AQry:

MSSQL绕过微软杀毒提权案例

余生颓废 提交于 2021-01-04 08:32:37
声明: 该公众号大部分文章来自作者日常学习笔记,也有少部分文章是经过原作者授权和其他公众号白名单转载,未经授权,严禁转载,如需转载,联系开白。 请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与文章作者和本公众号无关。 所有话题标签: #Web安全 #漏洞复现 #工具使用 #权限提升 #权限维持 #防护绕过 #内网安全 #实战案例 #其他笔记 #资源分享 #MSF 0x01 前言 朋友发来的是一个支持外链的MSSQL, 未做站库分离处理, 且可以直接通过xp_cmdshell执行命令,但是由于目标系统为Windows 2019,自带的有微软的 Windows Defender防病毒,他在执行 PowerShell攻击命令 时被拦截后不知道要怎么绕过,所以让我帮着给看下。 0x02 信息搜集 目标机器基本信息: 目标系统: Windows Server 2019(10 .0 .17763 暂缺 Build 17763) 数据库版本: Microsoft SQL Server 2014 - 12 .0 .2000 .8 ( X64 ) 当前权限: nt service \ mssqlserver 开放端口:80、135、445、1433、2383( ssas )、3389...... 进程名称: Ssms .exe 、 sqlwriter .exe 、 sqlservr

数据库中存储过程、函数、触发器

空扰寡人 提交于 2021-01-04 04:04:37
存储过程、函数、触发器的区别 比较项目 存储过程 函数 是否有返回值 可以有,也可以没有 必须有且只有一个 是否可以单独执行 可以 必须通过execute执行 SQL语句(DML或SELECT)可否调用 不可以 可以,且可以位于FROM关键字的后面(由于可以返回表对象) 参数类型 可以使用IN、OUT、IN OUT三种模式的参数 只有IN,Oracle可以使用IN、OUT、IN OUT三种参数 返回值类型 可以通过OUT、IN OUT参数返回零个或多个参数值 单一值或一个表对象 【我的理解】 SQL语句: 一句SQL语句就是一个命令,而一般来说一个命令只执行一件事。 存储过程: 里面可以有多个SQL语句,用事物可以保证多句语句必须都执行成 功,这个存储过程才执行。 触发器:是在对表进行插入、更新或删除操作时自动执行的存储过程,触发器通常用于强制业务规则。触发器还是一个特殊的事务单元,当出现错误时,可以执行ROLLBACK TRANSACTION回滚撤销操作。 【站在巨人的肩膀上】 触发器原理: 触发器与存储过程可以说是非常相似,可以说是一种变种的存储过程,触发器和存储过程一样都是SQL语句集,通常通过创建触发器来强制实现不同表中的逻辑相关数据的引用完整性和一致性。由于用户不能绕过触发器,所以可以用它来强制实施复杂的业务规则,以确保数据的完整性。触发器不同于存储过程