随笔分类 -  Sql

摘要:一、前言 在很多应用场景中,通常需要给数据加上一些标识,以表明这条数据的某个特性,如:标识用户的性别、标识订单支付的渠道、标识商品的类型等等。在数据库设计时,通常我们会单独用一个字段来存储这些标识,如:可用gender字段来标识用户的性别,其值为“男”、“女”、“未知”这3种值中的一个;对于普通的具 阅读全文
posted @ 2019-03-07 11:05 天涯海客 阅读(1390) 评论(0) 推荐(0)
摘要:一、方式一:使用视图将需要限制用户只能看到特定的几个列、设置成一个视图,然后对这个视图进行权限控制 二、方式二:使用GRANT语句 1、授予相关列的查询权限(SELECT)在数据库db1中,登录名UserA 只能有权限查询 Employee表 里面的BusinessEntityID, Nationa 阅读全文
posted @ 2017-07-31 17:18 天涯海客 阅读(4138) 评论(0) 推荐(0)
摘要:--主要原理: exec sp_spaceused '表名' --取得表占用空間 exec sp_spaceused ''--數據庫所有空間 create table #Data(name varchar(100),row varchar(100),reserved varchar(100),dat 阅读全文
posted @ 2016-04-11 16:49 天涯海客 阅读(521) 评论(0) 推荐(0)
摘要:Latch是什么 Latch是SQL Server引擎保证内存中的结构的一致性的轻量同步机制。比如索引,数据页和内部结构(比如非叶级索引页)。SQL Server使用Buffer Latch保护缓冲池中的页,用I/O Latch保护还未加载到缓冲池的页,用Non-Buffer Latch保护内存中的 阅读全文
posted @ 2016-03-21 18:39 天涯海客 阅读(434) 评论(0) 推荐(0)
摘要:使用存储过程终止:在查询分析器下创建终止数据库所有接连的存储过程,通过调用该存储过程可以关闭所有使用该数据库的连接操作。--创建终止使用数据库下所有进程的存储过程,参数为数据库名称use mastergocreate proc KillSpByDbName(@dbname varchar(20))  阅读全文
posted @ 2016-03-17 11:21 天涯海客 阅读(5236) 评论(0) 推荐(0)
摘要:为了准备今年的双11很久没有更新blog,在最近的几次sqlserver问题的排查中,总结了sqlserver几种典型的等待类型,类似于oracle中的等待事件,如果看到这样的等待类型时候能够迅速定位问题的根源,下面通过一则案例来把这些典型的等待处理方法整理出来: 第一种等待.memory等待 早上 阅读全文
posted @ 2016-03-10 10:11 天涯海客 阅读(2932) 评论(0) 推荐(0)
只有注册用户登录后才能阅读该文。
posted @ 2015-10-10 17:27 天涯海客 阅读(13) 评论(0) 推荐(0)
摘要:若2个数据库在同一台机器上:insert into DataBase_A..Table1(col1,col2,col3----)select col11,col22,col33-- from DataBase_B..Table11若不在同一台机器上,则是本文要讲的内容:---------------... 阅读全文
posted @ 2015-07-16 10:54 天涯海客 阅读(3303) 评论(0) 推荐(0)
摘要:select top 25 p.name as [SP Name], deps.total_logical_reads as [TotalLogicalReads], deps.total_logical_reads / deps.execution_count ... 阅读全文
posted @ 2015-03-04 12:31 天涯海客 阅读(822) 评论(0) 推荐(0)
摘要:还原或删除sql server 2008数据库时,经常烩出现: “因为数据库正在使用,所以无法获得对数据库的独占访问权”,终解决方案如下 关键SQL语句: ALTER DATABASE [datebase] SET OFFLINE WITH ROLLBACK IMMEDIATE RESTORE DA 阅读全文
posted @ 2014-12-11 17:23 天涯海客 阅读(253) 评论(0) 推荐(0)
摘要:几乎在所有web项目中,都涉及文章分类和标签的设计,应该说这是一个比较常见、典型的案例。站长并不保证我的思路就是最好的,只是分享出来大家一起交流一下,互相促进与提高。我们假设的开发项目是一个博客系统,最核心的部分就是与文章相关的,那么我们今天讨论如何设计博客系统的文章分类和标签。1、首先,分类和标签... 阅读全文
posted @ 2014-11-11 17:10 天涯海客 阅读(18240) 评论(1) 推荐(4)
摘要:INSERT INTO dbo.[T_DabaoTemp] ([PType] ,[pID] ,[NewVersion] ,[ParentCode] ,[Addtime])select 0,5,'2.0.1','0_3',GETDATE() WHERE not exists (select 1 from [T_DabaoTemp] where [PType]=0 and [pID]=5 and [NewVersion]='2.0.1')存储过程USE [UMoneyMain]GO/****** Object: StoredProcedure [db 阅读全文
posted @ 2014-04-09 11:04 天涯海客 阅读(2260) 评论(0) 推荐(0)
摘要:1. 数据库移植不方便: 2. 大量采用存储过程进行业务逻辑的开发致命的缺点是很多存储过程不支持面向对象的设计,无法采用面向对象的方式将业务逻辑进行封装,从而无法形成通用的可支持复用的业务逻辑框架。 3. 代码可读性差,相当难维护, 4. 不支持群集 金融和电信行业的确在数据库服务器的硬件投资少不会吝惜,但是数据库服务器是单点的,极难扩展,即便Oracle的群集,他的共享存储数据库也是单点的,如果业务逻辑的运算非常消耗CPU和IO,你没有任何有效的办法来扩展系统的性能。 5. 对于并非极度依赖数据的业务逻辑运算,如果在应用服务器端来实现的话,特别是采用SNA架构的情况下,理论上可以获得无限.. 阅读全文
posted @ 2014-03-13 10:26 天涯海客 阅读(784) 评论(0) 推荐(0)
摘要:关于存储过程我一直认为应该仅仅在必须的时候采用,但是很多人不这么看.我发现本文表达了我的心声,不如用它来传播我的想法更好.Stored Procedures are EVIL存储过程是罪恶By Tony MarstonBy Tony Marston3rd September 20063rd September 2006A lot of developers are taught to use database stored procedures, triggers and database constraints at every possible opportunity, and they 阅读全文
posted @ 2014-03-13 09:57 天涯海客 阅读(513) 评论(4) 推荐(1)
摘要:--树形数据查询示例--作者:邹建--示例数据createtable[tb]([id]intidentity(1,1),[pid]int,namevarchar(20)) insert[tb]select0,'中国'unionallselect0,'美国'unionallselect0,'加拿大'unionallselect1,'北京'unionallselect1,'上海'unionallselect1,'江苏'unionallselect6,'苏州'unionallselect7 阅读全文
posted @ 2014-02-27 18:29 天涯海客 阅读(291) 评论(0) 推荐(0)
摘要:可以通过存储过程完成,也可以通过在库名上右击“新建查询”执行。语句其实基本相同。1. 存储过程:CREATE PROCEDURE pro1 as insert intotableB (field1,field2,field3,field4) select field1,field2,field3,'val4' from tableA where field1='val1'然后执行,刷新“存储过程”,在新建的存储过程“pro1”上右击“执行存储过程”即可。如果存储过程写为:PROCEDURE pro1as DECLARE @field1 varchar(30), 阅读全文
posted @ 2013-11-27 12:11 天涯海客 阅读(2377) 评论(0) 推荐(0)
摘要:USE [UMoney]GO/****** Object: StoredProcedure [dbo].[WCL_WorkerStatDailyWrite] Script Date: 10/08/2013 14:28:26 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGO--------------------------------------用途:根据日期生成用户个人信息日统计表并插入数据--王朝理--时间:2013/10/6 18:02:53------------------------------------ALTER ... 阅读全文
posted @ 2013-10-08 14:31 天涯海客 阅读(1243) 评论(0) 推荐(0)
摘要:借助SQL SERVER分区视图,可以对SQL中的表进行集中管理,下文将以实例的方式为您详解SQL SERVER分区视图,希望对您学习SQL数据库能有所帮助。SQL SERVER分区视图给我们提供了一种实现大数据量管理的方法,类似于其它数据库管理系统的分区视图。不仅实现了表的集中管理,而且实现了数据的快速定位。下边我就以一个日志记录表为例来说以下分区视图的作用:日志记录表可以记录很长时间的日志信息,随着时间的推移,日志表会变的很大。这样对与表的查询和维护操作都是非常慢的,但是如果我们按日期来划分把表分成若干小表,而在逻辑上统一使用一个视图来查询管理,那么是非常方便的.而且SQL SERVER可 阅读全文
posted @ 2013-10-06 16:54 天涯海客 阅读(1783) 评论(0) 推荐(0)
摘要:ROW_NUMBER()用法(转) ROW_NUMBER()说明:返回结果集分区内行的序列号,每个分区的第一行从 1 开始。语法:ROW_NUMBER () OVER ( [ <partition_by_clause> ]<order_by_clause> ) 。备注:ORDERBY 子句可确定在特定分区中为行分配唯一 ROW_NUMBER 的顺序。参数:<partition_by_clause> :将 FROM 子句生成的结果集划入应用了 ROW_NUMBER 函数的分区。 <order_by_clause>:确定将 ROW_NUMBER 值分 阅读全文
posted @ 2011-11-02 10:53 天涯海客 阅读(192) 评论(0) 推荐(0)
摘要:第一种方法,我的原创方法row=2 表示分页行数page=1 表示页码getnum=row*pageselect * from (select toprow * from (select topgetnum * from Newslist order by id desc) order by id asc) order by id descSQL查找第n条记录的方法:select top1 * from table where id not in (select top n-1 id from table)例如:select top 1 * from Evaluation where id n 阅读全文
posted @ 2011-06-30 12:00 天涯海客 阅读(2756) 评论(0) 推荐(0)