SqlServer

SQL Server管理员专用连接的使用

原文:SQLServer管理员专用连接的使用作为一名DBA,经常会处理一些比较棘手的服务无响应问题,鉴于事态的严重性,多数DBA可能直接用“重启”大法,以便尽快的恢复生产环境的正常运转,但是多数情况下我们却无法究其原因,即使产生了dump文件,没有微软的支持,我们同样被蒙在鼓里,幸好微软给我们留了一条“后路”,供我们在SQL服务无法连接时,使用它连接并查看“病因”,那就是DAC,dedicatedadministratorconnection,管理员专用连

系统 2019-08-12 01:54:46 2629

SqlServer

减少SQL Server 死锁

Deadlockingoccurswhentwouserprocesseshavelocksonseparateobjectsandeachprocessistryingtoacquirealockontheobjectthattheotherprocesshas.Whenthishappens,SQLServeridentifiestheproblemandendsthedeadlockbyautomaticallychoosingoneprocessa

系统 2019-08-12 01:34:00 2629

SqlServer

SQL Server 2005 MD5函数

原文:SQLServer2005MD5函数在SQLServer2005下自带的函数HashBytes(),此函数是微软在SQLServer2005中提供的,可以用来计算一个字符串的MD5和SHA1值,使用方法如下:--获取123456的MD5加密串selecthashbytes('MD5','123456');--获取123456的SHA1加密串selecthashbytes('SHA1','123456');有了这个函数可以在SQLServer中为字符串

系统 2019-08-12 01:53:25 2628

SqlServer

删除sql server中重复的数据

原文:删除sqlserver中重复的数据withlist_numbersas(selectName,AuthorOrTime,Url,Price,EstimatePrice,Size,Category,ROW_NUMBER()over(orderbyName,AuthorOrTime,Url,Price,EstimatePrice,Size,Category)as'rownumber'fromArts)deletelist_numberswhererown

系统 2019-08-12 01:33:02 2628

SqlServer

监控 SQL Server 的运行

MicrosoftSQLServer2005提供了一些工具来监控数据库。方法之一是动态管理视图。动态管理视图(DMV)和动态管理函数(DMF)返回的服务器状态信息可用于监控服务器实例的运行状况、诊断问题和优化性能。常规服务器动态管理对象包括:dm_db_*:数据库和数据库对象dm_exec_*:执行用户代码和关联的连接dm_os_*:内存、锁定和时间安排dm_tran_*:事务和隔离dm_io_*:网络和磁盘的输入/输出此部分介绍为监控SQLServer运

系统 2019-08-12 01:32:46 2628

SqlServer

SQL Server数据库开发规则

一、了解你用的工具不要轻视这一点,这是我在这篇文章中讲述的最关键的一条。也许你也看到有很多的SQLServer程序员没有掌握全部的T-SQL命令和SQLServer提供的那些有用的工具。“什么?我要浪费一个月的时间来学习那些我永远也不会用到的SQL命令???”,你也许会这样说。对的,你不需要这样做。但是你应该用一个周末浏览所有的T-SQL命令。在这里,你的任务是了解,将来,当你设计一个查询时,你会记起来:“对了,这里有一个命令可以完全实现我需要的功能”,于

系统 2019-08-12 01:32:40 2628

SqlServer

SQL Server 无法修改表,超时时间已到

SQLServer一张表存储大量数据的时候,对表结构作修改就非常耗时了。其实耗时还好说,我们年轻,有的是时间……最怕的是它觉得太耗时就放弃给你修改了。这几天想给某个表加个字段,就遇到了这样的问题。点了保存后过一段时间,就会弹出个对话框说:无法修改表。超时时间已到,在操作完成之前超时时间已过或服务器未响应解决办法:在SQLServerManagementStudio里,通过菜单“工具-选项”打开选项对话框。在左侧寻找“设计器-表设计器和数据库设计器”,然后在

系统 2019-08-12 01:54:16 2627

SqlServer

SQL server 经验分享(四):查询中增加序号列

语句:selectrowid=identity(int,1,1),*into#tempfrom表名select*from#temp举例:原始数据:数据库为mydata,表名为:刊名语句:selectrowid=identity(int,1,1),*into#tempfrom[mydata].[dbo].[刊名]select*from#temp结果:SQLserver经验分享(四):查询中增加序号列

系统 2019-08-29 22:37:47 2625

SqlServer

Sql Server触发器的原理及应用技巧

触发器是一种特殊的存储过程,它不能被显式地调用,而是在往表中插入记录、更改记录或者删除记录时,当事件发生时,才被自动地激活。2、这样做带来的'功能':触发器可以用来对表实施复杂的完整性约束,保持数据的一致性,当触发器所保护的数据发生改变时,触发器会自动被激活,响应同时执行一定的操作(对其它相关表的操作),从而保证对数据的不完整性约束或不正确的修改。触发器可以查询其它表,同时也可以执行复杂的T-SQL语句。触发器和引发触发器执行的命令被当作一次事务处理,因此

系统 2019-08-12 01:52:14 2625

SqlServer

Sql Server 中一个非常强大的日期格式化函数

SelectCONVERT(varchar(100),GETDATE(),0):0516200610:57AMSelectCONVERT(varchar(100),GETDATE(),1):05/16/06SelectCONVERT(varchar(100),GETDATE(),2):06.05.16SelectCONVERT(varchar(100),GETDATE(),3):16/05/06SelectCONVERT(varchar(100),GETD

系统 2019-08-12 01:54:50 2620

SqlServer

T-SQL 创建表- 修改表默认字段数值 SQL SERVER

在一个SQLServer数据库中,可以创建多达两万亿个表输入一条CreateTable语句指定下列内容1.包含表的数据库2.表的所有者3.表名,在同一个数据库中和同一个所有者下,改表名必须与任何其他基表或视图不同4.指定1到1024个列5.主键约束(可选)6.1到250个Uniquer约束(可选)7.1到253个外键约束(可选)8.1个或者多个Check约束,限制插入表中的数据(可选)9.存储表的文件组(可选)/*创建表*/usedatabaseNameg

系统 2019-08-12 01:52:15 2619

SqlServer

SQLServer中char、varchar、nchar、nvarchar的

SQLSERVER中生成的语句中,字符串前加N。N前缀必须是大写字母。是Unicode编码的意思,一般来说,英文字符是一个字节组成,但是国际上的字太多了,因此就用两个字节来表示字符,满足国际化的需要.在字符串前面加上N代表存入数据库时以Unicode格式存储。N'string'表示string是个Unicode字符串Unicode字符串的格式与普通字符串相似,但它前面有一个N标识符(N代表SQL-92标准中的国际语言(NationalLanguage))。

系统 2019-08-12 01:54:39 2618

SqlServer

Perl 连接 SQL Server(ReShip)

准备工作:用到的perl扩展组件(modules)在上篇贴出.(win32::odbc模块)下载组件后按照Readme文件安装倒响应目录.配置好相应的odbc数据源.程序实现:使用useWin32::ODBC;语句包含应使用的模块是win32::odbc写出数据库连接字符串$DSN="DSN=MyDSN;UID=sa;PWD=password"然后就可以建立相应的连接$data=newWin32::ODBC($DSN)#new一个连接对象这样就建立了和数据

系统 2019-08-12 01:55:23 2617

SqlServer

SQL Server提高并发查询效率

同事写了个程序用创建多个线程使用ado同时对同个数据库进行相同的查询,涉及2张数据表的联查。当线程数非常多的情况下,读取数据的效率就会变得很慢,例如50个线程同时查询大概3000条数据,查询完成后通过游标全部读取到本地需要大概30秒。单个线程可能就一两秒。这是由于数据库锁导致的。同样的程序在我的机子上运行性能提高了1倍。主要原因由于我连接的sqlserver是企业版的,而同事那个连接的数据库是开发版的,企业版的sqlserver对并发访问做了一定的优化。但

系统 2019-08-12 01:51:51 2617

SqlServer

清空SQL Server数据库中所有表数据的方法

原文:清空SQLServer数据库中所有表数据的方法其实删除数据库中数据的方法并不复杂,为什么我还要多此一举呢,一是我这里介绍的是删除数据库的所有数据,因为数据之间可能形成相互约束关系,删除操作可能陷入死循环,二是这里使用了微软未正式公开的sp_MSForEachTable存储过程。也许很多读者朋友都经历过这样的事情:要在开发数据库基础上清理一个空库,但由于对数据库结构缺乏整体了解,在删除一个表的记录时,删除不了,因为可能有外键约束,一个常见的数据库结构是

系统 2019-08-12 01:33:59 2617