摘要:这是我收集的所有很时间有关系的SQL函数,这是我做项目的时候需要的。我就记录下来.给大家分享。SQLserver中用convert函数转换日期格式2008-01-15 15:51SQLserver中用convert函数转换日期格式 SQL Server中文版的默认的日期字段datetime格式是yyyy-mm-dd Thh:mm:ss.mmm 例如: select getdate() 2004-0...
阅读全文
文章分类 - 关系数据库&数据挖掘
关系数据库 BI 数据控掘 Grid ...
摘要:有些时候还是要用到行转列,比如下面的数据:一般的表结构大多会这么设计,通过关联查询就可以得出上面的数据(客运量就随便123了,非常时期以防恐怖分子)不用说,大家也明白要得到下面的数据:列数不多的话一般可以这样,也是网上比较经典的写法Select 时间,sum(case when 线路='1号线' then客运量 end) As '1号线' ,sum(case when 线路='2号线' then客...
阅读全文
摘要:突然看到这个问题,脑袋一蒙,不知道啥意思,后来想想,试图把select里的选项放到后面,问题自然解决! 下面这个就是报“在选择列表中无效,因为该列既不包含在聚合函数中,也不包含在 GROUP BY 子句”问题语句 select shipcountry,sum(shipvia) as totalvia,OrderDate as thefirsttime from order...
阅读全文
摘要:一直很钟情于使用ACCESS在项目开发期间做测试或做小型项目,方便快捷易布置,但很多兄弟认为ACCESS没有存储过程,其实它是有的。。。。只不过叫做查询设计,且不能执行多语句。下面来看一下具体的使用。 一、Access里的存储过程: 在Access里面,有一个东西,叫做查询设计。其实它就是存储过程。首先我们看一下创建方法: 1.1 打开ACCESS,新建一个数据库(access 2000-2...
阅读全文
摘要:月报:[代码]季报:[代码]年报:[代码]周报:[代码]
阅读全文
摘要:今天在做一个报表,粗一看是没注意,仔细一看,原来是要统计Sql Server里一个销售明细表里某个时间段的销售额,而且要按周进行比较,脑子里一下子没了思路,心想总不见得兜个循环进行计算吧,查了一下资料,发现原 来短短的一句sql语句就可以实现,看来sql server的基本功还是不扎实啊。以下是该语句的写法: select sum(销售金额), datename(week, 销售日期-1) fr...
阅读全文
摘要:c# 分布式事务 以及MSDTC 这里解决的是这个问题:如果一个请求需要执行多个操作:{intiGet=MethodA();if(iGet>0){MethodB();}}现有两个方法:intMethodA(){}boolMethodB(){}有可能出现A执行成功,但是B不成功,需要回滚,这就需要MSDTC的系统事务,亦为分布式事务。其主要功能为使代码块成为事务性代码,在System.Tran...
阅读全文
摘要:本节主要介绍Sql语句,SqlTransaction和TransactionScope这三种使用事务的方法。本节的所 有例子都在sqlserver2008和vs2008环境下运行通过,如果没有sqlserver2008,那么使用 sqlserver2005也一样,但是sqlserver2000上是无法运行通过的,因为某些sql语句在2000中不支持。请大家注意这 点。请先执行下面的脚本,在本机的数...
阅读全文
摘要:分布式事务听起来很不错,其实不然。它只是尽可能的降低数据不一致的可能性,并不能完 全避免。从我的应用中来看,总数约5千万的操作,错了十几个。当然,这个错误率完全可以忍受了。不能忍受的是当你的DB在cluster(集群)当 中,msdtc也会被作为一项资源出现,cluster的某些问题会诡异的导致msdtc不可用,问题排查起来是非常郁闷的。大家都知道,作为大型系统, 不太可能不用cluster,所以...
阅读全文
摘要:1. 死锁原理 根据操作系统中的定义:死锁是指在一组进程中的各个进程均占有不会释放的资源,但因互相申请被其他进程所站用不会释放的资源而处于的一种永久等待状态。 死锁的四个必要条件: 互斥条件(Mutual exclusion):资源不能被共享,只能由一个进程使用。 请求与保持条件(Hold and wait):已经得到资源的进程可以再次申请新的资源。 非剥夺条件(No pre-emption)...
阅读全文
摘要:其实所有的死锁最深层的原因就是一个:资源竞争。 表现一: 一个用户A 访问表A(锁住了表A),然后又访问表B,另一个用户B 访问表B(锁住了表B),然后企图访问表A。这时用户A由于用户B已经锁住表B,它必须等待用户B释放表B,才能继续,好了他老人家就只好老老实实在这等了。 同样用户B要等用户A释放表A才能继续这就死锁了。 解决方法: 这种死锁是由于你的程序的BUG产生的,除了调整你的程序的逻辑别...
阅读全文
摘要:1. 查看数据库的版本 select @@version 2. 查看数据库所在机器操作系统参数 exec master..xp_msver 3. 查看数据库启动的参数 sp_configure 4. 查看数据库启动时间 select convert(varchar(30),login_time,120) from master..sysprocesses...
阅读全文
摘要:http://tech.it168.com/db/s/2006-08-29/200608291525833.shtmlSQL Server数据库发生死锁时不会像ORACLE那样自动生成一个跟踪文件。有时可以在[管理]->[当前活动] 里看到阻塞信息(有时SQL Server企业管理器会因为锁太多而没有响应). 设定跟踪1204: USE MASTERDBCC TRACEON (1204,...
阅读全文
摘要:Sql Server中的日期与时间函数 1.当前系统日期、时间 select getdate()2. dateadd在向指定日期加上一段时间的基础上,返回新的 datetime 值 例如:向日期加上2天 select dateadd(day,2,'2004-10-15')--返回:2004-10-17 00:00:00.0003. datediff 返回跨两个指定日期的日期和时间边界数。 sel...
阅读全文
摘要:不能在函数里调用扩展存储过程 未在下面的列表中列出的语句不能用在函数主体中。 赋值语句。 控制流语句。 DECLARE 语句,该语句定义函数局部的数据变量和游标。 SELECT 语句,该语句包含带有表达式的选择列表,其中的表达式将值赋予函数的局部变量。 游标操作,该操作引用在函数中声明、打开、关闭和释放的局部游标。只允许使用以 INTO 子句向局部变量赋值的 FETCH 语句;不允许使用将...
阅读全文
摘要:1,EXEC的使用 2,sp_executesql的使用 MSSQL为我们提供了两种动态执行SQL语句的命令,分别是EXEC和sp_executesql;通常,sp_executesql则更具有优势,它 提供了输入输出接口,而EXEC没有。还有一个最大的好处就是利用sp_executesql,能够重用执行计划,这就大大提供了执行性能(对于这个我在 后面的例子中会详加说明),还可以编写更安全的...
阅读全文
摘要:如何更改已注册的断字符和筛选器的列表 (Transact-SQL)
阅读全文