日度归档:2019年6月15日

如何给临时表添加索引呢?


摘要:
我们深知在数据库查询中,如果想快速的检索出相应的数据,我们可以通过添加索引,达到快速查询的目的,下文讲述sqlserver中对临时表添加索引的方法,如下所示:
实验环境:sql server 2008 R2



临时表添加索引的方法:

临时表添加索引的方法和物理表的方法一摸一样,例:

   create index [索引名称] on [临时表表名](字段信息)
     create table #maomao(keyId int, sort varchar(30),qty int)
     go
       create index ix_maomao on #maomao(keyId,sort)
      go
    
     go
     truncate table #maomao
     drop       table #maomao

mssql sqlserver 使用sql脚本快速产生连续日期的方法分享


摘要:
下文讲述使用sql脚本生成连续日期的方法,如下所示:
实验环境:sql server 2008 R2

例:快速生成连续日期的方法1:

实现思路:
使用 master.dbo.spt_values 表中流水号和指定日期叠加生成连续日期信息,
由于master.dbo.spt_values表中只有2048个数字,所以最多只能生成2048个连续日期。
—-
如果我们需生成的连续日期超过2048条,此时我们可以通过虚拟一个流水表,然后手动插入流水表的行数,达到生成更多连续日期的目的

--- 生成连续日期
declare @startDate datetime
declare @endDate diatomite

set @startDate ='2019-06-16'
set @endDate ='2019-12-26'

select dateadd(DAY,number,@startDate) as [连续日期]
  from master.dbo.spt_values  where type ='P'
  and number <=DATEDIFF(DAY, @startDate, @endDate)

mssql sqlserver 如何设置数据库,才能保证数据库的安全呢?


摘要:
下文讲述保证数据库安全的方法
实验环境:sql serveer 2008 R2


现阶段上,市面上的数据库系统都是基于internet,在系统中有个大量的业务逻辑在运行,通过这些逻辑的运行,保障着企业的各部门上顺畅运转。
大部分系统都是采用 APP + DB 双服务器的运行方式,并且DB服务器上保存着所有公司业务数据。

账号安全管理

1.APP账号权限管理,对APP系统的安全管理 ,各模块的访问需严格按照权限进行设置,通过账户的严格空格,可以做到数据的访问权限,避免一些无权限的用户访问重要数据。
2.系统权限,通过对系统的权限严格控制,可以避免无权限的用户对系统资源的跨权限的访问。

定义相应的视图

通过视图控制数据列的相应权限,通过建立相应的账户控制视图权限访问,达到一些屏蔽敏感数据对一些人的访问。

敏感数据加密

对一些特殊数据进行加密存储,例:用户密码、用户电话、用户地址 等一些敏感数据进行加密,通过对数据的加密后,可以达到数据即使被截取后
也无法进行二次利用。

事务日志

将所有的数据库操作都记录至相应的日志信息,一旦发生异常情况,可通过日志快速的获取相应的原因,并做出处理。


数据备份

应制定相应的备份策略,异地备份,避免各种故障导致数据丢失的情况发生。
并定期举行模拟故障,使用备份恢复数据库。

系统设置各种预警值

通过运维系统设置各系统的警告值,当系统负载超过相应值,则通知相关负责人,
设置相应的审核机制,例:
数据库登录账户来源异常:(登录账号非APP服务器)
数据库上运行一些命令需审核(例:truncate 命令需经过相应的审核,才会得到运行)