数据库镜像搭建
摘要:一 概述 数据库镜像是SQL SERVER 2005用于提高数据库可用性的新技术。数据库镜像将事务日志记录直接从一台服务器传输到另一台服务器,并且能够在出现故障时快速转移到备用服务器。可以编写客户端程序自动重定向连接信息,这样一旦出现故障转移就可以自动连接...
阅读全文
数据库镜像搭建
摘要:一 概述 数据库镜像是SQL SERVER 2005用于提高数据库可用性的新技术。数据库镜像将事务日志记录直接从一台服务器传输到另一台服务器,并且能够在出现故障时快速转移到备用服务器。可以编写客户端程序自动重定向连接信息,这样一旦出现故障转移就可以自动连接到备用服务器和数据库。优势:数据库镜像可以在不丢失已提交数据的前提下进行快速故障转移,无须专门的硬件,并且易于配置和管理。 二 环境准备操作系统:Window 2003 enterprise sp2(至少两台,如要启用自动故障转移,必需三台) SQL版本:MSSQL SERVER 2005 SP3 检查SQL SERVER版本: exec x
阅读全文
Clustered和Nonclustered Indexes 各自得特点和区别及长短处
摘要:1 簇索引 簇索引对表的物理数据页中的数据按列进行排序然后再重新存储到磁盘上即簇索 引与数据是混为一体的它的叶节点中存储的是实际的数据由于簇索引对表中的数据一 一进行了排序因此用簇索引查找数据很快但由于簇索引将表的所有数据完全重新排列 了它所需要的空间也就特别大大概相当于表中数据所占空间的120% 表的数据行只 能以一种排序方式存储在磁盘上所以一个表只能有一个簇索引2 非簇索引 非簇索引具有与表的数据完全分离的结构使用非簇索引不用将物理数据页中的数据 按列排序非簇索引的叶节点中存储了组成非簇索引的关键字的值和行定位器行定位器 的结构和存储内容取决于数据的存储方式如果数据是以簇索引方式存储的则行
阅读全文
Clustered和Nonclustered Indexes 各自得特点和区别及长短处
摘要:1 簇索引 簇索引对表的物理数据页中的数据按列进行排序然后再重新存储到磁盘上即簇索 引与数据是混为一体的它的叶节点中存储的是实际的数据由于簇索引对表中的数据一 一进行了排序因此用簇索引查找数据很快但由于簇索引将表的所有数据完全重新排列 了它所需要的空间...
阅读全文
SQL Server 2008中获取数据库所有表及其字段名称、类型、长度的SQL
摘要:对于有些数据库我们没有权限或者因为其它原因无法查看其数据库的表结构,那么我们将要自己想办法去做了,如果能够应用程序访问的话,我们就可以使用如下所示的 sql脚本来获取数据库中的所有表结构了,代码如下: use AdventureWorks2008 go ...
阅读全文
SQL Server 2008中获取数据库所有表及其字段名称、类型、长度的SQL
摘要:对于有些数据库我们没有权限或者因为其它原因无法查看其数据库的表结构,那么我们将要自己想办法去做了,如果能够应用程序访问的话,我们就可以使用如下所示的sql脚本来获取数据库中的所有表结构了,代码如下:use AdventureWorks2008goSELECT (case when a.colorder=1 then d.name else '' end) 表名,a.colorder 字段序号,a.name 字段名,(case when COLUMNPROPERTY( a.id,a.name,'IsIdentity')=1 then '√'else
阅读全文
SQL语句恢复数据库时一直显示“正在还原”
摘要:“RESTORE DATABASE " + dbName + " From disk='" + filePath + "' WITH REPLACE,NORECOVERY ";dbName:数据库名filepath:备份数据所在的路径名(包括文件名)用上面的SQL语句还原备份数据库时,数据库的状态总是“正在还原”,使得不能对它进行其他操作。解决方案:“RESTORE DATABASE " + dbName + " From disk='" + filePath + "' W
阅读全文
SQL语句恢复数据库时一直显示“正在还原”
摘要:“RESTORE DATABASE " + dbName + " From disk='" + filePath + "' WITH REPLACE,NORECOVERY "; dbName:数据库名 filepath:备份数据所在的路径名(包括文件名) 用上...
阅读全文
SQL Server中事务处理的注意事项
摘要:在做项目开发的时候,对数据库的事务大家应该不会陌生,但是如何使用好事务呢? 以下有几个注意点和大家一起分享下: 1.对要做的业务处理,事务操作的时间要尽可能的短。保持事务打开会让资源在很长的一段时间内处于锁定状态,这样会阻塞其他用户进行操作或读取数据。 2...
阅读全文
SQL Server中事务处理的注意事项
摘要:在做项目开发的时候,对数据库的事务大家应该不会陌生,但是如何使用好事务呢?以下有几个注意点和大家一起分享下:1.对要做的业务处理,事务操作的时间要尽可能的短。保持事务打开会让资源在很长的一段时间内处于锁定状态,这样会阻塞其他用户进行操作或读取数据。2.最小化由事务锁定的资源。例如,只更新与妖做的事务相关的表。如果数据修改在逻辑上相互依赖,则他们应该属于同一个事务,否则,不相关的更新应该在它们自己的事务中。3.只向事务添加相关的T-SQL操作。不要向某个事务添加与它关系不大的额外的查找或更新。在事务中执行SELECT语句会在关联表上加锁,这样会导致其他用户/会话不能执行或读取数据。4.不要打开需
阅读全文
带CheckBox列头的DataGridView(一)
摘要:在项目的开发中,在DataGridView中将CheckBox作为第一列使用的很平常,使用微软自带DataGridView中的DataGridViewCheckBoxCell,但是微软自带的DataGridView中又没有能够将CheckBox作为列头来做全选...
阅读全文
带CheckBox列头的DataGridView
摘要:在项目的开发中,在DataGridView中将CheckBox作为第一列使用的很平常,使用微软自带DataGridView中的DataGridViewCheckBoxCell,但是微软自带的DataGridView中又没有能够将CheckBox作为列头来做全选和全取消选择的功能。所以如果想实现在列头上显示一个CheckBox并且点击CheckBox来实现全选和全取消,就没有现成的。但是办法是人想出来的,既然微软没有能够提供现成的实现方法,那我们就要自己动手,才能丰衣足食了。其实这个功能实现起来也不是很难,我们首先要定义一个DatagridViewCheckBoxHeaderCell类,它是继承
阅读全文
带CheckBox列头的DataGridView(一)
摘要:在项目的开发中,在DataGridView中将CheckBox作为第一列使用的很平常,使用微软自带DataGridView中的DataGridViewCheckBoxCell,但是微软自带的DataGridView中又没有能够将CheckBox作为列头来做全选和全取消选择的功能。所以如果想实现在列头上显示一个CheckBox并且点击CheckBox来实现全选和全取消,就没有现成的。但是办法是人想出来的,既然微软没有能够提供现成的实现方法,那我们就要自己动手,才能丰衣足食了。其实这个功能实现起来也不是很难,我们首先要定义一个DatagridViewCheckBoxHeaderCell类,它是继承
阅读全文
关于开发人员数据库权限配置以及规范数据库升级流程
摘要:在项目的新版本发布过程中,暴露出了一些数据库权限管理的问题和数据库升级流程规范的问题。在这次发布完真实版后,居然发现有些脚本没有被执行,导致用户升级完就出现了些Bug,产生了很不好的影响。为此项目组专门开会讨论这个问题,具体原因分析如下:1.开发人员现在都有测试数据库的写入权限,导致人人都可以在测试数据库中进行执行脚本,这样就有开发人员在测试环境直接执行了脚本,但是却没有进行登记,结果在测试时没有发现问题,但是发布真实环境时却漏掉了一些脚本的发布。2.一些数据库的存储过程没有按照规定直接更新到VSTS中指定的目录下,而是直接在开发版本的数据库中执行了,或者在测试数据库中执行了,这样在发布时没有
阅读全文
关于开发人员数据库权限配置以及规范数据库升级流程
摘要:在项目的新版本发布过程中,暴露出了一些数据库权限管理的问题和数据库升级流程规范的问题。 在这次发布完真实版后,居然发现有些脚本没有被执行,导致用户升级完就出现了些Bug,产生了很不好的影响。 为此项目组专门开会讨论这个问题,具体原因分析如下: 1.开发...
阅读全文
关于已经上线项目的升级的启示
摘要:目前在公司参与开发的一个项目是一个非常成熟稳定的项目,项目已经在全国的经销商推广使用了几年了,因此对于新版本的每次升级首要考虑的不影响用户的使用的情况下发布新功能和修复bug。对于开发人员而言,每次的新版本发布将会面临着很大的压力。 因为...
阅读全文
关于已经上线项目的升级的启示
摘要:目前在公司参与开发的一个项目是一个非常成熟稳定的项目,项目已经在全国的经销商推广使用了几年了,因此对于新版本的每次升级首要考虑的不影响用户的使用的情况下发布新功能和修复bug。对于开发人员而言,每次的新版本发布将会面临着很大的压力。因为即使我们再三小心,也难免在发布新版本时,不对用户产生丝毫的影响。有时候甚至会产生些比较严重和紧急的Bug。经历过几次新版本的发布后,我对此进行了些思考,总结以下几点:1.每次发布新版本的间隔时间不宜过长,新版本中包括的需求和Bug不宜过多,应该根据需求和Bug的紧急和重要程度来排序,然后选择一定数量的新需求和Bug来发布。(比如每月发布一次新版本,每次累计需求.
阅读全文
查询整个数据库中某个特定值所在的表和字段的方法
摘要:有时候我们想通过一个值知道这个值来自数据库的哪个表以及哪个字段,在网上搜了一下,找到一个比较好的方法,通过一个存储过程实现的。只需要传入一个想要查找的值,即可查询出这个值所在的表和字段名。 前提是要将这个存储过程放在所查询的数据库。 CodeCREATE ...
阅读全文
查询整个数据库中某个特定值所在的表和字段的方法
摘要:有时候我们想通过一个值知道这个值来自数据库的哪个表以及哪个字段,在网上搜了一下,找到一个比较好的方法,通过一个存储过程实现的。只需要传入一个想要查找的值,即可查询出这个值所在的表和字段名。前提是要将这个存储过程放在所查询的数据库。CodeCREATEPROCEDURE[dbo].[SP_FindValueInDB](@valueVARCHAR(1024)) ASBEGIN-- SET NOCOUNT ON added to prevent extra result sets from-- interfering with SELECT statements.SET NOCOUNTON;DECL
阅读全文
SQL Server中查询某列所在的数据库中所在的表
摘要:有时候数据库中表很多,而自己又不太熟悉时,想查询某个列在那个表中时,可不可以用SQL直接查询出来呢,答案是可以的,如下所示就有一个 示例代码: select a.name 表名,b.name 列名 from sys.objects a,s...
阅读全文
SQL Server中查询某列所在的数据库中所在的表
摘要:有时候数据库中表很多,而自己又不太熟悉时,想查询某个列在那个表中时,可不可以用SQL直接查询出来呢,答案是可以的,如下所示就有一个示例代码:select a.name 表名,b.name 列名from sys.objects a,sys.columns bwhere object_name(b.object_id)=a.name and b.name='CustCode' --CustCode 为列名and type='u'
阅读全文
SQL Server数据库中使用sql脚本删除指定表的列
摘要:在SQL Server数据库中删除某一列,使用数据库管理工具直接可视化操作是很简单的,但是如果要用sql脚本呢?可能你会说很简单,直接用 ALTER TABLE [要删除的字段所在的表名] DROP COLUMN [要删除的字段]; GO 这样不就OK了吗? ...
阅读全文
SQL Server数据库中使用sql脚本删除指定表的列
摘要:在SQL Server数据库中删除某一列,使用数据库管理工具直接可视化操作是很简单的,但是如果要用sql脚本呢?可能你会说很简单,直接用ALTER TABLE [要删除的字段所在的表名]DROP COLUMN [要删除的字段];GO这样不就OK了吗?可是如果这个字段上要是有约束的话呢,就会弹出类似如下的提示:消息 5074,级别 16,状态 1,第 1 行对象'DF__***__***__682A18F4' 依赖于 列'***'。消息 4922,级别 16,状态 9,第 1 行由于一个或多个对象访问此列,ALTER TABLE DROP COLUMN ***失败
阅读全文
win7 iis6 配置如何让局域网内其它用户访问
摘要:1.win7安装IIS后,本地测试没有问题,说明IIS的配置正确,如果本地测试有问题,先检查IIS安装配置情况。 2、检查计算机网络情况,发现本地网络正常。如果win7不能访问网络,请先正确配置网络连接。 3、检查防火墙设置,本文遇到的错误就是由于Win7...
阅读全文
win7 iis6 配置如何让局域网内其它用户访问
摘要:1.win7安装IIS后,本地测试没有问题,说明IIS的配置正确,如果本地测试有问题,先检查IIS安装配置情况。 2、检查计算机网络情况,发现本地网络正常。如果win7不能访问网络,请先正确配置网络连接。 3、检查防火墙设置,本文遇到的错误就是由于Win7自带的防火墙阻止了网站程序的端口,使得远程用户不能访问IIS。这里有两种方法解决。A、关闭防火墙。控制面板-Windows防火墙-打开或关闭Windows防火墙(不推荐) win7-防火墙 B、打开:控制面板-Windows防火墙-高级设置-入站规则,在入站规则窗口中找到”BranchCache内容检索(http-in)“选项并启用此规则。这
阅读全文
SQL Server游标使用快速上手
摘要:使用游标有四种基本的步骤:声明游标、打开游标、提取数据、关闭游标。 如下面SQL示例所示:-- =============================================-- Author: <搏击的小船>-- Create date: <2011-04-19>-- Description: <SQL SERVER 游标DEMO>-- =============================================--临时表CREATE TABLE ##TempTB(ID INT IDENTITY,ColA VARCHAR(50),
阅读全文
SQL Server游标使用快速上手
摘要:使用游标有四种基本的步骤:声明游标、打开游标、提取数据、关闭游标。 如下面SQL示例所示: -- ============================================= -- Author: ...
阅读全文
查询指定数据库的当前连接数和关闭指定数据库的所有连接
摘要:--数据库当前能接受的最大连接数 select @@MAX_CONNECTIONS --查询所有数据库当前的连接数 sp_who --查询指定数据库的当前连接数 SELECT * FROM [Master].[dbo].[SYSPROCESSES] WHE...
阅读全文
查询指定数据库的当前连接数和关闭指定数据库的所有连接
摘要:--数据库当前能接受的最大连接数select @@MAX_CONNECTIONS --查询所有数据库当前的连接数sp_who--查询指定数据库的当前连接数SELECT * FROM [Master].[dbo].[SYSPROCESSES] WHERE [DBID] IN (SELECT [DBID]FROM [Master].[dbo].[SYSDATABASES] WHERE NAME='fdaysmanygoods')--关闭指定数据库的所有连接use master declare @spid int,@str varchar(100),@dbid int,@dbname
阅读全文