SQL Server

解决 Sql server 数据库用户名/密码错误多次后, 会出现无法连接的问题. 要等待30分钟左右才能连接.

末鹿安然 提交于 2020-04-23 22:12:37
解决 Sql server 数据库用户名/密码错误多次后, 会出现无法连接的问题. 要等待30分钟左右才能连接. 来源: oschina 链接: https://my.oschina.net/u/4279315/blog/3444050

彻底搞懂 Redis 事务

∥☆過路亽.° 提交于 2020-04-23 18:33:19
提到redis的事务,相信很多初学的朋友会对它的理解和使用有些模糊不清,料想它和我们常见的关系型数据库(mysql 、mssql等)中的事务相同,也支持回滚,但这样理解就进入了一个误区,首先:关系型数据中的事务都是原子性的,而redis 的事务是非原子性的。再多说一句,什么是程序原子性?简单的理解就是:整个程序中的所有操作,要么全部完成,要不全部不完成,不会停留在中间某个环节。那么非原子性就是不满足原子性的条件就是非原子性了。我们用例子来解释一下: 原子性 :数据库中的某个事务A中要更新t1表、t2表的某条记录,当事务提交,t1、t2两个表都被更新,若其中一个表操作失败,事务将回滚。 非原子性 :数据库中的某个事务A中要更新t1表、t2表的某条记录,当事务提交,t1、t2两个表都被更新,若其中一个表操作失败,另一个表操作继续,事务不会回滚。(当然对于关系型数据库不会出现非原子性) Redis事务相关命令: MULTI : 开启事务,redis会将后续的命令逐个放入队列中,然后使用 EXEC命令来原子化 执行这个命令系列。 EXEC: 执行事务中的所有操作命令。 DISCARD: 取消事务,放弃执行事务块中的所有命令。 WATCH: 监视一个或多个key,如果事务在执行前,这个key(或多个key)被其他命令修改,则事务被中断,不会执行事务中的任何命令。 UNWATCH:

软件工程实践作业——软件测评

大兔子大兔子 提交于 2020-04-23 14:43:06
这个作业属于哪个课程 福州大学软件工程2020春季W班 这个作业要求在哪里 作业要求 这个作业的目标 对 腾讯IM 的多平台Demo版本进行评测,找出bug,并在产品角度提出意见 作业正文 本文连接在这里!!! 其他参考文献 《构建之法》 Part 1 SDK评测(方式一) BUG1 WXmini端,接收的消息未能及时同步。如图所示,在同一网络环境下,IOS端应用与WXmini端应用互发消息,WXmini端均未接受到对方发来的消息。WXmini端需要退回到微信页面再重新登录才能正常同步消息。(释放运行内存) 开发时未发现bug的原因:没有处理好小程序的运行内存分配,或者测试环境运行内存充足,导致测试人员忽略。 BUG2 Android端,当两位用户都使用Android端进行聊天时,当接收者确实看到了发送者所发消息,但是发送者的消息仍然显示“未读”状态。此时还需要发送者打开其他功能,或切换其他应用,或者切换平台登录,消息状态才会从未读转化为已读状态。 开发时未发现bug的原因:测试者频繁互相发送信息,切换平台,使聊天界面不断刷新,使得消息未读转态容易转为已读状态,从而忽略。 BUG3 web端,文字编辑框内有未发出的消息时,即使切换回话对象,文字编辑框内的文字不会改变。如下图所示。 开发时未发现bug的原因:开发人员可能没有考虑到文字未发送离开的场景

SQL Server第2部分:简化身份验证和授权机制

…衆ロ難τιáo~ 提交于 2020-04-23 10:06:38
在上一篇文章中,我们讨论了通过监视SQL Server活动来保护数据库等相关知识。通过配置数据库访问身份验证和授权机制,可以进一步增强数据库安全性。在本篇文章中,笔者将简要说明SQL Server的各种授权和身份验证机制以及您可以借鉴的一些方法。 如何在SQL中进行身份验证? SQL Server中的身份验证通常使用Active Directory(AD)凭据进行,当SQL Server验证SQL数据库引擎中的AD凭据时,它会授予用户数据库的访问权限。 当来自不受信任域的用户想要访问数据库时,他们必须使用SQL Server凭据进行身份验证。这样才可以确保只有授权的用户才能访问数据库。记录所有身份验证活动,每次有不受信任的域用户尝试登录时,IT管理员都可以配置警报。 在SQL Server中如何进行授权? 在SQL数据库中配置不同的访问级别时,将优先考虑以下三个组成部分(主体,安全性和权限)。 主体是被授予对SQL Server资源访问权限的实体(用户,组或进程)。如,您的AD凭据可以配置访问SQL数据库的主体。SQL Server包含三种不同的主体:登录名,用户和角色。 安全性使您可以通过配置不同的授权级别来保护SQL Server资源,安全对象可以处于服务器级别(例如服务器角色),数据库级别(例如应用程序角色)或架构级别(例如表)。 权限是授予委托人特定安全的访问类型。例如

如何使用T-SQL临时禁用外键约束?

荒凉一梦 提交于 2020-04-23 07:04:10
问题: Are disabling and enabling foreign key constraints supported in SQL Server? 是否禁用和启用SQL Server支持的外键约束? Or is my only option to drop and then re- create the constraints? 或者是我唯一的选择是 drop 然后 重新 create 约束? 解决方案: 参考一: https://stackoom.com/question/fN8/如何使用T-SQL临时禁用外键约束 参考二: https://oldbug.net/q/fN8/How-can-foreign-key-constraints-be-temporarily-disabled-using-T-SQL 来源: oschina 链接: https://my.oschina.net/u/3797416/blog/3420847

在SQL Server中使用JOIN更新表?

倾然丶 夕夏残阳落幕 提交于 2020-04-23 04:09:05
问题: I want to update a column in a table making a join on other table eg: 我想更新在其他表上进行联接的表中的列,例如: UPDATE table1 a INNER JOIN table2 b ON a.commonfield = b.[common field] SET a.CalculatedColumn= b.[Calculated Column] WHERE b.[common field]= a.commonfield AND a.BatchNO = '110' But it is complaining : 但它在抱怨: Msg 170, Level 15, State 1, Line 2 消息170,第15级,州1,第2行 Line 2: Incorrect syntax near 'a'. 第2行:“ a”附近的语法不正确。 What is wrong here? 怎么了 解决方案: 参考一: https://stackoom.com/question/6jIR/在SQL-Server中使用JOIN更新表 参考二: https://oldbug.net/q/6jIR/Update-a-table-using-JOIN-in-SQL-Server 来源: oschina 链接: https:/

Mysql基础

别来无恙 提交于 2020-04-23 00:42:54
1. 关系型数据库介绍 1.1 数据结构模型 数据结构模型主要有: 层次模型 网状结构 关系模型 关系模型: 二维关系:row,column 数据库管理系统:DBMS DBMS: DataBase Manager system 关系:Relational,RDBMS RDBMS: Relational DataBase Manager system 1.2 RDBMS专业名词 常见的关系型数据库管理系统: MySQL:MySQL,MariaDB,Percona-Server PostgreSQL:简称为pgsql Oracle MSSQL 记录 :数据库中表的每行是一条记录 事务 :多个操作被当作一个整体对待就称为一个事务 要看一个关系型数据库是否支持事务,需要看其是否支持并满足ACID测试 ACID:ACID是事务的一个基本标准 A:Automicity,原子性 C:Consistency,一致性 I:Isolation,隔离性 D:Durability,持久性 ACID:了解详细说明, acid(数据库事务正确执行的四个基本要素的缩写) ACID,指数据库事务正确执行的四个基本要素的缩写。包含:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)。一个支持事务(Transaction)的数据库

sql server 索引阐述系列三 表的堆组织

亡梦爱人 提交于 2020-04-22 03:23:05
一. 概述   这一节来详细介绍堆组织,通过讲解堆的结构,堆与非聚集索引的关系,堆的应用场景,堆与聚集索引的存储空间占用,堆的页拆分现象,最后堆的使用建议 ,这几个维度来描述堆组织。在sqlserver里,表有二种组织方式,在表上没有创建聚集索引时,表就是堆组织, 有聚集索引就是B树组织。无论哪种组织方式,都可以在表上建多个非聚集索引。表的组织方式也称为HOBT。   之所以称为堆,是因为它的数据不按任何顺序进行组织,而是按分区组对数据进行组织。 在一个堆中。用于保存数据之间的关系的唯一结构是索引分配映射(IAM , index allocation map)的位图页,上一章节中有说过页文件类型。   IAM位图页有指向数据页的指针,如果一个IAM不足以覆盖所有页,将维护一个IAM页的链,在查询数据时,先使用IAM页来遍历分配单元的数据。   堆结构在数据插入没有更改时是有存储顺序的,但一改动如修改删除,结构就会发生变化, 因为没有特定的顺序来维护数据, 所以在新增表中的行时,可以保存到任何数据页上。   Sql server内部使用文件页(PFS, Page Free Space)可用空间页,PFS位图来跟踪数据页中的可用空间, 以便可以快速找到有足够空间能容纳新行的页面,如果没有则分配一个新数据页面。 1.1 堆组织结构    在堆组织中对于一个select查询

MySQL的事务隔离级别是什么?

断了今生、忘了曾经 提交于 2020-04-22 00:44:22
😋我是平也,这有一个专注Gopher技术成长的开源项目 「go home」 背景介绍 想必事务大家都已经非常熟悉了,它是一组SQL组成的一个执行单元,要么全执行要么全不执行,这也是它的一个特性——原子性。而事务的应用场景也非常广泛,最经典的就是转账问题,A给B打钱,不能出现A钱扣了B还没收到的状况,否则业务就乱套了。 事务的特性 于是呢,根据用户对这些场景的严苛要求,总结出了事务应该具备的四个特性,分别是原子性、一致性、隔离性、持久性,简称事务的ACID属性。 原子性 Atomicity,事务是一个最小的执行单位,事务里面的SQL要么全执行,要么全不执行,就拿A与B转账为例,一条语句从A里扣钱,另一条语句往B身上加钱,如果这两条语句不能全部执行,而是成功了一部分,那事务就没有存在的意义了。 隔离性 Isolate,顾名思义就是将事务与另一个事务隔离开,为什么要隔离呢?如果一个事务正在操作的数据被另一个事务修改或删除了,最后的执行结果可能无法达到预期。如果没有隔离性还会导致其他问题,稍后会有所说明。 持久性 Durable,意为事务完成了对数据的修改之后,修改的结果是永久性生效的。 一致性 Consistent,把一致性放在最后讲的原因是前三个比较容易理解,而一致性的概念很模糊。 一致性是指事务使得应用系统从一个正确的状态到另一个正确的状态。 知乎上面一个高赞回答的很特别,原子性