在园中大V深蓝医生中的一篇文中发现了这个问题,感觉挺有意思. 问题简化为"求解连续日期登录次数最大的用户".至少连续2天都登录才能认为是连续日登录. 数据岛问题 这个问题让我联想到了数据岛问题,数据岛问题就是间隔相同且连续的一个数值区间.以下面的整型数据集合为例: 1, 4, 5, 7, 8, 11, 12, 13 以上示例中,间隔为1可以划分为[1,1],[4,5],[7, 8], [11,13]共4个数据岛.针对如何获取数据岛的解决方案我以后在详细来说明数据差距和数据岛这个问题.我…
sql server登录名.服务器角色.数据库用户.数据库角色.架构区别联系 1.一个数据库用户可以对应多个架构(架构是表容器).架构里面包含的是数据库表. 2.一个数据库角色有可能涉及多个架构.数据库角色对应的是权限. 3.一个用户对应一个数据库角色. 4.登录名与数据库用户在服务器级别是一对多的:在数据库级别是一对一的. 服务器登录名:指有权限登录到某服务器的用户: 服务器角色:指一组固定的服务器用户,默认有9组: 登录名一定属于某些角色,默认为public 服务器角色不容许更改 登录后也不…
No :1 启动SQL Server Management Studio,用windows登录进入: No :2 在左侧对象资源处理器中找到根节点,也就是你安装sqlserver时注册的服务器名称.然后点击鼠标右键,选择属性. No :3 在弹出的服务器属性对话框左侧找到安全性,在服务器身份验证处选择"sql server 和 windows 身份验证模式"         ,点确定返回主界面.           No : 4 在左侧对象资源处理器中找到"安全性"…
sql本地数据库登录不了的话.先看看自己计算机 服务 SQL server  (MSSQLSERVER)  没有打开的话,请打开. 今天说的情景模式是  你误删了windows登录:禁用了sa登录:sa密码忘记了:或是你计算机名字被公司修改了,老的名字忘记了:又或是你用的别人的之前安装好的SQL数据库,终归,你本地数据库登录不了,用不了. 1. 先停了SQL ,打开命令提示符,执行net stop mssqlserver 就好了.你去计算机服务里面停也行.都可以.  sql server bro…
今天安装Sql Server之后,出现SQL Server只能使用Windows身份登录,不能使用sa等Sql server身份进行登录的问题是由于sql server只设置了Windows身份验证,没有设置sa登录,修改登录方式.在网上查了一下,找到了这篇文章,解决了问题,为了方便以后使用,所以把它转载了过来,以供大家需要的朋友查看.   如果你在装sql2008的时候,没有设置混合登录模式,而你偏偏又要通过sql server的模式来访问sql2008,那这篇文章适合你: 截图来说明问题,看…
解决SQL Server 2008 错误15023:当前数据库中已存在用户或角色,SQLServer2008,错误15023,在使用SQL Server 2008时,我们经常会遇到一个情况:需要把一台服务器上的数据库转移到另外一台服务器上.而转移完成后,需要给一个"登录"关联一个"用户"时,往往会发生错误:      “错误15023:当前数据库中已存在用户或角色”        这个问题非常棘手,几经排常找到了原因与解决方法,因为这个问题与解决方法均比较复杂,所以…
如果要删除数据表中所有数据只要遍历一下数据库再删除就可以了,清除所有数据我们可以使用搜索出所有表名,构造为一条SQL语句进行清除了,这里我一一给各位同学介绍.   使用sql删除数据库中所有表是不难的,就是遍历一下数据库中所有用户表,并将它清除,下边是具体的sql语句,在关键部分已经作了详细的注释:  代码如下 复制代码 --变量@tablename保存表名 declare @tablename nvarchar(100) --将用户表全部保存到临时表#tablename中 SELECT [na…
Sql Server中清空所有数据表中的记录 清空所有数据表中的记录: 代码如下:exec sp_msforeachtable  @Command1 ='truncate table ?'删除所有数据表: 代码如下:exec sp_msforeachtable 'delete   N''?'''清空SQL Server数据库中所有表数据的方法(有约束的情况) 其实删除数据库中数据的方法并不复杂,为什么我还要多此一举呢,一是我这里介绍的是删除数据库的所有数据,因为数据之间可能形成相互约束关系,删除…
如何在Sql Server中读取最近一段时间的记录,比如取最近3天的或最近3个月的记录. 主要用到DATEADD函数,下面是详细语句 取最近3天 select * from 表名where rq>=DateAdd(d,-3,getdate()) 取最近3月 select * from 表名 where rq>=DateAdd(m,-3,getdate())   DATEADD的定义和用法 DATEADD() 函数在日期中添加或减去指定的时间间隔. 语法  DATEADD(datepart,nu…
今天是大年初三,先跟大家拜个年,祝大家新年快乐.今天处理了一个alwaysOn问题——辅助副本因为磁盘空间不足一直显示[未同步——可疑],在日志中可以看到数据库处于挂起状态,与主副本失去同步.原以为只需把辅助副本的磁盘做个清理,腾出一点空间,然后重启SQL Server服务就好了(重启让数据库从挂起状态进入到联机状态,然后让alwaysOn重新开始同步).但,重启失败!!!在操作系统日志中看到SQL Server启动失败的原因是:(启动账户的)用户名和密码错误!!! 当初做alwaysOn的时候…