
数据库相关
蝈蝈俊
蝈蝈俊.net
展开
-
SQL2005的SQL Server Management Studio对大数据库操作超时解决方法
SQL2005 中,我们使用 SQL Server Management Studio对大数据库操作,不象 SQL2000 的企业管理器那样,作一些大数据库的修改操作时候,不会超时。如何解决呢? 很简单,在SQL Server Management Studio的 Tool --〉 Options 菜单设置即可。需要设置的项如下: “为表设计器更新重写连接字符串的超时值”这个选项必原创 2007-09-28 22:13:00 · 8077 阅读 · 4 评论 -
SQL Server 中查询非中文,非英文,非数字的特殊列
今天在处理一个用户名数据库时,发现有些不正常的数据存在,按照逻辑,用户名只能是数字,字母,下划线和纯中文这样的字符组合存在,不应该有其他组合存在,但是发现数据库中由于各种历史原因,有些不正常的存在,如何找到这些异常数据,在优快云的 SQL Server 版问了这样两个问题,如下: http://topic.youkuaiyun.com/u/20100111/14/529a21a1-3ea8-4263-a0原创 2010-01-11 15:43:00 · 7750 阅读 · 9 评论 -
编程控制链接字符串
System.Data.SqlClient 命名空间下有个类: SqlConnectionStringBuilder ,可以帮助我们维护链接字符串。 这个类对我们下面的需求场景很有帮助。 对于同一个数据库,我们可能有正常和比较耗时的统计工作两种需求,为何互相不干扰,我们一般可以配置2个数据库链接字符串,类似如下的配置: Persist Security Info=False;Integrat原创 2009-12-23 10:31:00 · 1271 阅读 · 3 评论 -
SQL IP to BigInt
前一篇博客 IP to Integer 提供的 SQL 函数是 IP 转换成 Integer 的方法。 Integer 的最大值为: 2147483647(2^31 - 1)。按照 IP 转换成整数的算法,会算出来大于这个值的,所以之前提供的 IP 转换成 Integer 的方法会算出负值。 下面是 IP to BigInt 的转换算法, 这时候运算就不会小于零。 CREATE FUNCT原创 2010-02-02 11:22:00 · 1561 阅读 · 2 评论 -
IP to Integer
有时候我们要判断某个IP是否在某个段内,如何实现呢? 一个简单办法就是把IP转换成Integer,然后判断整数是否在某个范围内就可以实现这个判断。 转换的算法如下: 比如我们要转换的IP为: 058.062.042.000 First Octet: 058 Second Octet: 062 Third Octet: 042 Fourth Octet: 000 计算原创 2010-01-28 15:04:00 · 1656 阅读 · 3 评论 -
information_schema.routines与sysobjects
在建立存储过程前,我习惯于先检查存储过程是否存在,如果存在就建立,然后再创建。 这个检查的过程,现在有2种习惯写法,如下:if exists ( select * from information_schema.routines where specific_name = WorkOrdersForBlade and specific_schema = dbo) begin原创 2009-03-13 10:38:00 · 3308 阅读 · 1 评论 -
VS2008的DataBase Project的项目模板目录
公司正在统一存储过程的编写规范,为了更宜用,我们就修改了SQL Server Management Studio 和 Microsoft Visual Studio 2008 的模板文件。 SQL Server Management Studio 的模板文件所在的目录请参看我之前的博客: 改变 SQL Server Management Studio的模板 Visual Studio 200原创 2009-03-11 14:51:00 · 3869 阅读 · 2 评论 -
同时建立主键(PRIMARY KEY)与聚集索引(Clustered Index)的先后顺序
主键(PRIMARY KEY)与聚集索引(Clustered Index)的对比可以参看我之前的博客:SQL Server 索引基础知识(4)----主键与聚集索引 一个表最多一个主键,最多一个聚集索引。 数据库在创建主键同时,会自动建立一个唯一索引。如果这个表之前没有聚集索引,同时建立主键时候没有强制指定使用非聚集索引,则建立主键时候,同时建立一个唯一的聚集索引。 所以建立主键(PRIM原创 2009-02-27 16:58:00 · 19101 阅读 · 0 评论 -
改变 SQL Server Management Studio的模板
我前面一篇文章介绍了SQL Server Management Studio的模板。我们可以很方便的通过模板提高我们编写脚本的效率。这篇文章如下: SQL Server的模板 http://blog.joycode.com/ghj/archive/2009/02/16/115466.aspx 但是如果我们修改模板时,是在Template Explorer 中修改模板的, 则Template E原创 2009-02-26 16:53:00 · 2980 阅读 · 1 评论 -
SQL Server 生成脚本的一些参数说明
我们通过下面菜单,就可以在SQL Server Management Studio中,把我们选择的数据库中每一个对象都产生脚本。这对我们做数据库的版本管理,数据库的升级文档都很方便。 在生成脚本过程中,有很多参数可以选择,合理的配置这些参数,可以让我们很方便的按照我们的期望生成脚本。 生成脚本的一些选项,如下图: 我这里是SQL 2005 的选项, SQL 2008 的选项跟这个稍有差原创 2009-02-24 15:50:00 · 3866 阅读 · 0 评论 -
SQL Server 2005 配置发送邮件
这个教程是使用SQL Server Management Studio的管理工具完成配置的,其实这个配置也可以通过一系列的SQL语句完成配置。 使用SQL语句完成配置的请参看后面文章:http://www.sqlstudy.com/sql_article.php?id=2008072403 配置前说明: 就像我们其他场景发送邮件一样,我们需要配置SMTP服务器地址,账户, 密码,邮箱等信息。原创 2009-02-25 15:59:00 · 13055 阅读 · 11 评论 -
SQL Server的模板
我们在编写SQL 脚本的时候,有很多通用的地方,这时候模板就可以给我们带来很大的方便。下面就用新建存储过程为例,来说明使用模板的好处,以及如何维护这个模板。 以下提到的特点适用于 SQL Server 2005 和 SQL Server 2008。 模板的好处: 我们在 SQL Server 中,新建一个存储过程,如下方式: 默认情况下,这样我们就会获得一个如下的SQL语句原创 2009-02-16 13:48:00 · 4050 阅读 · 2 评论 -
SQL Server Profiler 看到的几个指标说明
SQL Server Profiler 看到的几个指标说明,如下图: 以上图的选择的第5行 Audit Logout 为例, Read 是指刚被关闭的连接,从开始连接到关闭连接,逻辑读取页面 的数量总合。 CPU 是指刚被关闭的连接,从开始连接到关闭使用的 CPU 时间(毫秒)。 Writes 是指刚被关闭的连接,从开始连接到关闭连接,逻辑写入页面 的数量总和。 Duration原创 2008-11-24 16:53:00 · 3580 阅读 · 0 评论 -
SQL Server 索引基础知识(6)----索引的代价,使用场景
前几天给同事培训了聚集索引,非聚集索引的知识后,在一个同事新作的项目中,竟然出现了滥用聚集索引的问题。看来没有培训最最基础的索引的意义,代价,使用场景,是一个非常大的失误。这篇博客就是从这个角度来罗列索引的基础知识。 使用索引的意义 索引在数据库中的作用类似于目录在书籍中的作用,用来提高查找信息的速度。 使用索引查找数据,无需对整表进行扫描,可以原创 2008-01-16 14:34:00 · 3920 阅读 · 0 评论 -
SQL Server 索引基础知识(9)----Indexing for OR
我们仍然是通过例子来理解OR运算符的特征我们仍然使用 http://blog.joycode.com/ghj/archive/2008/01/18/113870.aspx 中的 member 表,这时候,这个表的索引如下: 名字 描述 列原创 2008-01-18 14:33:00 · 3259 阅读 · 0 评论 -
SQL Server 索引基础知识(5)----理解newid()和newsequentialid()
在SQL Server 2005 中新增了一个函数:newsequentialid(),MSDN 中对这个函数的描述如下:在指定计算机上创建大于先前通过该函数生成的任何 GUID 的 GUID。NEWSEQUENTIALID() 不能在查询中引用。NEWSEQUENTIALID() 只能与 uniqueidentifier 类型表列上的 DEFAULT 约束一起使用。这个函数的具体用法在下原创 2008-01-08 15:06:00 · 3949 阅读 · 0 评论 -
SQL Server 数据格式修改时,没有保存按钮的情况解决
如果你使用的是 SQL Server 2008, 当你修改数据结构后,保存时会报下图情况: Saving changes is not permitted. The changes you have made require the following tables to be dropped and re-created. You have either made changes to a原创 2010-05-26 15:33:00 · 1812 阅读 · 1 评论