2017年2月6日

利用SQL的全局临时表防止用户重复登录

摘要: 在我们开发商务软件的时候,常常会遇到这样的一个问题:怎样防止用户重复登录我们的系统?特别是对于银行或是财务部门,更是要限制用户以其工号身份多次登入。 可能会有人说在用户信息表中加一字段判断用户工号登录的状态,登录后写1,退出时写0,且登录时判断其标志位是否为1,如是则不让该用户工号登录。但是这样那势 阅读全文

posted @ 2017-02-06 22:57 石下江的太阳光 阅读(131) 评论(0) 推荐(0) 编辑

XACT_ABORT为默认为off事务发生约束性错误会继续运行,为on发生约束性错误时会rollback

摘要: 本文整理于2012-4 IF OBJECT_ID(N't2', N'U') IS NOT NULL DROP TABLE t2;GOIF OBJECT_ID(N't1', N'U') IS NOT NULL DROP TABLE t1;GOCREATE TABLE t1 (a INT NOT NUL 阅读全文

posted @ 2017-02-06 22:52 石下江的太阳光 阅读(123) 评论(0) 推荐(0) 编辑

获取数据库下所有的存储过程的定义

摘要: 本文整理于2012-4 这个问题以前碰到过,方法二是SQL调优培训那天请教了培训老师,培训老师给了我这个思路,我根据老师的思路写出来的,看到遇到技术瓶颈时变通思路是很重要的。 如下: 我们在开发数据库的SP经常会碰到这样的情况, 1.系统上线后由于还有一部分功能不是很完善或是需求变更,需要经常更新存 阅读全文

posted @ 2017-02-06 22:51 石下江的太阳光 阅读(213) 评论(0) 推荐(0) 编辑

dm_db_index_physical_stats->OpenRowset

摘要: SET QUOTED_IDENTIFIER ON SET ANSI_NULLS ON GO create function sys.dm_db_index_physical_stats ( @DatabaseId SMALLINT = 0, @ObjectId INT = 0, @IndexId I 阅读全文

posted @ 2017-02-06 22:46 石下江的太阳光 阅读(100) 评论(0) 推荐(0) 编辑

SQL语句是以一个patch为单位编译

摘要: 如下语句如果不加go的话,当做一个批处理编译时会报错,提示没有split_count和split_amount列。加了go时可以一起执行 --3.Kit split in sale_detail: split_count,split_amount ALTER TABLE sale_detail AD 阅读全文

posted @ 2017-02-06 22:45 石下江的太阳光 阅读(152) 评论(0) 推荐(0) 编辑

update 大表

摘要: --SELECT * FROM sale_detail sd WHERE split_count IS NOT NULL --SELECT * FROM sale_detail sd WHERE split_amount IS NULL SET NOCOUNT OFF WHILE 1=1 BEGIN 阅读全文

posted @ 2017-02-06 22:43 石下江的太阳光 阅读(108) 评论(0) 推荐(0) 编辑

Lazy Writer&CheckPoint

摘要: Lazy Writer存在的目的是对缓冲区进行管理。当缓冲区达到某一临界值时,Lazy Writer会将缓冲区内的脏页存入磁盘文件中,而将未修改的页释放并回收资源。 CheckPoint或Lazy Writer通过将日志文件末尾的LSN号和缓冲区中数据文件的LSN进行对比,只有缓冲区内LSN号小于日 阅读全文

posted @ 2017-02-06 22:41 石下江的太阳光 阅读(123) 评论(0) 推荐(0) 编辑

SQLServer查看登录名和数据库的用户名的映射

摘要: 只能一个一个数据库的看。 SELECT DP.name as[user_name],SP.name as [logion_name] FROM sys.database_principals DP ,sys.server_principals SP WHERE SP.sid = DP.sid SEL 阅读全文

posted @ 2017-02-06 22:40 石下江的太阳光 阅读(2720) 评论(0) 推荐(0) 编辑

SQL Server Replication出现的错误:The process could not execute 'sp_replcmds' on 'WASYGSHA02-0186'.

摘要: 执行sp_changedbowner,数据库的拥有者只能为SQL_LOGIN or WINDOWS_LOGIN 以下是查询服务器中类型为Sql_login和windows_login的主体 SELECT * FROM sys.server_principals WHERE type IN ('S', 阅读全文

posted @ 2017-02-06 22:39 石下江的太阳光 阅读(215) 评论(0) 推荐(0) 编辑

execute as login 切换上下文

摘要: 作为DBA,可能经常需要帮助Developer排除有关权限的问题。要确认某个账号是不是已经拥有了某权限,DBA并不需要使用该账号的登录名和密码进行验证,只需使用execute as语句,将当前会话的上下文切换到指定的login(登录)或者user(用户),就可以验证该账号是否拥有某权限。 execu 阅读全文

posted @ 2017-02-06 22:37 石下江的太阳光 阅读(254) 评论(0) 推荐(0) 编辑

导航