SQL Server
Houluoxuan_168
A
展开
-
常用SQL 语句
1.增加唯一约束 alter table AC_B2CSpecialInfo add constraint UniqueB2CNo unique (B2CNO)原创 2009-11-21 09:57:00 · 365 阅读 · 0 评论 -
SQL VSS
http://www.red-gate.com/products/SQL_Source_Control/index.htm原创 2010-11-27 19:10:00 · 474 阅读 · 0 评论 -
2008 or 2005 日誌清除方式
SQL Server 2008删除或压缩数据库日志的方法2010-09-20 20:15<br />由于数据库日志增长被设置为“无限制”,所以时间一长日志文件必然会很大,一个400G的数据库居然有600G的LOG文件,严重占用了磁盘空间。由于主要是做OLAP,所以数据库本身不会有大变动,所以日志也就没有多少作用了,因此想办法把数据库日志文件收缩到很小或者删除。<br />网上搜索相关解决方案后,得到的答案丰富多彩,但是真正管用的方案并不多,这里分享一个csdn上找到的方法。这个方法讲述了SQL Server原创 2010-11-29 14:13:00 · 504 阅读 · 0 评论 -
写入读到二进制数据到DB
<br />byte[] data = File.ReadAllBytes(m_filePath);<br /> <br /> private string SaveFileToDB(byte[] data)<br /> {<br /> string sqlText = "insert into macuploadfile values(@bdata);select lastval();";<br /> BaseDataProvider原创 2010-10-13 08:55:00 · 771 阅读 · 0 评论 -
不用外关联表
<br />有时候为了取某一个字段的描述信息,我们可以关联到其它的表,组成一个大的集合,<br />但这样有一个问题,如在 where 条件部分,可能是用单独的逻辑获取的,可能只有字段名但却没有表名。<br />但在这 where 里面可能要表名,因为多个表可能有相同的字段。<br /> <br />这时可以不关联这个表,而在 select 语句中单独查询。则把这个 外关联的表的作用域限定在 select 子句当中了。<br />效率估计也会快一点。<br /> <br />select taskid,pa原创 2010-10-17 17:55:00 · 410 阅读 · 0 评论 -
Before 触发器
<br />//注意所有查询到的值都没有没有更改之前的值。<br />//比如页面上有改变 shiph.stgid ,但是这里查询的时候还是旧的值,<br />//如果想新的值可以使用 new.stgid<br /> <br />//有一个问题需要保存是失败的,但是页面上也会提醒保存成功。<br /> <br />create or replace function fn_checkStgid()<br />returns trigger as<br />$BODY$<br />begin<br />ins原创 2010-10-20 16:02:00 · 604 阅读 · 0 评论 -
生成数据字典
<br />SELECT <br /> 表名 = case when a.colorder=1 then d.name else '' end,<br /> 表说明 = case when a.colorder=1 then isnull(f.value,'') else '' end,<br /> 字段序号 = a.colorder,<br /> 字段名 = a.name,<br /> 标识 = case when COLUMNPR原创 2010-10-22 17:31:00 · 498 阅读 · 0 评论 -
sql server 连远端机器,多实例
<br />1.查询远端机器的 端口号 , 打开 sql server 配置管理器 。网络配置-》TCP/IP 属性,端口号<br /> <br />2.回到本机 认识开 sql server 配置管理器 打开 Native Client 配置,新建别名。原创 2010-10-25 10:43:00 · 407 阅读 · 0 评论 -
為付儲過程傳參數傳 Null值
就像這橛 alter PROCEDURE sp_insertMbrjbh@memberid nvarchar(50)=null,@ordid nvarchar(15)=null,@ordbodyno int=null,@qty int=null,@currDate datetime=null,@distanceDays int=null,@ValidDays int=null,@codejbs nvarchar(10)=null,@brioptman nvarch原创 2010-11-01 17:08:00 · 1053 阅读 · 0 评论 -
存储过程传参
<br /> declare @Result int<br /> exec dbo.sp_UseJCoin @memberid,@ordid,@ordbodyno,@UseQty,@Result output;<br /> <br />注意调用时也要加 output ,不然程序不报错,但是结果却没有写进去<br /> <br /> <br />ALTER PROCEDURE [dbo].[sp_UseJCoin]<br />@memberid nvarchar(50)=null,<br />@ord原创 2010-11-03 17:53:00 · 1006 阅读 · 0 评论 -
行列转化与PIVOT、UNPIVOT运算符使用
<br />行列转化与PIVOT、UNPIVOT运算符使用<br /> <br />http://blog.csdn.net/canhui87/archive/2009/09/20/4574260.aspx <br /> <br />PIVOT用于将列值旋转为列名(即行转列),在SQL Server 2000可以用聚合函数配合CASE语句实现<br />PIVOT的一般语法是:PIVOT (聚合函数(列) FOR 列 in (…) )AS P<br />完整语法:<br />table_source<br原创 2010-11-04 15:34:00 · 572 阅读 · 0 评论 -
sql server 2008 新特性
1.同时插入多行,insert into a values(2,'C'),(3,'D'),(4,'E');or 可套查询,如:insert into a values((select top 1 id from b),(select top 1 n原创 2011-10-02 20:53:23 · 576 阅读 · 0 评论 -
数据库版本控制问题
<br />数据库版本控制问题数据库版本控制问题困扰我很长时间了.每次更改数据库,都需要做详细的记录,稍不留神就出问题.找过不少工具,自己也想着用存储过程实现,效果都不怎么好.最近找到了SQLSourceSafe,也找到了这篇文章,转到我的地以方便以后查看.对于14天的那个限制我也想办法给改了一下.估计够我用的啦.(原文地址:http://www.cnblogs.com/walkinhill/archive/2008/09/17/141228.html) 当多人同时开发一个数据库管理和应用系统时,采用合理的转载 2010-09-23 16:32:00 · 530 阅读 · 0 评论 -
设计规范化
1NF:所有属性都具有原子性,所有表都有主键.2NF:属性对主键具有完全依赖性.3NF:属性必须具有独立性,即,如果知道A值就一定要得到 B 值.那他们就不具有独立性. 数据库设计的规范化有助于走出混沌的状态.减少错误发生的概率.也使得设计更具有扩展性.原创 2010-05-27 11:14:00 · 371 阅读 · 0 评论 -
C#写的SQL聚合函数
2009/7/19SQL Server 字符串连接聚合函数.注册程序集:拷贝“SqlStrConcate.dll”至/MSSQL.1/MSSQL/Binn目录下,执行下面的SQL:CREATE ASSEMBLY [SqlStrConcate]AUTHORIZATION [dbo]FROM D:/Program Files/Microsoft SQL Server/M转载 2009-11-28 11:21:00 · 1787 阅读 · 0 评论 -
读当月第一天,下月第一天,下下月第一天。
读当月第一天,下月第一天,下下月第一天。如果需要读最后一次,将下月最一天减一就可以了。 declare @currMonthFirstDay datetimedeclare @nextMonthFirstDay datetimedeclare @nextNextMonthFirstDay datetimeset @currMonthFirstDay =CONVERT(varcha原创 2009-11-30 09:45:00 · 581 阅读 · 0 评论 -
关闭活动连接
在做数据库还原时,经常需要关闭活动连接,可以使用 sp_who 查看你要操作的数据库的活动连接,然后再用 Kill ID 结束连接。 怀疑之前之所有经常提示不能获得数据库的排它访问权是因为当前查询窗口没有关闭。 因为今天有试过一次关闭窗口就可以了。所以怀疑之前是没有关闭窗口。原创 2009-12-13 11:20:00 · 780 阅读 · 0 评论 -
数据库差异备份
数据库差异备份是针对上一次完全备份来说的,就是说在上一次整体备份的基础将改动的部分进行备份。估计是在数据库日志当中有记录上一次完全备份的样子。 在备份对话框中类型选项选择“差异”。可以追加到之前的备份文当中,也可以新加,最好是追加,因为差异备份集的使用肯定是要跟上次完全备份的包一起使用的。如果数据分散的话则不方便查找 在还原的时候选择需要的备份集,可能是一个(完全),也可能是两个(原创 2009-12-13 12:41:00 · 578 阅读 · 0 评论 -
财务系统自动备份,作用
先手工建一个完整备份集 ACFull20091213.bak 然后再写一个作用,进行定时差异备份。 估计每隔一个月得重新来一次。不然差异集也会越来越大。因为差异集是针对完整集来说的。并不是在差异的基础上再来一次差异备份。 语法:(可以在企业管理器里面操作,然后生成脚本) declare @dateDesc varchar(20)declare @原创 2009-12-13 13:57:00 · 613 阅读 · 0 评论 -
生成数据库操作脚本
如果不会写脚 本,可以在企业管理器当中操作界面,选择生成脚 本,很多页面都有这一项功能的。免去查帮助的麻烦原创 2009-12-13 13:49:00 · 466 阅读 · 0 评论 -
让你的SQL运行速度明显提高
人们在使用SQL时往往会陷入一个误区,即太关注于所得的结果是否正确,而忽略了不同的实现方法之间可能存在的性能差异,这种性能差异在大型的或是复杂的数据库环境中(如联机事务处理OLTP或决策支持系统DSS)中表现得尤为明显。笔者在工作实践中发现,不良的SQL往往来自于不恰当的索引设计、不充份的连接条件和不可优化的where子句。在对它们进行适当的优化后,其运行速度有了明显地提高!下面我将从这三个方面分原创 2010-03-09 15:31:00 · 365 阅读 · 0 评论 -
存储过程加密针对整个数据库
alter procedure sp_encryptasset nocount ondeclare @TbSpText table( ColText varchar(500))declare @PRName varchar(100)declare cu_AllProc cursor for select name from sys.sysobjects wher原创 2010-01-11 16:56:00 · 498 阅读 · 0 评论 -
strJoin禁忌
新系统以后不再使用 StrJoin 组合的字段进行查询。估计是很影响性能,有空要测试一下。建议如果要用到子表中的查询字段的话,全部组合放到主表当中保存。方便查询。原创 2010-04-30 09:48:00 · 711 阅读 · 0 评论 -
ROW_NUMBER,临时视图
select * from (select ROW_NUMBER() over (order by Amount) as RowNumber,* from tbOrder) TBwhere TB.RowNumber between 1000000 and 1000060 或者 用 Top N 形式。 select top 60 * from (select ROW_NUMBER原创 2010-05-12 10:28:00 · 745 阅读 · 0 评论 -
数据库引擎优化顾问
数据库引擎优化顾问 非常好的一个工具,当你不是很熟悉索引的情况,可以将你需要执行的语句生成一个 .sql 文件,然后打开这个工具导入之。它可以分析,并提供优化建议。 并且可以一键生成所需的索引。非常棒!原创 2010-05-17 11:48:00 · 461 阅读 · 0 评论 -
B树
B树、B-树、B+树、B*树都是什么 B树 即二叉搜索树: 1.所有非叶子结点至多拥有两个儿子(Left和Right); 2.所有结点存储一个关键字; 3.非叶子结点的左指针指向小于其关键字的子树,右指针指向大于其关键字的子树; 如:原创 2010-05-18 10:05:00 · 444 阅读 · 0 评论 -
清除缓存,
DBCC DROPCLEANBUFFERSDBCC FREEPROCCACHEDbcc DropCleanBuffers 上面三句具体是什么作用,还没查说明. SET STATISTICS IO ON SET STATISTICS TIME ON 查询当前的缓存对象.select * from sys.syscacheobjects原创 2010-05-18 17:48:00 · 398 阅读 · 0 评论 -
SQL Server2005杂谈(3):四个排名函数(row_number、rank、dense_rank和ntile)的比较
转自http://www.cnblogs.com/nokiaguy/archive/2009/02/05/1384860.htm 排名函数是SQL Server2005新加的功能。在SQL Server2005中有如下四个排名函数:1. row_numbe转载 2011-10-10 09:27:12 · 503 阅读 · 0 评论