- 博客(30)
- 资源 (3)
- 收藏
- 关注
原创 一种分布式数据库同步方案
<br /><br /> 对于大型企业,业务分布在世界各地,为了改善当地业务服务能力,不得不在当地部署数据库以提高性能,而各个区域之间的数据交互或者同步,成为不可不面对的问题。其间要解决的技术问题主要有:<br /> 1、同步数据的提取。从数据库里提取出需要同步的数据,这包括增、删、改三类动作对数据造成的改变。在数据表安装触发器是提取同步数据的简单有效的手段,而且触发器对应用层而言是透明的,应用程序感觉不到触发器的存在。<br /> 2、同步数据的可靠传输。数据传输可以用队列来实现,例如有M
2010-07-21 14:33:00 8636 2
原创 当你拥有一把用得顺手的锤子
<br />记不得在哪里看过这句话,“当你拥有一把用得顺手的锤子,就会认为全世界都是钉子”。所有的事情、所有的问题,你都尝试用这把锤子去解决。很多情况下,常常,这把锤子解决不了问题,或者说,有更好的工具来解决手头的问题。比如,将钉子从木头中取出来,使用起子会更有效率、更省事。<br /> 编程语言,比如C#,就是我们手上的锤子;而由此语言而形成的思维方式、思考习惯更是我们头脑中一把无形的锤子。这是好事、也是坏事--好事在于我们至少有一把锤子,坏事在于我们常常因为手中的用了顺手的锤子而忽略了其它工具。
2010-07-21 11:06:00 884
原创 mssql server 函数大全
一、字符转换函数1、ASCII()返回字符表达式最左端字符的ASCII 码值。在ASCII()函数中,纯数字的字符串可不用‘'括起来,但含其它字符的字符串必须用‘'括起来使用,否则会出错。2、CHAR()将ASCII 码转换为字符。如果没有输入0 ~ 255 之间的ASCII 码值,CHAR() 返回NULL 。3、LOWER()和UPPER()LOWER()将字符串全部转为小写;UPPER()将字符串全部转为大写。4、STR()把数值型数据转换为字符型数据。STR ([,length[, ]])lengt
2010-07-14 10:19:00 5272
原创 Sql 之left join、right join、inner join的区别
<br /><br />left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 <br />right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录<br />inner join(等值连接) 只返回两个表中联结字段相等的行<br />举例如下: <br />--------------------------------------------<br />表A记录如下:<br />aID aNum<br />1 a20050111<br
2010-07-14 10:06:00 513
原创 程序物语(七):项目经理预成长
最近,一些汇聚点滴感悟的文章得到了大家的关注,邀月希望得到更多的交流,尤其是指出不足之处,今天,根据自己的体会,我来谈谈项目经理的“初始化”阶段。 新人工作一段时间后,或长或短,可能一至两年后,有可能出任项目经理。此时,考验你能力的时候真正来临。项目分很多类,如基础研究项目,大型综合性项目。这里我们选取小的商业应用型项目为例。 刚开始,我们是没什么经验的,好在有热情。但这是项目,是一个讲究人与人之间配合的技巧性的活,光靠热情是难以持久的。退一步说,你是能力很强的聪慧之人,什么都拿得起
2010-07-12 14:40:00 637
原创 第五章Table(3)
读书笔记订阅地址:http://blog.csdn.net/downmoon/category/647266.aspx/rss《Microsoft Sql server 2008 Internals》索引目录:《Microsoft Sql server 2008 Internals》读书笔记--目录索引在上一篇中,我们主要学习了如何在系统视图中察看我们创建表和索引的元数据信息,今天,我们继续学习数据存储的元数据结构。数据存储元数据(Data Storage Metadat
2010-07-12 14:28:00 534
原创 第五章Table(2)
<br /><br />读书笔记订阅地址:<br />http://blog.csdn.net/downmoon/category/647266.aspx/rss<br />《Microsoft Sql server 2008 Internals》索引目录:<br />《Microsoft Sql server 2008 Internals》读书笔记--目录索引<br /> 当你创建一个表时,一个或 多个行插入到若干个系统表中,以便系统能管理这些新建的表,SQL Server提供了(catalog Vie
2010-07-12 11:10:00 545
原创 第五章Table(1)
<br /><br />读书笔记订阅地址:<br />http://blog.csdn.net/downmoon/category/647266.aspx/rss<br />《Microsoft Sql server 2008 Internals》索引目录:<br />《Microsoft Sql server 2008 Internals》读书笔记--目录索引<br /> 在这章中,我们将对表(table)作一些简单的介绍,并继续深入察看表的一些内部结构。简单的说,表是具有一些特定意义的实体的集合。表不
2010-07-08 17:11:00 582
原创 第三章Databases and Database Files(3)
<br /><br />《Microsoft Sql server 2008 Internals》读书笔记--目录索引<br />在上篇文章中,主要简单介绍了数据库的存放机制和snapshot的简单应用。下来我们看看一个基本的系统数据库Tempdb,关于tempdb,MSDN有详细的描述,<br />请参考;http://msdn.microsoft.com/zh-cn/library/ms190768.aspx<br />一些关于tempdb的基本常识:<br /> view plaincopy to c
2010-07-08 14:18:00 782
原创 第三章Databases and Database Files(2)
<br /><br />读书笔记订阅地址:<br />http://blog.csdn.net/downmoon/category/647266.aspx/rss<br />《Microsoft Sql server 2008 Internals》索引目录:<br />《Microsoft Sql server 2008 Internals》读书笔记--目录索引<br />在上篇文章中,主要介绍了创建数据库的基本语法和FileGroup的初步知识。需要注意的是:<br />关于FileGroup<br />
2010-07-08 10:14:00 656
原创 第三章Databases and Database Files(1)
<br /><br /> 最近断断续续看《Microsoft Sql server 2008 Internals》,中文名是《深入解析Microsoft Sql server 2008》,由于邀月拿到的是英文版,所以一边看,一边查字典,顺便把一些理解记下来,翻译或理解不对之处,敬请指出。[email protected]。欢迎交流。<br /> 这里邀月可以保证的是:这个系列95%以上的内容都是邀月根据原英文纯手工翻译,加上自己的理解和注释,没有借助任何翻译工具。除了已注明的出处 MSDN 之外,如有转载,请注明来自
2010-07-08 09:08:00 1020
原创 SQL2005/2008中的CTE应用--递归查询
<br /><br />微软从SQl2005起引入了CTE(Common Table Expression)以强化T-SQL。这是一个类似于非持久视图的好东东。<br />按照MSDN介绍<br />1、公用表表达式 (CTE) 可以认为是在单个 SELECT、INSERT、UPDATE、DELETE 或 CREATE VIEW 语句的执行范围内定义的临时结果集 。CTE 与派生表类似,具体表现在不存储为对象,并且只在查询期间有效 。与派生表的不同之处在于,CTE 可自引用,还可在同一查询中引用多次 。<b
2010-07-08 09:02:00 477
原创 删除MSSQL数据库text字段中恶意脚本的方法
<br /><br />删除MSSQL数据库text字段的替换处理示例--全表替换,看到有人提问,所以整理了一个好久以前的处理方法,以供大家参考:<br />方法很简单:text字段不能使用Replace,所以使用patindex<br /> view plaincopy to clipboardprint?-select * from Product where P_Intro like '%<mce:script src="http://my.stsw518.cn/a002/1.js" mce_src=
2010-07-07 18:18:00 625
原创 根据表名自动生成I/S/U/D的SQL语句,用于MSSQL2000/2005/2008
网上流传的基本SQL生成语句(Inset/Selec/Update/Delete)方法多了,这里介绍一种,可以用于MSSQL 2000/2005/2008。 第一步:生成测试数据库 /* ************自动生成存储过程演示 **************** */ /* ************主要生成以下四个脚本 Delete/Select/Insert/Update **************** */ /* ************说明:仅用于MSSQL 2000/2005/20
2010-07-07 18:07:00 863
原创 生成MSSQL Data备份的存储过程
<br />ET QUOTED_IDENTIFIER OFF <br /> GO <br /> SET ANSI_NULLS OFF <br /> GO <br /> <br /> <br /> ALTER PROCEDURE CPP_BackDataBase (@databasename varchar ( 100 )) AS <br /> declare @filename varchar ( 100 ), @cmd varchar ( 255 )<br /> s
2010-07-07 18:01:00 514
原创 MS SQL Server:排名函数详解
<br />SQLServer 2005 能够在 T-SQL 代码中对数据行进行排名。排名函数(ranking function)能对每一个数据行进行排名,从而提供一种以升序来组织输出的方法。可以给每一行一个唯一的序号,或者给每一组相似的行相同的序号。<br /><br />排名函数有四种类型:<br /> ROW_NUMBER :为查询的结果行提供连续的整数值。<br /> RANK :为行的集合提供升序的、非唯一的排名序号,对于具有相同值的行,给予相同的序
2010-07-07 17:48:00 572
原创 ntext变量和varchar变量如何相加
ntext变量和varchar变量如何相加 -- ntext可以很大,而varchar最大8000个英文字符,当ntext很大时 -- 把ntext转化为varchar可能会把ntext截断而发生数据丢失,我的做法是使用updatetext,例如: DECLARE @ptr binary ( 16 ) DECLARE @val varchar ( 100 ) SET @val =
2010-07-07 17:34:00 1779
原创 聚簇索引与非聚簇索引的区别
<br /> <br /> 聚集索引确定表中数据的物理顺序。聚集索引类似于电话簿,后者按姓氏排列数据。由于聚集索引规定数据在表中的物理存储顺序,因此一个表只能包含一个聚集索引。但该索引可以包含多个列(组合索引),就像电话簿按姓氏和名字进行组织一样。 <br /> <br /> 聚集索引对于那些经常要搜索范围值的列特别有效。使用聚集索引找到包含第一个值的行后,便可以确保包含后续索引值的行在物理相邻。例如,如果应用程序执行的一个查询经常检索某一日期范围内的记录,则使用聚集索引可以迅速找到包含开始日期的行
2010-07-07 17:18:00 454
原创 常用的sqlServer字段相关的sql语句
<br /><br />1、可以列出所有用户表的字段 : <br /> -- 可以列出所有用户表的字段 <br /> select syscolumns.name colname,sysobjects.name tabname, * <br /> from sysobjects,syscolumns <br /> where sysobjects.id = syscolumns.id and sysobjects.xtype = ' U ' <br /><br /><br />
2010-07-07 16:43:00 368
原创 sql语句优化与时间成本
<br /> -- 增加分析 <br /> set statistics io on <br /> go <br /> set statistics time on <br /> go <br /> set nocount on <br /> go <br /> set showplan_text on <br /> go <br /> set showplan_All on <br /> go <br /> -- --取消分析 <br /> -- --set statis
2010-07-07 16:38:00 502
原创 不要给技术人员做绩效
<br /><br />今天看到CSDN举办了一个论坛,研发人员的绩效管理,很遗憾没能早知道这个消息,没有参加学习。不过<br />在我管理技术部门的时候,其实是把表格上的绩效管理取消的了,因为感觉除非超大型的公司,否则没必<br />要给技术人员做绩效管理,只有主管有绩效就可以了。原因有几个:<br />1,在中国,知道怎么做绩效的人很多,知道怎么很好执行绩效的人很少。90%的公司有绩效无执行(此处<br />指所有的公司,不仅仅是IT)<br />2,让技术人员写1000行代码容易,让他们填写绩效表格难
2010-07-07 16:27:00 620
原创 SQLSERVER2000中表变量的应用
<br /><br />原语句如下: <br /> <br /> declare @d datetime <br /> set @d = getdate () <br /> SELECT [ P_ID ] FROM [ ProductInfo ] <br /> WHERE [ P_ID ] IN <br /> ( 28674 , 28667 , 28241 , 355 , 7210 , 14646 , 2164 , 11891 , 4519 , 146
2010-07-07 16:26:00 671
原创 SQL中通配符、转义符与"["号的使用
<br />一、搜索通配符字符的说明<br />可以搜索通配符字符。有两种方法可指定平常用作通配符的字符:使用 ESCAPE 关键字定义转义符。在模式中,当转义符置于通配符之前时,该通配符就解释为普通字符。例如,要搜索在任意位置包含字符串 5% 的字符串,请使用:WHERE ColumnA LIKE '%5/%%' ESCAPE '/'<br /><br />在上述 LIKE 子句中,前导和结尾百分号 (%) 解释为通配符,而斜杠 (/) 之后的百分号解释为字符 %。在方括号 ([ ]) 中只包含通
2010-07-07 10:05:00 555
原创 SQL中Table型数据与用户自定义函数
<br /><br />SQL中Table型数据与用户自定义函数(downmoon) <br />SQL Server 2000 新增了Table型数据:Table型数据不能用来定义列的类型,只能用作T-SQL变量或者作为自定义函数的返回值,下例是一个简单的table 型数据的例子: Declare @TableVar Table <br /> (Cola int Primary Key ,Colb char ( 3 ))<br /> Insert Into @TableVar
2010-07-07 09:49:00 479
原创 SQL中Table型数据与用户自定义函数
<br /><br />SQL中Table型数据与用户自定义函数(downmoon) <br />SQL Server 2000 新增了Table型数据:Table型数据不能用来定义列的类型,只能用作T-SQL变量或者作为自定义函数的返回值,下例是一个简单的table 型数据的例子: Declare @TableVar Table <br /> (Cola int Primary Key ,Colb char ( 3 ))<br /> Insert Into @TableVar
2010-07-07 09:49:00 455
原创 前触发器和后触发器简介
<br /><br />前触发器和后触发器简介(downmoon)<br /><br /> 触发器是一种特殊的存储过程。当Insert Update 或者Delete 语句修改表中一个或者多个行时执行触发器。因为SQL Server 对特定表上的每一个指定操作调用一个触发器,所以可以使用触发器扩展SQL Sever 的内置完整性和数据操纵功能.<br /> 注意:不像Delete 语句,Trancate Table 语句不激活触发器,Write Text 语句也不激活触发器。 <br />
2010-07-07 09:14:00 1416
原创 编写存储过程常用技巧汇总
根据存储过程名取存储过程内容 -- 根据存储过程名取存储过程内容 -- 调试 GetContentByProcedureName '[dbo].[CPP_CountOfTrdeByUserID]' alter procedure GetContentByProcedureName ( @ProcedureName nvarchar ( 500 )) as if exists ( select * from dbo.syscomments where id
2010-07-05 11:02:00 753
原创 存储过程命名规范
<br /><br />存储过程的命名有这个的语法:<br /> [proc] [MainTableName] By [FieldName(optional)] [Action][ 1 ] [ 2 ] [ 3 ] [ 4 ]<br />(1) 所有的存储过程必须有前缀'proc'. 所有的系统存储过程都有前缀"sp_", 推荐不使用这样的前缀因为会稍微的减慢。<br /> <br />(2) 表名就是存储过程访问的对象。<br /> <br />(3) 可选字段名就是条件子句。 例如
2010-07-05 10:57:00 1942 1
原创 SQL中set ansi_nulls与set quoted_identifier 解释
<br /><br />SET ANSI_NULLS <br />指定在对空值使用等于 (=) 和不等于 ( <>) 比较运算符时,这些运算符的 SQL-92 遵从行为。<br />语法 <br />SET ANSI_NULLS {ON | OFF}<br />注释 <br />SQL-92 标准要求对空值的等于 (=) 或不等于 ( <>) 比较取值为 FALSE。当 SET ANSI_NULLS 为 ON 时,即使 column_name 中存在空值,使用 WHERE column_name = NUL
2010-07-05 10:50:00 2889
原创 Web 设计师的 50 个超便利工具
<br /><br />作为一个 Web 设计师并不容易,不仅考虑设计与架构,还要时刻注意各种小细节,设计师的工作被各种各样的问题包围,你需要一套超级便利的工具帮你解决各种消耗时间和精力的问题。本文介绍了50个非常强大的工具,你会发现,其中的一些工具会让你感到惊艳在,这是第一部分。LaunchList<br />站点发布前的工作清单,预设了28个需要检查的事项,也可以自定义。同类工具:Ultimate Website Launch Checklist 以及 The Ultimate Website Prel
2010-07-05 09:10:00 1093
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人