技术改变世界 阅读塑造人生! - shaogx.com

This string was altered by TechBlog\Plugins\Example.; This is an example to show the potential of an offcanvas layout pattern in Bootstrap. Try some responsive-range viewport sizes to see it in action.

SQL Server 2008入门系列之安装SQL Server 2008

SQL Server 是Microsoft公司的一个关系型数据库管理系统,SQL Server系类的版本有很多,我就不一一做介绍了,这里就以SQL Server 2008为例,讲解如何安装SQL Server 2008。1、安装前准备工作在安装SQL Server 2008之前,首先需要满足系统的软、硬件的最小需求。不要将SQL Server 2008安装在域控制器上。2、安装SQL Server 2008... 全文

数据库 SQL Server SQL Server 2008

SQL Server聚集地 揭开SQL PASS面纱(1)

每年,微软在全球多个地方都会举办各式各样的活动,从我们耳熟能详的各类新产品发布会,到TechEd、Build、WPC,再到Windows Phone、Windows 8、Windows Azure等不同产品的线下训练营,微软的活动深入到技术人群的各个角落。技术种类固然多,但是每位技术人员却都有自己所关注的领域,其中一份“领土”就是我们SQL Server。提及SQL Server,自然就要先说到SQL PASS组织。... 全文

SQL Server SQL PASS 微软MVP

SQL Server查询过程的内存实际消耗

或许在应用程序代码中找到的最常见的错误就是这样的查询请求:它不是使用准备好的查询或程序,而是使用非参数特设的查询从数据库中请求数据。... 全文

SQL Servers查询 SQL Server内存浪费 SQL Server

SQL Server 2008的管理能力

Microsoft SQL Server 提供了一个用于管理一个或多个SQL Server实例的基于政策的系统和用于性能监控、故障排除和调整的工具,使得管理员能够更有效的管理他们的数据库和SQL Server 实例……提高管理员生产力... 全文

SQL Server 2008 SQL Server 2008管理 SQL Server2008扩展

SQL Server SQL语句调优技巧(1)

在这部分里我们所有的例子都选择使用Microsoft SHOWPLAN_ALL输出,因为它更紧凑并且展示典型的信息。(Sybase的查询计划基本与此相同,可能包含其它一些信息)大部分的例子都是要么基于PUBS数据库,要么基于标准系统表的。我们在PUBS数据库中对用到的表进行了很大扩充,对很多表增加了好几万行。子查询优化... 全文

调优 技巧 SQL SQL Server

SQL Server 管理常用的SQL和T

1. 查看数据库的版本 select @@version 常见的几种SQL SERVER打补丁后的版本号: 8.00.194 Microsoft SQL Server 2000 8.00.384 Microsoft SQL Server 2000 SP1 8.00.532 Microsoft SQL Server 2000 SP2 8.00.760 Microsoft SQL Server 2000 SP3 8.00.818 Microsoft SQL Server 2000 SP3 w/ Cumulative Patch MS03-031 8.00.2039 Microsoft SQL Server 2000 SP4 2. 查看数据库所在机器操作系统参数 exec master..xp_msver 3. 查看数据库启动的参数 sp_configure 4. 查看数据库启动时间 select convert(varchar(30),login_time,120) from master..sysprocesses where spid=1 查看数据库服务器名和实例名 print 'Server Name...............: ' + convert(varchar(30),@@SERVERNAME) print 'Instance..................: ' + convert(varchar(30),@@SERVICENAME) 5. 查看所有数据库名称及大小 sp_helpdb 重命名数据库用的SQL sp_renamedb 'old_dbname', 'new_dbname' 6. 查看所有数据库用户登录信息 sp_helplogins 查看所有数据库用户所属的角色信息 sp_helpsrvrolemember 修复迁移服务器时孤立用户时,可以用的fix_orphan_user脚本或者LoneUser过程 更改某个数据对象的用户属主 sp_changeobjectowner [@objectname =] 'object', [@newowner =] 'owner' 注意: 更改对象名的任一部分都可能破坏脚本和存储过程。 把一台服务器上的数据库用户登录信息备份出来可以用add_login_to_aserver脚本 查看某数据库下,对象级用户权限 sp_helprotect 7. 查看链接服务器 sp_helplinkedsrvlogin 查看远端数据库用户登录信息 sp_helpremotelogin 8.查看某数据库下某个数据对象的大小 sp_spaceused @objname 还可以用sp_toptables过程看最大的N(默认为50)个表,查看某数据库下某个数据对象的索引信息: sp_helpindex @objname 还可以用SP_NChelpindex过程查看更详细的索引情况 SP_NChelpindex @objname clustered索引是把记录按物理顺序排列的,索引占的空间比较少。 对键值DML操作十分频繁的表我建议用非clustered索引和约束,fillfactor参数都用默认值。 查看某数据库下某个数据对象的的约束信息 sp_helpconstraint @objname 9.查看数据库里所有的存储过程和函数 use @database_name sp_stored_procedures 查看存储过程和函数的源代码 sp_helptext '@procedure_name' 查看包含某个字符串@str的数据对象名称 select distinct object_name(id) from syscomments where text like '%@str%' 创建加密的存储过程或函数在AS前面加WITH ENCRYPTION参数,解密加密过的存储过程和函数可以用sp_decrypt过程。 10.查看数据库里用户和进程的信息 sp_who 查看SQL Server数据库里的活动用户和进程的信息 sp_who 'active' 查看SQL Server数据库里的锁的情况 sp_lock 进程号1--50是SQL Server系统内部用的,进程号大于50的才是用户的连接进程。spid是进程编号,dbid是数据库编号,objid是数据对象编号。查看进程正在执行的SQL语句: dbcc inputbuffer () 推荐大家用经过改进后的sp_who3过程可以直接看到进程运行的SQL语句。 sp_who3 检查死锁用sp_who_lock过程 sp_who_lock 11.查看和收缩数据库日志文件的方法 查看所有数据库日志文件大小 dbcc sqlperf(logspace) 如果某些日志文件较大,收缩简单恢复模式数据库日志,收缩后@database_name_log的大小单位为M backup log @database_name with no_log dbcc shrinkfile (@database_name_log, 5) 12.分析SQL Server SQL 语句的方法: set statistics time {on | off} set statistics io {on | off} 图形方式显示查询执行计划 ,在查询分析器->查询->显示估计的评估计划(D)-Ctrl-L 或者点击工具栏里的图形,文本方式显示查询执行计划。 set showplan_all {on | off} set showplan_text { on | off } set statistics profile { on | off } 13.出现不一致错误时,NT事件查看器里出3624号错误,修复数据库的方法 先注释掉应用程序里引用的出现不一致性错误的表,然后在备份或其它机器上先恢复然后做修复操作 alter database [@error_database_name] set single_user 修复出现不一致错误的表 dbcc checktable('@error_table_name',repair_allow_data_loss) 或者可惜选择修复出现不一致错误的小型数据库名: dbcc checkdb('@error_database_name',repair_allow_data_loss) alter database [@error_database_name] set multi_user CHECKDB 有3个参数: repair_allow_data_loss 包括对行和页进行分配和取消分配以改正分配错误、结构行或页的错误, 以及删除已损坏的文本对象,这些修复可能会导致一些数据丢失。修复操作可以在用户事务下完成以允许用户回滚所做的更改。如果回滚修复,则数据库仍会含有错误,应该从备份进行恢复。如果由于所提供修复等级的缘故遗漏某个错误的修复,则将遗漏任何取决于该修复的修复。 修复完成后,请备份数据库。 repair_fast 进行小的、不耗时的修复操作,如修复非聚集索引中的附加键。这些修复可以很快完成,并且不会有丢失数据的危险。 repair_rebuild 执行由 repair_fast 完成的所有修复,包括需要较长时间的修复(如重建索引)。 执行这些修复时不会有丢失数据的危险 var kevent = 'onabort|onblur|onchange|onclick|ondblclick|onerror|onfocus|onkeydown|onkeypress|onkeyup|onload|onmousedown|onmousemove|onmouseout|onmouseover|onmouseup|onreset|onresize|onselect|onsubmit|onunload'; var aevent = kevent.split('|'); jQuery('.showContent img').each(function(){ var nimg = this; jQuery.each(aevent, function(i, n){ if (n!='onload') { jQuery(nimg).attr(n, ''); } else { if (jQuery(nimg).attr(n) != 'if(this.width>650) this.width=650;') { jQuery(nimg).attr(n, ''); } } }); }); var encodetitle = encodeURI('一篇很棒的博文分享给大家:《SQL Server 管理常用的SQL和T-SQL》'); function show51share(){ window.open('http://t.51cto.com/index.php?m=share&url=http://chenjie.blog.51cto.com/24029/7194&type=l&count=&relateUid=&appkey=3843950324&title=' + encodetitle); } window._bd_share_config={"common":{"bdSnsKey":{"tsina":"2065779340"},"bdText":"","bdMini":"2","bdMiniList":false,"bdPic":"http://blog.51cto.com/img/blog_down0731.jpg","bdStyle":"1","bdSize":"32"},"share":{}};with(document)0[(getElementsByTagName('head')[0]||body).appendChild(createElement('script')).src='http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion='+~(-new Date()/36e5)]; 0人 了这篇文章 类别:数据库技术┆阅读(0)┆评论(0) ┆ 返回博主首页返回博客首页 上一篇 修理及维护数据库文件(DBCC) 下一篇 sql server的BCP导入导出相关文章T-SQL数据库约束学习笔记备份数据库的T-SQL语句T-SQL查询语言基础(表)T-SQL编程学习笔记SQL Server 数据库管理常用的SQL和T-SQL语句T-SQL中default值的使用T-SQL语句之创建、修改、删除数据库[推建]MSSQL2000中OSQL工具的使用[执行T-sql..使你的 SQL 语句完全优化防范SQL注入的几种方法 2文章评论   [1楼]      [匿名]database 回复2008-05-30 19:02:57不错 ! 有发展 [2楼]      [匿名]database 回复2008-05-30 19:03:00不错 ! 有发展  发表评论            计算机网络管理员(国家职业资格一级高级技师)认证培训 a.mred:link{ color:#ff0000; text-decoration:underline;} a.mred:visited{color:#ff0000;} a.mred:hover{color:#ff0000;} a.mred:active{color:#ff0000;} 昵  称: 登录  快速注册 验证码: 点击图片可刷新验证码请点击后输入验证码博客过2级,无需填写验证码内  容: 同时赞一个... 全文

SQL T-sql 数据库 休闲 职场

SQL Server 与 SQL Express 的异同

    SQL Server Express 2005(以下简称 SQLExpress) 是由微软公司开发的 SQL Server 2005(以下简称 SQL2005)的缩减版,这个版本是免费的,它继承了 SQL Server 2005 的多数功能与特性,如:安全性设置、自定义函数和过程、Transact-SQL、SQL、CLR 等,还免费提供了和它配套的管理软件 SQL Server Management Studio Express 。     SQLExpress 有几个主要的限制:     1. 仅允许本地连接。     2. 数据库文件的最大尺寸为4GB,此限制只对数据文件(后缀名为 mdf),日志文件(后缀名为 ldf)不受此限。     3. 只使用一个CPU来运算,不能充分利用多CPU服务器的性能。     4. 可使用的记忆体量最高只有1GB。     5. 没有 SQL Agent,若要做排程服务必须自己编写。     因此它是 SQL Server 产品系列中面对低端的产品,是面对桌面型应用,或者小型的内部网络应用的。     所谓面对桌面型应用的软件,是指单用户在一台电脑就能完成操作的软件,强调操作指令和数据处理一体化,不考虑多用户共享权限和并发处理问题。与此相对的是 客户/服务器(或浏览器/服务器)模式软件,SQL2005 就是客户/服务器应用模式中的服务器端软件,SQL2005 只能管理附加(Attach)到服务器实例内的数据库文件(mdf文件),而此数据库文件也唯一归属于该SQL2005实例,不能被其它程序调用(当然, 也不能被客户程序直接调用),必须由SQL2005实例执行分离(Dettach)该数据库文件后,才能由其它程序调用。     为了适应桌面应用,SQLExpress 比 SQL2005 新增了一项标志性的功能:不需将外置的数据库附加到 SQLExpress 服务器中,就能够直接调用,即在连接数据库语句中增加了 AttachDBFilename 选项。有此功能后,我们用 Microsoft Visual Studio 设计桌面型应用程序时,使用Access数据库或SQLExpress数据库的方式几乎相同,由于SQLExpress数据库的功能更多、扩展性更强,而 且是嵌入到 Visual Studio 软件中的默认数据库,相关帮助文档更多,在编程中使用SQLExpress数据库甚至比Access更方便。唯一缺点是包含SQLExpress的软件尺 寸较大,与使用Access数据库的软件相比,尺寸约大40兆,但现在的电脑硬盘容量有上百G,几十兆已不是问题。     从桌面数据库的发展过程来看,Foxpro 曾经很受软件开发者喜爱,后来微软公司开发的 VB、C# 等编程语言主推Access做桌面数据库,使得 Foxpro 逐渐衰落。当今 Internet 网络快速普及,纯桌面数据管理软件已经落伍,取而代之的是带有网络功能的客户/服务器(C/S)软件,或浏览器/服务器(B/S)软件,与之对应编程语言 就是 Visual Studio 。使用 Visual Studio + SQLExpress 编写的面对桌面的数据管理软件,能够很容易升迁到客户/服务器应用(甚至就是二者兼备),有此推断,SQLExpress 也将逐渐替代 Access 。     目前,网络服务器和虚拟主机服务商提供的数据库产品主要就是 SQL Server 2000-2008 和 Access ,几乎没有 SQLExpress 。这是因为 SQLExpress 只能使用1GB内存,和一个CPU,在多用户共享应用时,随着用户增多,效能下降的很快,这个缺点与Access类似(也可能比Access强点有限)。 由于SQLExpress和SQL2005管理的是同一种数据库文件,如果软件编程得当,就应该二者兼备。因此,在有SQL2005的服务器上,就没有必 要再应用SQLExpress了。作为特例,在小型企业内部网中,由于SQL2005的购置费较高,也可使用SQLExpress作为客户端/服务器系统 中的服务器端软件。     如果要编写兼容SQLExpress和SQL2005的软件,在编程时只需将连接数据库字符串抽离出来,用自定义函数来替代(该函数的返回值等于“连接数据库字符串”),就可以了。... 全文

sql server sql express 数据库 服务器 access

无法使用SQL login去登陆SQL Server

出自:http://blogs.msdn.com/b/apgcdsd/archive/2011/02/01/sql-login-sql-server-password-did-not-match.aspx问题描述: 在某一台机器上的management studio,始终无法使用SQL login去登陆SQL Server。但是如果在其他的机器上,使用同样的SQL login是可以登陆SQL Server的。... 全文

sql server login sql microsoft 加密 user

如何将SQL Server 2008的数据降级到SQL Server 2005

在日常的工作需要中,如果我们想将SQL Server 2008的数据降级到SQL Server 2005,该如果操作呢?本文我们介绍这一方法。方法如下:首先要以管理员得身份运行managent studio对象资源管理器(没有的话按F8) 连接到你的2008实例右键你要降级的数据库任务生成脚本在随后出现的脚本中, 单击"下一步", 直到"选择数据库"步骤, 确定数据库是你要降级的数据库, 并勾选"为所选数据库中的所有对象生成脚本"... 全文

SQL Server 2008 SQL Server 2005 数据库

Oracle SQL Developer 2.1版发布 新增PL/SQL单元测试

Oracle SQL Developer是一款数据库开发和迁移工具。2009年12月28日甲骨文发布了最新版本的Oracle SQL Developer 2.1版。Oracle SQL Developer 2.1版是一个免费且全面的工具,该新版软件的很多功能都得到了增强,此外还引入了两种关键的新功能――PL/SQL单元测试(Unit Testing)和数据建模器浏览器(Data Modeler Viewer)。Oracle SQL Developer 2.1版的两项关键新功能和所有增强功能都是应Oracle SQL Developer社区的要求和建议而开发的。... 全文

Oracle SQL Developer PL SQL单元测试

在IIS中为SQL Server 2008配置报表服务

不知道是不是SQL Server 2008的Bug,我在安装了SQL2008后(选择了安装报表服务的),但是在IIS中根本没有报表服务的虚拟目录。只是这么一个问题,其他BI设计器、报表服务等都还算正常。要正常使用报表服务则需要手动添加报表服务的虚拟目录,具体操作如下:(1)运行inetmgr打开IIS管理器。... 全文

SQL Server 2008 SQL 2008 IIS中SQL Server 2008配置

sql server 2008如何导入mdf,ldf文件

sql server 2008如何导入mdf,ldf文件   网上找了很多解决sql server导入其他电脑拷过来的mdf文件,多数是不全,遇到的解决方法不一样等问题,下边是找到的解决问题的最全面方法! 将mdf, ldf文件导入到sql server 2008数据库当中,下面提供两种办法:第一种: (1)选择右击数据库 (2)然后点击“附加”。出现下面的界面。然后选择添加,添加上你要添加的mdf文件即可。第二种方法是:新建查询,然后输入下列语句,  EXEC sp_attach_db @dbname = 'yourdatabasename', @filename1 = 'x:\路径\MSSQL\Data\pubs.mdf', @filename2 = 'x:\路径\MSSQL\Data.Ldf 第二种方法可能提示SQL语言 附近有问题(真不知道什么问题啊??) 上边两种都可能可能会出现这种错误:(如果上述两种过程成功了,那祝贺了!)           Sqlserver2008附加数据库时出错提示操作系统错误5(拒绝访问)错误5120的解决办法            Sql Server2008附加数据库文件时弹出错误信息:如下图: 可能大家都遇到过这种问题,解决方案如下: 方案一:切换登录方式               出现这种情况是由于用“混合验证方式”(SQL Server身份验证)登录数据库造成的,只要将登录方式改为 “windows身份验证方式”             登录即可解决该问题,附加成功后再换用“混合验证模式”登陆就没问题了。            方案二:修改服务             选择 所有程序-SQL Server 2005-配置工具-选择"SQL Server Configuration Manager"或者“SQL Server 配置管理器”,             打开“SQL Server Configuration Manager”配置界面,在左侧选择"SQL Server 2008 服务",在右侧右击打开“SQL Server (SQLEXPRESS)” 的属性,在内置账户处将网络服务--”Network Service”改为本地系统--"Local System",               点击“重新启动”后再附加数据库就OK了。                            (附加数据库成功后如果担心改变设置后影响以后使用可以将内置账户处的“Local System”再改回 “Network Service”,数据库仍可打开。)   主要配置过程如下图: 1.打开“SQL Server Configuration Manager”配置界面: 2.选择Sql Server(MSSQLSERVER),选项,并右击: 5.配置成功: 这样配置后附加数据库就不会出错了。   如果上述方法仍出现问题! 则使用下边的方法解决: (1)可能mdf文件属性为只读的属性,则只需修改即可 另外还需在mdf文件属性-->安全 (把所有用户 即 我下边的三个用户 选择“编辑”,把颜色笔全出来的地方 完全控制那个打勾勾) 本人就是使用了 修改SQL Server Configuration Manager里边的SQL Server (SQLEXPRESS)” 的属性,然后更换本地用户   修改mdf文件的只读属性和“完全控制”才成功的,最后祝你们操作成功! (注:部分内容参考http://www.2cto.com/database/201308/235344.html)... 全文

sql sql server 2005 sql server 2008 sqlserver mdf

Microsoft SQL Server管理常用的SQL和T

1.     查看数据库的版本       select @@version   常见的几种SQL SERVER打补丁后的版本号:  8.00.194  Microsoft SQL Server 2000  8.00.384  Microsoft SQL Server 2000 SP1  8.00.532  Microsoft SQL Server 2000 SP2  8.00.760  Microsoft SQL Server 2000 SP3  8.00.818  Microsoft SQL Server 2000 SP3 w/ Cumulative Patch MS03-031  8.00.2039  Microsoft SQL Server 2000 SP4         Microsoft SQL Server 2005 9.00.1399.06 (Intel X86)  9.00.2047.00 (Intel X86)(Build 3790: Service Pack 1)        2.     查看数据库所在机器操作系统参数 exec master..xp_msver        3. 查看数据库启动的参数sp_configure         4. 查看SQLSERVER2000数据库启动时间            select convert(varchar(30),login_time,120) from master..sysprocesses where spid=1            查看SQLSERVER2005数据库启动时间            select convert(varchar(30),start_time,120) from master.sys.dm_exec_requests where session_id=1            查看数据库服务器名和实例名     print 'Server Name...............: ' + convert(varchar(30),@@SERVERNAME)            print 'Instance..................: ' + convert(varchar(30),@@SERVICENAME)      5. 查看所有数据库名称及大小 sp_helpdb            重命名数据库用的SQL     sp_renamedb 'old_dbname', 'new_dbname'        6. 查看所有数据库用户登录信息   sp_helplogins     查看所有数据库用户所属的角色信息    sp_helpsrvrolemember            修复迁移服务器时孤立用户时,可以用的LoneUser脚本或者fix_all_orphan_user过程             更改某个数据对象的用户属主      sp_changeobjectowner [@objname=] 'object', [@newowner=] 'owner'             注意: 更改对象名的任一部分都可能破坏脚本和存储过程。             把一台服务器上的数据库用户登录信息备份出来可以用add_login_to_aserver脚本             查看某数据库下,对象级用户权限sp_helprotect        7. 查看链接服务器               sp_helplinkedsrvlogin            查看远端数据库用户登录信息           sp_helpremotelogin        8.查看某数据库下某个数据对象的大小    sp_spaceused @objname         还可以用sp_toptables过程看最大的N(默认为50)个表         查看某数据库下某个数据对象的索引信息     sp_helpindex @objname            还可以用SP_NChelpindex过程查看更详细的索引情况     SP_NChelpindex @objname            clustered索引是把记录按物理顺序排列的,索引占的空间比较少。     对键值DML操作十分频繁的表我建议用非clustered索引和约束,fillfactor参数都用默认值。         查看某数据库下某个数据对象的的约束信息     sp_helpconstraint @objname      9.查看数据库里所有的存储过程和函数    use @database_name    sp_stored_procedures     查看存储过程和函数的源代码     sp_helptext '@procedure_name'            查看包含某个字符串@str的数据对象名称     select distinct object_name(id) from syscomments where text like '%@str%'          创建加密的存储过程或函数在AS前面加WITH ENCRYPTION参数         解密加密过的存储过程和函数可以用sp_decrypt过程      10.查看数据库里用户和进程的信息     sp_who    查看SQL Server数据库里的活动用户和进程的信息     sp_who 'active'      查看SQL Server数据库里的锁的情况      sp_lock            进程号1--50是SQL Server系统内部用的,进程号大于50的才是用户的连接进程.     spid是进程编号,dbid是数据库编号,objid是数据对象编号     查看进程正在执行的SQL语句     dbcc inputbuffer ()                      推荐大家用经过改进后的sp_who3过程可以直接看到进程运行的SQL语句     sp_who3             检查死锁用sp_who_lock过程       sp_who_lock                         11.查看和收缩数据库日志文件的方法           查看所有数据库日志文件大小              dbcc sqlperf(logspace)     如果某些日志文件较大,收缩简单恢复模式数据库日志,收缩后@database_name_log的大小单位为M      backup log @database_name with no_log      dbcc shrinkfile (@database_name_log, 5) 12.分析SQL Server SQL 语句的方法:     set statistics time {on | off}     set statistics io {on | off}     图形方式显示查询执行计划     在查询分析器->查询->显示估计的评估计划(D)-Ctrl-L或者点击工具栏里的图形         文本方式显示查询执行计划      set showplan_all {on | off}      set showplan_text { on | off }      set statistics profile { on | off }        13.出现不一致错误时,NT事件查看器里出3624号错误,修复数据库的方法     先注释掉应用程序里引用的出现不一致性错误的表,然后在备份或其它机器上先恢复然后做修复操作      alter database [@error_database_name] set single_user           修复出现不一致错误的表       dbcc checktable('@error_table_name',repair_allow_data_loss)           或者可惜选择修复出现不一致错误的小型数据库名      dbcc checkdb('@error_database_name',repair_allow_data_loss)      alter database [@error_database_name] set multi_user      CHECKDB有3个参数:      repair_allow_data_loss 包括对行和页进行分配和取消分配以改正分配错误、结构行或页的错误,      以及删除已损坏的文本对象,这些修复可能会导致一些数据丢失。      修复操作可以在用户事务下完成以允许用户回滚所做的更改。      如果回滚修复,则数据库仍会含有错误,应该从备份进行恢复。      如果由于所提供修复等级的缘故遗漏某个错误的修复,则将遗漏任何取决于该修复的修复。      修复完成后,请备份数据库。      repair_fast 进行小的、不耗时的修复操作,如修复非聚集索引中的附加键。      这些修复可以很快完成,并且不会有丢失数据的危险。      repair_rebuild 执行由 repair_fast 完成的所有修复,包括需要较长时间的修复(如重建索引)。      执行这些修复时不会有丢失数据的危险。 14. 行列倒置 Create Procedure colsToRows        @tblName      varchar(50),   --name of table       @Cond           varchar(6000) --limiting condition for record selection                            --any valid where clause without the where ie id=75 or id between 1 and 5                            --I would recommend that you not return more than 100 rows AS declare @colName varchar(50), @colId smallintdeclare    @sql varchar(1000) --Begin selectionselect @colName='',@colId=1  create table #tmp (cName varchar(50))--add value columns for number of records returned Select @sql = 'Declare @cols smallint, @sql varchar(7000);Select @cols=count(*) From ' + @tblNameIf Len(@cond)>0       select @sql = @sql + ' Where ' + @cond select @sql = @sql + ';       while @cols > 0       begin              select @sql = ''alter table #tmp add [Val'' + cast(@cols as varchar) + ''] varchar(50)''              Exec(@sql)              select @cols = @cols - 1       End' exec( @sql) set nocount onwhile @colname is not nullbegin       select @colname = col_name(object_id(@tblName),@colID)       Select @colID = @colid + 1       select @sql = 'declare @retVal varchar(6000);set @retVal = '''';              update ' + @tblName + ' set @retVal=@retVal + '','' + substring(cast (' + @colname + ' as varchar),1,50)'       if len(@cond) > 0               select @sql = @sql + ' Where ' + @cond       select @sql = @sql + ';              select @retval = replace(substring(@retVal,2,len(@retVal)),'','','''''','''''')              Select @retVal = '''''''' + @retVal + ''''''''              declare @sql varchar(7000);              select @sql = ''Insert Into #tmp Values('''''+ @colName + ''''','' + @retVal + '')''       if len(@sql) > 0 Exec (@sql)'       execute (@sql)end Select * from #tmpdrop table #tmpGO /*UsagecolsToRows 'SomeTable', 'Some Condition'*/ 附录:SQL Server的Datatime类型为什么不能早于1753 年? Good question. There are historical reasons for this limitation. In what we sometimes refer to as the "Western world," there have been two calendars in modern times: the Julian and Gregorian calendars. These calendars were a number of days apart (depending on which century you looked at), so when a culture that used the Julian calendar moved to the Gregorian calendar, it removed from 10 to 13 days. Great Britain made this shift in 1752. (So, in that year, September 2, 1752 was followed by September 14, 1752.) An educated guess as to why Sybase SQL Server—the predecessor of Microsoft SQL Server—selected 1753 as the earliest date is that if you were to store a date earlier than 1753, you would also have to know which country was using which calendar and also handle this 10- to 13-day jump. So Sybase decided to not allow dates earlier than 1753. Note, too, that other countries made the shift later than 1752. Turkey, for instance, did it in 1927. Being Swedish, I find it amusing that Sweden had the weirdest implementation. Sweden originally planned to skip every February 29, leap day, over a period of 40 years (from 1700 to 1740) so that Sweden would be in sync with the Gregorian calendar after 1740 (but meanwhile not in sync with anyone else). However, in 1704 and 1708 the leap day wasn't skipped for some reason, so in 1712 (which was a leap year), Sweden inserted yet one more extra day (imagine being born in Feb 30!) and then made the shift over a day, in 1753, in a similar manner to everyone else.  资源:1.      SQL Server 管理常用的SQL和T-SQL2.      SQLServerCentral.com3.      Change Result Set Columns to Rows4.      Compare the data of 2 Tables... 全文

sql server microsoft sql 数据库 database calendar

SQL Server的执行计划及SQL查询优化实例分析与总结

SQL Server的执行计划SQL查询优化是本文我们主要要介绍的内容,谈到优化就必然要涉及索引,就像要讲锁必然要说事务一样,所以你需要了解一下索引,今天来探索下SQL Server的执行计划,来让大家知道如何查看SQL Server的优化机制,以此来优化SQL查询。... 全文

SQL Server的执行计划 SQL查询优化

有效使用SQL Server的自动管理功能

如要让数据库进行自动管理,则管理员需要预先定义一些可预测的管理任务以及这些任务发送的条件。当满足这些指定的条件,则数据库会自动运行管理员指定的操作。使用自动管理来处理日常事务,则让管理员可以抽出时间去关注其他的事情,如数据库优化等等更加具有价值的作业。... 全文

SQL Server自动管理 SQL Server自动任务 SQL Server数据库

微软SQL Server 2008 Express开始下载

近期,微软公司开始在其下载中心提供SQL Server 2008 Express和SQL Server 2008 Express相关工具的下载,根据介绍,SQL Server 2008 Express做为软件基础设施的一部分,是为ISV开发及分发小型桌面应用和服务端程序而设计的。下载中心提供总共3个版本的下载,包括32位和64位平台的版本。您可以在此链接下载:... 全文

SQL Server 2008 Express 下载 微软 SQL Server 2008 SQL Server

SQL/PLUS学习笔记之SQL的自动提交功能

上次我们介绍了:SQL/PLUS学习笔记之SQL Buffer,本次我们主要要介绍的内容是SQL/PLUS学习笔记之SQL的自动提交功能,接下来就让我们一起来了解一下这部分内容吧。SQL的自动提交功能SQL的自动提交功能默认情况下是关闭的,这样更加合理,以免误操作时可以rollback回滚;通过设置autocommit参数可以打开SQL的自动提交功能:例如:... 全文

SQL PLUS学习笔记 SQL的自动提交功能

微软宣布SQL Server 2008已下载45万次

微软宣布,刚刚发布半个月的SQL Server 2008已经被用户下载了45多万次微软称,SQL Server 2008是目前唯一一个拥有广泛综合的数据管理和高级商务智能功能的大型数据库软件,带来了支持基于策略的管理、审核、大规模数据仓库、空间数据、高级报告与分析服务等大量新特性,并提供有企业版、标准版、工作组版、网络版、开发者版、免费精简版等不同版本,可满足各类用户的需求。... 全文

SQL Server 2008 SQL 2008下载 SQL Server 2008数据库

如何在C#中得到SQL自增字段的值(SQL语句)

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data.SqlClient;namespace ADO.NET详解 {     class Program     {         static void Main(string[] args)         {             using (SqlConnection conn = new SqlConnection(@"Data Source=.;Database=Database1;user ID=sa;pwd=888888"))//在Sqlconnection,Sqlcommand,SqlDataReader等使用using,可以             //释放掉所占用的资源,相当于Disposed()方法.             {                 conn.Open();                 using (SqlCommand cmd = conn.CreateCommand())                 {                     cmd.CommandText = ("insert into T_Users(UserName,Password) OUTPUT inserted.Id VALUES('mytest','888888')");                     //得到SQL自增字段的值                     int id = Convert.ToInt32(cmd.ExecuteScalar());                     Console.WriteLine("新插入的主键:{0}",id);... 全文

C# SQL自增字段 SQL语句

3 4 5 6 7 8 9 10 11 12