﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>博客园-深蓝居</title><link>http://www.cnblogs.com/studyzy/</link><description>关注MS的VS2008和SQL Server 2008</description><language>zh-cn</language><lastBuildDate>Thu, 21 Aug 2008 12:08:43 GMT</lastBuildDate><pubDate>Thu, 21 Aug 2008 12:08:43 GMT</pubDate><ttl>60</ttl><item><title>在IIS中为SQL Server 2008配置报表服务</title><link>http://www.cnblogs.com/studyzy/archive/2008/08/13/1267024.html</link><dc:creator>深蓝</dc:creator><author>深蓝</author><pubDate>Wed, 13 Aug 2008 08:02:00 GMT</pubDate><guid>http://www.cnblogs.com/studyzy/archive/2008/08/13/1267024.html</guid><wfw:comment>http://www.cnblogs.com/studyzy/comments/1267024.html</wfw:comment><comments>http://www.cnblogs.com/studyzy/archive/2008/08/13/1267024.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.cnblogs.com/studyzy/comments/commentRss/1267024.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/studyzy/services/trackbacks/1267024.html</trackback:ping><description><![CDATA[<p>不知道是不是SQL Server 2008的Bug，我在安装了SQL2008后（选择了安装报表服务的），但是在IIS中根本没有报表服务的虚拟目录。只是这么一个问题，其他BI设计器、报表服务等都还算正常。</p>
<p>要正常使用报表服务则需要手动添加报表服务的虚拟目录，具体操作如下：</p>
<p>（1）运行inetmgr打开IIS管理器。</p>
<p>（2）新建应用程序池Report，使用默认配置即可，该应用程序池用于报表服务专用。</p>
<p>（3）在默认网站中新建虚拟目录Reports，本地路径是C:\Program Files\Microsoft SQL Server\MSRS10.MSSQLSERVER\Reporting Services\ReportManager，当然如果安装到其他盘，那就要修改到指定的路径。</p>
<p>（4）修改Reports的属性，将应用程序池修改为前面创建的Report，如图：</p>
<p><a href="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/IISSQLServer2008_E111/image_2.png"><img style="border: 0px none ;" alt="image" src="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/IISSQLServer2008_E111/image_thumb.png" border="0" width="476" height="440" /></a> </p>
<p>（5）确认当前运行的.net 版本是2.0。</p>
<p><a href="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/IISSQLServer2008_E111/image_4.png"><img style="border: 0px none ;" alt="image" src="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/IISSQLServer2008_E111/image_thumb_1.png" border="0" width="476" height="440" /></a> </p>
<p>（6）确认报表服务已经运行了，然后访问<a title="http://localhost/Reports" href="http://localhost/Reports/Home.aspx">http://localhost/Reports/Home.aspx</a> 即可看到报表服务的管理界面：</p>
<p><a href="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/IISSQLServer2008_E111/image_6.png"><img style="border: 0px none ;" alt="image" src="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/IISSQLServer2008_E111/image_thumb_2.png" border="0" width="564" height="330" /></a> </p>
<p>（7）新建虚拟目录ReportServer，对应的本地路径是：C:\Program Files\Microsoft SQL Server\MSRS10.MSSQLSERVER\Reporting Services\ReportServer，然后修改应用程序池和.net版本。通过<a title="http://localhost/ReportServer/" href="http://localhost/ReportServer/">http://localhost/ReportServer/</a> 便可访问报表展示页面。</p><img src ="http://www.cnblogs.com/studyzy/aggbug/1267024.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/41822/" target="_blank">[新闻]第一财经周刊:当前互联网世界正处无秩序时代</a>]]></description></item><item><title>SQL Server 2008正式发布了，示例数据库安装</title><link>http://www.cnblogs.com/studyzy/archive/2008/08/09/1264219.html</link><dc:creator>深蓝</dc:creator><author>深蓝</author><pubDate>Sat, 09 Aug 2008 06:37:00 GMT</pubDate><guid>http://www.cnblogs.com/studyzy/archive/2008/08/09/1264219.html</guid><wfw:comment>http://www.cnblogs.com/studyzy/comments/1264219.html</wfw:comment><comments>http://www.cnblogs.com/studyzy/archive/2008/08/09/1264219.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.cnblogs.com/studyzy/comments/commentRss/1264219.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/studyzy/services/trackbacks/1264219.html</trackback:ping><description><![CDATA[<p>等了好久，SQL Server 2008终于正式发布了，官方网站提供了SQL2008的下载试用，不过有一点不爽的就是他居然把X86，X64和IA64三种处理器的版本放在了同一个ISO中，我使用的是X86的操作系统（想必大多数用户也是这样吧），但是我却要把这个支持X64和IA64的ISO下载下来，本来X86只有1.5G左右，现在却要下载3.5G的一个ISO。郁闷啊，我可怜的硬盘空间，又有2G被浪费了。</p>
<p>花了2天的时间终于把这个3.5G的大家伙下载下来，接下来就是安装到虚拟机中了。SQL2008要求系统必须是.net Framework 3.5 SP1版本，不是的话他会帮你升级成这个版本的，要求真是高，都3.5SP1了！安装过程还是简单，装了.net3.5SP1以后再装了个系统补丁，然后重启，然后正式进入安装向导，在功能选择界面可以浏览到SQL2008中的功能模块。与SQL2005不同之处是有个&#8220;Microsoft Sync Framework&#8221;，但是却少了示例数据库的安装。</p>
<p><a href="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/SQLServer2008_BE4B/clip_image002_2.jpg"><img style="border: 0px none ;" alt="clip_image002" src="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/SQLServer2008_BE4B/clip_image002_thumb.jpg" width="507" border="0" height="382" /></a></p>
<p>边看奥运会开幕式边装SQL2008，感觉时间过得很快，几下就装完了。进入SSMS，果然没有示例数据库啊。这回微软怎么一改当年的惯例，不提供示例了啊？难道是因为乔布斯和盖茨的风格不同？不管那么多，找找官方有下载没有。</p>
<p>SQL2008的示例数据库仍然是AdventureWorks的数据，和SQL2005是大部分是相同的，不过加了SQL2008的新特性，为了区分，所以数据库名字叫做AdventureWorks2008了。在</p>
<p><a title="http://www.codeplex.com/MSFTDBProdSamples/Release/ProjectReleases.aspx?ReleaseId=16040" href="http://www.codeplex.com/MSFTDBProdSamples/Release/ProjectReleases.aspx?ReleaseId=16040">http://www.codeplex.com/MSFTDBProdSamples/Release/ProjectReleases.aspx?ReleaseId=16040</a> 可以下载。有msi的安装版本也有zip解压后直接还原的版本，都一样的内容。不过我喜欢用bak文件还原的方式，谁知道他安装文件给我做了什么操作啊，不放心，还是自己手动操作的好。下载了3个示例数据库：</p>
<ul>
    <li>SQL2008.AdventureWorks_OLTP_DB_v2008.zip</li>
    <li>SQL2008.AdventureWorks_DW_BI_v2008.zip</li>
    <li>SQL2008.AdventureWorks_LT_DB_v2008.zip</li>
</ul>
<p>AdventureWorks2008中使用了SQL2008的新特性FILESTREAM，所以必须要启用该特性才能够还原数据库成功。具体启动FILESTREAM的操作如下：</p>
<p>（1）在SSMS中，打开数据库实例的属性窗口，在高级选项卡中将&#8220;文件流访问级别&#8221;设置为已启用完全访问或者已启用T-SQL访问。然后单击&#8220;确定&#8221;按钮。</p>
<p><a href="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/SQLServer2008_BE4B/image_4.png"><img style="border: 0px none ;" alt="image" src="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/SQLServer2008_BE4B/image_thumb_1.png" width="644" border="0" height="427" /></a> </p>
<p>（2）在配置管理器中将SQL Server服务的FILESTREAM打开，如图：</p>
<p><a href="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/SQLServer2008_BE4B/image_2.png"><img style="border: 0px none ;" alt="image" src="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/SQLServer2008_BE4B/image_thumb.png" width="644" border="0" height="352" /></a> </p>
<p>（3）重启SQL Server服务，然后再还原AdventureWorks2008数据库即可。</p>
<p>另外两个示例数据库也接着还原即可。</p>
<p>AdventureWorks2008与SQL2005的AdventureWorks数据库有以下特性上的不同：</p>
<p>1.为了使用Entity Framework，所以添加了<strong>Person.BusinessEntityAddress</strong>这样的表。</p>
<p>2.在表HumanResources.Employee中使用了hierarchyid 的数据类型。</p>
<p>3.在表HumanResources.Employee中使用了date类型，在HumanResources.Shift表中使用了time数据类型。</p>
<p>4.在表Person.Address中使用了地理空间数据类型geography。</p><img src ="http://www.cnblogs.com/studyzy/aggbug/1264219.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/41820/" target="_blank">[新闻]Visual Studio 2008 SDK 1.1 发布</a>]]></description></item><item><title>安装VS2008 SP1</title><link>http://www.cnblogs.com/studyzy/archive/2008/08/06/1262208.html</link><dc:creator>深蓝</dc:creator><author>深蓝</author><pubDate>Wed, 06 Aug 2008 08:39:00 GMT</pubDate><guid>http://www.cnblogs.com/studyzy/archive/2008/08/06/1262208.html</guid><wfw:comment>http://www.cnblogs.com/studyzy/comments/1262208.html</wfw:comment><comments>http://www.cnblogs.com/studyzy/archive/2008/08/06/1262208.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.cnblogs.com/studyzy/comments/commentRss/1262208.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/studyzy/services/trackbacks/1262208.html</trackback:ping><description><![CDATA[<p>最近由于在学习SQL2008，所以需要使用VS2008太耍一下关于SQL2008的新特性，尤其是Entity Framework。VS2008和SQL2008我都更新成英文版了。接下来安装VS2008的Sp1补丁，MS又使用了很恶心的网络安装，下载的Sp1才450K，然后网络安装过程中就要下载几百兆的安装文件，万恶的网络安装，光下载就花了我1个多小时。接下来就开始安装了，不到1分钟，直接报错，安装失败！查看了一下安装日志，找到一句关键的：</p><pre>MSI (s) (10:E8) [15:15:26:531]: Product: Microsoft SQL Server Compact 3.5 SP1 English Beta -- Installation operation failed.
</pre>
<p>原来是安装这个东西的失败造成的，网上找了一下，原来在安装的ReadMe中已经有说明，具体Readme参见：</p>
<p><a title="http://download.microsoft.com/download/8/F/D/8FD2A9F0-C3D4-4B0A-80AF-88D738DCDDF4/VSReadme.htm" href="http://download.microsoft.com/download/8/F/D/8FD2A9F0-C3D4-4B0A-80AF-88D738DCDDF4/VSReadme.htm">http://download.microsoft.com/download/8/F/D/8FD2A9F0-C3D4-4B0A-80AF-88D738DCDDF4/VSReadme.htm</a></p>
<p>要求还真是多，下面的内容我也难得一行一行的看了，见招拆招，我在控制面板中把Microsoft SQL Server Compact 3.5 SP1 English Beta 给卸载了，然后重新安装SP1。这回运气还好，没有报错了，安装到后面大半部分的时候突然弹出窗口，居然要提供VS2008的的安装源。幸好我的VS2008的ISO还在硬盘上，用虚拟光驱载入继续安装，又过来将近半个小时，终于安装完成了。</p>
<p>安装完成后打开VS2008，查看版本可以看到当前版本已经是Sp1Beta1，如图</p>
<p><a href="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/VS2008SP1_EA28/image_2.png"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="400" alt="image" src="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/VS2008SP1_EA28/image_thumb.png" width="553" border="0"></a> </p>
<p>那再建个项目看看，哈哈，有了2个新的项目模板，安逸！</p>
<p><a href="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/VS2008SP1_EA28/image_4.png"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="435" alt="image" src="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/VS2008SP1_EA28/image_thumb_1.png" width="687" border="0"></a> </p>
<p>接下来就可以学习一下这里面的新东西了。</p><img src ="http://www.cnblogs.com/studyzy/aggbug/1262208.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/41821/" target="_blank">[新闻]死敌VMware变身微软认证计划新成员</a>]]></description></item><item><title>公布下SQL Server 2008 RC0英文版下载地址</title><link>http://www.cnblogs.com/studyzy/archive/2008/08/06/1261570.html</link><dc:creator>深蓝</dc:creator><author>深蓝</author><pubDate>Tue, 05 Aug 2008 17:03:00 GMT</pubDate><guid>http://www.cnblogs.com/studyzy/archive/2008/08/06/1261570.html</guid><wfw:comment>http://www.cnblogs.com/studyzy/comments/1261570.html</wfw:comment><comments>http://www.cnblogs.com/studyzy/archive/2008/08/06/1261570.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/studyzy/comments/commentRss/1261570.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/studyzy/services/trackbacks/1261570.html</trackback:ping><description><![CDATA[<p>最近比较郁闷，下载的是SQL2008中文版来安装起了，结果装VS2008英文版的时候装是装起了，但是用不起，原来我的VS2008在以前的系统中是可以用的。也许是SQL与VS的冲突吧，所以我就卸载了VS2008英文版，安装了VS2008中文版，结果就一切正常了。</p> <p>现在我要用SQL2008的一些新特性，比如LINQ连接到SQL2008、Sync Framework、Entity Framework之类的必须要安装VS2008的SP1。但是SP1又只有英文版的，而且还在Beta中，其他的一些插件也是，都是Beta，全是英文版的，所以我又得装VS2008英文版。</p> <p>但是SQL2008怎么办？出于安全起见，我还是装英文版的好，所以需要下载个英文版的SQL2008 RC0，可惜在迅雷上找不到，只有中文版的，那我就只有去官方网站下载了。结果微软的官方网站又很奇怪，他直接给出下载地址，还非要我装个下载插件，然后才允许我使用那个插件工具下载。谁知道你这个下载工具是不是多线程的，速度有没有迅雷快哦。所以我决定找出真实地址还是用迅雷来下载吧。</p> <p>要找真实地址很简单，随便找个抓包工具，抓一下下载工具发送的包就可以了。抓出来的下载地址是：</p> <p><a title="http://sqlserver.dlservice.microsoft.com/dl/download/0/5/F/05FAADB5-D84C-405B-BC2D-38616E4B23E0/SQLFULL_ENU_x86.iso" href="http://sqlserver.dlservice.microsoft.com/dl/download/0/5/F/05FAADB5-D84C-405B-BC2D-38616E4B23E0/SQLFULL_ENU_x86.iso">http://sqlserver.dlservice.microsoft.com/dl/download/0/5/F/05FAADB5-D84C-405B-BC2D-38616E4B23E0/SQLFULL_ENU_x86.iso</a></p> <p>发布出来方便需要使用英文版SQL2008的用户用。</p> <p>PS：据说这个月SQL2008就要Release了，太好了，期待啊……</p><img src ="http://www.cnblogs.com/studyzy/aggbug/1261570.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/41821/" target="_blank">[新闻]死敌VMware变身微软认证计划新成员</a>]]></description></item><item><title>如何让TabContainer居左</title><link>http://www.cnblogs.com/studyzy/archive/2008/08/02/1258921.html</link><dc:creator>深蓝</dc:creator><author>深蓝</author><pubDate>Sat, 02 Aug 2008 10:52:00 GMT</pubDate><guid>http://www.cnblogs.com/studyzy/archive/2008/08/02/1258921.html</guid><wfw:comment>http://www.cnblogs.com/studyzy/comments/1258921.html</wfw:comment><comments>http://www.cnblogs.com/studyzy/archive/2008/08/02/1258921.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/studyzy/comments/commentRss/1258921.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/studyzy/services/trackbacks/1258921.html</trackback:ping><description><![CDATA[<p>这两天在做项目时用到了Ajax控件中的TabContainer，但是默认生成的标签是居中的，而该控件的属性中并没有将标签居左的设置。网上百度了一下，有人问到了这个问题，但是还没有人给出答案。</p>
<p>其实要解决这个问题很简单。用IEDeveloper查看一下这个标签，发现其Class为ajax__tab_header，那么要将他居左，只需要在页面的CSS中添加：</p>
<div class="cnblogs_code"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #800000;">.ajax__tab_header</span><span style="color: #000000;">{</span><span style="color: #ff0000;">&nbsp;text-align</span><span style="color: #000000;">:</span><span style="color: #0000ff;">&nbsp;left</span><span style="color: #000000;">;</span><span style="color: #000000;">}</span></div>
<p>即可！</p>
<p>下面是我添加了以后的截图：</p>
<p><a href="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/TabContainer_10949/image_2.png"><img style="border: 0px none ;" alt="image" src="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/TabContainer_10949/image_thumb.png" width="709" border="0" height="147" /></a></p><img src ="http://www.cnblogs.com/studyzy/aggbug/1258921.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/41819/" target="_blank">[新闻]英特尔雅虎开发网络计算机频道</a>]]></description></item><item><title>使用AspNetPager与GridView完成分页</title><link>http://www.cnblogs.com/studyzy/archive/2008/07/30/1256877.html</link><dc:creator>深蓝</dc:creator><author>深蓝</author><pubDate>Wed, 30 Jul 2008 15:19:00 GMT</pubDate><guid>http://www.cnblogs.com/studyzy/archive/2008/07/30/1256877.html</guid><wfw:comment>http://www.cnblogs.com/studyzy/comments/1256877.html</wfw:comment><comments>http://www.cnblogs.com/studyzy/archive/2008/07/30/1256877.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/studyzy/comments/commentRss/1256877.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/studyzy/services/trackbacks/1256877.html</trackback:ping><description><![CDATA[<p>由于GridView的分页功能实在是太弱了，所以需要使用强大的AspNetPager来作为分页控件。最简单的办法就是GridView控件下面接着放一个AspNetPager控件，但是这样好像就不能用GridView的分页功能了。在数据量不大的情况下，使用GridView的分页是十分方便有效的。另外还有一个问题就是分页控件在GridView生成的表格的下面，而没有像GridView自带分页那样包含到表格内部，这点也不是很爽。</p>
<p>要解决以上的问题，可以将AspNetPager放入GridView的分页模板（PagerTemplate）中，如下代码所示：</p>
<div class="cnblogs_code"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">&lt;</span><span style="color: #000000;">asp:GridView&nbsp;ID</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">GridView1</span><span style="color: #800000;">"</span><span style="color: #000000;">&nbsp;runat</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">server</span><span style="color: #800000;">"</span><span style="color: #000000;">&nbsp;AutoGenerateColumns</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">False</span><span style="color: #800000;">"</span><span style="color: #000000;">&nbsp;AllowPaging</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">True</span><span style="color: #800000;">"</span><span style="color: #000000;">&gt;</span><span style="color: #000000;"><br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">&lt;</span><span style="color: #000000;">Columns</span><span style="color: #000000;">&gt;</span><span style="color: #000000;"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">&lt;</span><span style="color: #000000;">asp:BoundField&nbsp;DataField</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">DmId</span><span style="color: #800000;">"</span><span style="color: #000000;">&nbsp;HeaderText</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">序号</span><span style="color: #800000;">"</span><span style="color: #000000;">&nbsp;ReadOnly</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">True</span><span style="color: #800000;">"</span><span style="color: #000000;">&nbsp;SortExpression</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">DMID</span><span style="color: #800000;">"</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">/&gt;</span><span style="color: #000000;"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#8230;&#8230;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#8230;&#8230;<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">&lt;/</span><span style="color: #000000;">Columns</span><span style="color: #000000;">&gt;</span><span style="color: #000000;"><br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">&lt;</span><span style="color: #000000;">PagerStyle&nbsp;HorizontalAlign</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">Center</span><span style="color: #800000;">"</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">/&gt;</span><span style="color: #000000;"><br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">&lt;</span><span style="color: #000000;">PagerTemplate</span><span style="color: #000000;">&gt;</span><span style="color: #000000;"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">&lt;</span><span style="color: #000000;">asp:AspNetPager&nbsp;ID</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">AspNetPager1</span><span style="color: #800000;">"</span><span style="color: #000000;">&nbsp;runat</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">server</span><span style="color: #800000;">"</span><span style="color: #000000;">&nbsp;ShowBoxThreshold</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">5</span><span style="color: #800000;">"</span><span style="color: #000000;">&nbsp;ShowPageIndexBox</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">Auto</span><span style="color: #800000;">"</span><span style="color: #000000;">&nbsp;CenterCurrentPageButton</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">True</span><span style="color: #800000;">"</span><span style="color: #000000;">&gt;</span><span style="color: #000000;"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">&lt;/</span><span style="color: #000000;">asp:AspNetPager</span><span style="color: #000000;">&gt;</span><span style="color: #000000;"><br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">&lt;/</span><span style="color: #000000;">PagerTemplate</span><span style="color: #000000;">&gt;</span><span style="color: #000000;"><br />
</span><span style="color: #000000;">&lt;/</span><span style="color: #000000;">asp:GridView</span><span style="color: #000000;">&gt;</span><span style="color: #000000;"> <br />
</span></div>
<p>&nbsp;</p>
<p>但是这样做要解决几个问题：</p>
<p>（1）这个GridView每一页的行数AspNetPager并不知道。解决办法：为AspNetPager添加属性PageSize="&lt;%# ((GridView)Container.NamingContainer).PageSize%&gt;"</p>
<p>（2）这个GridView绑定的总记录数AspNetPager也不知道。解决办法：为AspNetPager添加属性RecordCount="&lt;%#((IList)(((GridView)Container.NamingContainer).DataSource)).Count %&gt;"</p>
<p>（3）这个GridView当前在第几页AspNetPager也不知道。这个问题的解决可不像前面那么简单了，通过设置属性CurrentPageIndex的方式AspNetPager根本不认！（估计是AspNetPager的一个Bug吧）要解决这个问题就只有在每次翻页时后台代码中为AspNetPager设置CurrentPageIndex属性。</p>
<p>（4）使用AspNetPager后GridView并不会触发PageChanging事件。但是要触发AspNetPager的PageChanging事件，所以可以为分页模板中的AspNetPager控件添加事件处理：OnPageChanging="AspNetPager1_PageChanging"，对应的就是分页的后台代码：</p>
<div class="cnblogs_code"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #0000ff;">protected</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">void</span><span style="color: #000000;">&nbsp;AspNetPager1_PageChanging(</span><span style="color: #0000ff;">object</span><span style="color: #000000;">&nbsp;src,&nbsp;Wuqi.Webdiyer.PageChangingEventArgs&nbsp;e)<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">this</span><span style="color: #000000;">.GridView1.PageIndex&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;e.NewPageIndex&nbsp;</span><span style="color: #000000;">-</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">1</span><span style="color: #000000;">;</span><span style="color: #008000;">//</span><span style="color: #008000;">这儿需要注意，AspNetPager中的PageIndex是从1开始的，而GridView的是从0开始的，所以要减1.</span><span style="color: #008000;"><br />
</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;Bind();</span><span style="color: #008000;">//</span><span style="color: #008000;">GridView的数据绑定方法</span><span style="color: #008000;"><br />
</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;Wuqi.Webdiyer.AspNetPager&nbsp;pager&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">this</span><span style="color: #000000;">.GridView1.BottomPagerRow.FindControl(</span><span style="color: #800000;">"</span><span style="color: #800000;">AspNetPager1</span><span style="color: #800000;">"</span><span style="color: #000000;">)&nbsp;</span><span style="color: #0000ff;">as</span><span style="color: #000000;">&nbsp;Wuqi.Webdiyer.AspNetPager;<br />
&nbsp;&nbsp;&nbsp;&nbsp;pager.CurrentPageIndex&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;e.NewPageIndex;</span><span style="color: #008000;">//</span><span style="color: #008000;">这里就是为了解决前面的第3个问题。</span><span style="color: #008000;"><br />
</span><span style="color: #000000;">} <br />
</span></div>
<p>&nbsp;</p>
<p>OK，以上4个问题都解决了，我们的GridView+AspNetPager的分页就完成了！另外如果觉得AspNetPager的样式不好看可以再定义一下CSS。最后完整的代码是： </p>
<div class="cnblogs_code"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">&lt;</span><span style="color: #000000;">asp:GridView&nbsp;ID</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">GridView1</span><span style="color: #800000;">"</span><span style="color: #000000;">&nbsp;runat</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">server</span><span style="color: #800000;">"</span><span style="color: #000000;">&nbsp;AutoGenerateColumns</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">False</span><span style="color: #800000;">"</span><span style="color: #000000;">&nbsp;AllowPaging</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">True</span><span style="color: #800000;">"</span><span style="color: #000000;">&gt;</span><span style="color: #000000;"><br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">&lt;</span><span style="color: #000000;">Columns</span><span style="color: #000000;">&gt;</span><span style="color: #000000;"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">&lt;</span><span style="color: #000000;">asp:BoundField&nbsp;DataField</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">DmId</span><span style="color: #800000;">"</span><span style="color: #000000;">&nbsp;HeaderText</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">序号</span><span style="color: #800000;">"</span><span style="color: #000000;">&nbsp;ReadOnly</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">True</span><span style="color: #800000;">"</span><span style="color: #000000;">&nbsp;SortExpression</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">DMID</span><span style="color: #800000;">"</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">/&gt;</span><span style="color: #000000;"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#8230;&#8230;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#8230;&#8230;<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">&lt;/</span><span style="color: #000000;">Columns</span><span style="color: #000000;">&gt;</span><span style="color: #000000;"><br />
</span><span style="color: #000000;">&lt;</span><span style="color: #000000;">PagerStyle&nbsp;CssClass</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">GridViewPager</span><span style="color: #800000;">"</span><span style="color: #000000;">&nbsp;HorizontalAlign</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">Center</span><span style="color: #800000;">"</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">/&gt;</span><span style="color: #000000;"><br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">&lt;</span><span style="color: #000000;">PagerTemplate</span><span style="color: #000000;">&gt;</span><span style="color: #000000;"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">&lt;</span><span style="color: #000000;">asp:AspNetPager&nbsp;ID</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">AspNetPager1</span><span style="color: #800000;">"</span><span style="color: #000000;">&nbsp;runat</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">server</span><span style="color: #800000;">"</span><span style="color: #000000;">&nbsp;ShowBoxThreshold</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">5</span><span style="color: #800000;">"</span><span style="color: #000000;">&nbsp;ShowPageIndexBox</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">Auto</span><span style="color: #800000;">"</span><span style="color: #000000;"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PageSize</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">&lt;%#&nbsp;((GridView)Container.NamingContainer).PageSize%&gt;</span><span style="color: #800000;">"</span><span style="color: #000000;">&nbsp;OnPageChanging</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">AspNetPager1_PageChanging</span><span style="color: #800000;">"</span><span style="color: #000000;"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;RecordCount</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">&lt;%#((IList)(((GridView)Container.NamingContainer).DataSource)).Count&nbsp;%&gt;</span><span style="color: #800000;">"</span><span style="color: #000000;"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;CenterCurrentPageButton</span><span style="color: #000000;">=</span><span style="color: #800000;">"</span><span style="color: #800000;">True</span><span style="color: #800000;">"</span><span style="color: #000000;">&gt;</span><span style="color: #000000;"><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">&lt;/</span><span style="color: #000000;">asp:AspNetPager</span><span style="color: #000000;">&gt;</span><span style="color: #000000;"><br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">&lt;/</span><span style="color: #000000;">PagerTemplate</span><span style="color: #000000;">&gt;</span><span style="color: #000000;"><br />
</span><span style="color: #000000;">&lt;/</span><span style="color: #000000;">asp:GridView</span><span style="color: #000000;">&gt;</span><span style="color: #000000;"><br />
</span><span style="color: #008000;">//</span><span style="color: #008000;">以下是后台代码</span><span style="color: #008000;"><br />
</span><span style="color: #0000ff;">protected</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">void</span><span style="color: #000000;">&nbsp;AspNetPager1_PageChanging(</span><span style="color: #0000ff;">object</span><span style="color: #000000;">&nbsp;src,&nbsp;Wuqi.Webdiyer.PageChangingEventArgs&nbsp;e)<br />
{<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">this</span><span style="color: #000000;">.GridView1.PageIndex&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;e.NewPageIndex&nbsp;</span><span style="color: #000000;">-</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">1</span><span style="color: #000000;">;<br />
&nbsp;&nbsp;&nbsp;&nbsp;Bind();<br />
&nbsp;&nbsp;&nbsp;&nbsp;Wuqi.Webdiyer.AspNetPager&nbsp;pager&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">this</span><span style="color: #000000;">.GridView1.BottomPagerRow.FindControl(</span><span style="color: #800000;">"</span><span style="color: #800000;">AspNetPager1</span><span style="color: #800000;">"</span><span style="color: #000000;">)&nbsp;</span><span style="color: #0000ff;">as</span><span style="color: #000000;">&nbsp;Wuqi.Webdiyer.AspNetPager;<br />
&nbsp;&nbsp;&nbsp;&nbsp;pager.CurrentPageIndex&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;e.NewPageIndex;<br />
} <br />
</span></div>
<p>&nbsp;</p><img src ="http://www.cnblogs.com/studyzy/aggbug/1256877.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/41818/" target="_blank">[新闻]Windows Live视频邮件9月9日开始测试</a>]]></description></item><item><title>破解SQL Prompt 3.9的几步操作</title><link>http://www.cnblogs.com/studyzy/archive/2008/07/24/1250101.html</link><dc:creator>深蓝</dc:creator><author>深蓝</author><pubDate>Wed, 23 Jul 2008 19:16:00 GMT</pubDate><guid>http://www.cnblogs.com/studyzy/archive/2008/07/24/1250101.html</guid><wfw:comment>http://www.cnblogs.com/studyzy/comments/1250101.html</wfw:comment><comments>http://www.cnblogs.com/studyzy/archive/2008/07/24/1250101.html#Feedback</comments><slash:comments>22</slash:comments><wfw:commentRss>http://www.cnblogs.com/studyzy/comments/commentRss/1250101.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/studyzy/services/trackbacks/1250101.html</trackback:ping><description><![CDATA[<p>关于SQL Prompt 的破解文章园子里已经有不少人发过了。破解思路我也不想重复，不知道的可以参考：<a title="http://www.cnblogs.com/jintan/archive/2008/06/16/1223282.html" href="http://www.cnblogs.com/jintan/archive/2008/06/16/1223282.html">http://www.cnblogs.com/jintan/archive/2008/06/16/1223282.html</a></p>
<p>官方下载地址是：http://downloads.red-gate.com/SQLToolbelt.exe </p>
<p>接下来我就说说具体怎么做吧。我就说说最简单最傻瓜的做法，不需要懂IL照样破解！</p>
<p>准备：用到的工具VS2005|VS2008 、DotNet Helper 、Reflector</p>
<p>1.将最新版的SQL Prompt 3.9下载下来安装好。我安装在D:\Program Files\Red Gate\SQL Prompt 3目录下。</p>
<p>2.用DotNet Helper 将RedGate.Licensing.Client.dll反编译成IL。DotNet Helper确实很方便，用于可视化的反编译和编译，界面如图：</p>
<p><a href="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/SQLPrompt3.9_2DC4/image_2.png"><img style="border: 0px none ;" alt="image" src="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/SQLPrompt3.9_2DC4/image_thumb.png" width="499" border="0" height="398" /></a> </p>
<p>点击&#8220;反编译&#8221;按钮，即可将RedGate.Licensing.Client.dll反编译成IL，如下图：</p>
<p><a href="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/SQLPrompt3.9_2DC4/image_4.png"><img style="border: 0px none ;" alt="image" src="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/SQLPrompt3.9_2DC4/image_thumb_1.png" width="607" border="0" height="484" /></a> </p>
<p>3.用Reflector打开RedGate.Licensing.Client.dll，找到License类的DaysLeftInTrial属性，将语言选成IL，然后查看该属性下的方法get_DaysLeftInTrial，如图：</p>
<p><a href="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/SQLPrompt3.9_2DC4/image_6.png"><img style="border: 0px none ;" alt="image" src="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/SQLPrompt3.9_2DC4/image_thumb_2.png" width="644" border="0" height="362" /></a> </p>
<p>4.这里是返回还剩下的试用天数，如果我将这个属性的逻辑改为返回9999，那岂不是不会试用过期了。但是如果不会IL怎么办？简单。使用VS新建一个控制台应用程序，在其中类下面建属性，该属性返回9999：</p>
<p>public int GetStudyzy<br />
{<br />
&nbsp;&nbsp;&nbsp; get<br />
&nbsp;&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return 9999;<br />
&nbsp;&nbsp;&nbsp; }<br />
} </p>
<p>5.将VS中的这个程序编译好。然后使用Reflector查看该程序，找到这个属性：</p>
<p><a href="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/SQLPrompt3.9_2DC4/image_8.png"><img style="border: 0px none ;" alt="image" src="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/SQLPrompt3.9_2DC4/image_thumb_3.png" width="644" border="0" height="410" /></a> </p>
<p>6.这不就是我们想要的返回9999的IL了吗？用文本编辑器打开RedGate.Licensing.Client.il，搜索get_DaysLeftInTrial字符串，找到该方法的定义，然后将其中的内容修改为返回9999的这个IL的内容：</p>
<p>.method public hidebysig specialname instance int32 <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; get_DaysLeftInTrial() cil managed<br />
{<br />
&nbsp; .maxstack 1<br />
&nbsp; .locals init (<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [0] int32 CS$1$0000)<br />
&nbsp; L_0000: nop <br />
&nbsp; L_0001: ldc.i4 0x270f<br />
&nbsp; L_0006: stloc.0 <br />
&nbsp; L_0007: br.s L_0009<br />
&nbsp; L_0009: ldloc.0 <br />
&nbsp; L_000a: ret <br />
} // end of method Licence::get_DaysLeftInTrial </p>
<p>7.保存IL的修改。使用DotNet Helper，点击其中的&#8220;编译&#8221;按钮，将会编译出修改后的程序集：RedGate.Licensing.Client_Output.dll，将这个程序集替换掉原来的程序集。</p>
<p>8.去掉强命名。</p>
<span style="color: #ff0000;">
</span>
<p><span style="color: #ff0000;">
<p>注意：去掉强命名要用到sn命令，而这个命令是在.net framework 2.0 SDK中提供的，如果用户没有装SDK的话那还得装一个，该SDK在微软官方网站有下载，也可以通过VS的安装光盘来安装。安装后在如下位置有SDK命令提示：<img alt="" src="http://www.cnblogs.com/images/cnblogs_com/studyzy/sdkcmd.jpg" width="502" border="0" height="115" /> <br />
</p>
</span></p>
<p>&nbsp;</p>
<p><span style="color: #ff0000;">
<p>
</p>
</span></p>
<span style="color: #ff0000;">
<p>进入SDK的命令行模式，输入如下命令即可： <br />
</p>
<p style="background-color: #c0c0c0;">&nbsp;cd dll所在的安装路径<br />
sn -Vr RedGate.Licensing.Client.dll</p>
</span>
<p>&nbsp;</p>
<p>9.打开数据库管理工具，然后查看当前的天数：</p>
<p><a href="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/SQLPrompt3.9_2DC4/image_12.png"><img style="border: 0px none ;" alt="image" src="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/SQLPrompt3.9_2DC4/image_thumb_5.png" width="444" border="0" height="343" /></a> </p>
<p>似乎成功了！！！！！</p>
<p>我也还是为了保险起见，把TrialStatus 也用同样的方法修改吧。修改成：</p>
<p>public TrialStatus TrialStatus <br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top" />{ <br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp; get{return TrialStatus.InTrain; } <br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top" />&nbsp;&nbsp;&nbsp;&nbsp; set{<img alt="" src="http://www.cnblogs.com/Images/dot.gif" />.} <br />
<img alt="" src="http://www.cnblogs.com/Images/OutliningIndicators/None.gif" align="top" />}&nbsp; </p>
<p>具体做法还是一样的，在VS中写你想要返回的结果的代码，然后编译，然后Reflector查看，然后将查看的IL覆盖掉License中的IL内容。 </p>
<p>OK，就介绍这么多了。纯属学习和交流，大家试着自己破解吧，如果只想使用该软件的就下载这个DLL：<a href="http://files.cnblogs.com/studyzy/RedGate.Licensing.Client.rar">http://files.cnblogs.com/studyzy/RedGate.Licensing.Client.rar<br />
</a></p>
<p>&nbsp;</p>
<p>最后再补充一句，我破解的这个dll文件的版本是2.6.0.64，所有使用这个版本的其他RedGate公司的工具都可以使用我这个破解文件。当然不要忘记了去掉强命名哦，不然要报错。最后再附上一张使用本软件的效果截图：<img alt="" src="http://www.cnblogs.com/images/cnblogs_com/studyzy/%E6%88%AA%E5%9B%BE/znts.jpg" width="783" border="0" height="527" /></p>
<p>&nbsp;</p><img src ="http://www.cnblogs.com/studyzy/aggbug/1250101.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/41817/" target="_blank">[新闻]Intel首次公开展示Nehalem架构迅驰3平台</a>]]></description></item><item><title>使用链接服务器在异构数据库中查询数据</title><link>http://www.cnblogs.com/studyzy/archive/2008/07/21/1247824.html</link><dc:creator>深蓝</dc:creator><author>深蓝</author><pubDate>Mon, 21 Jul 2008 09:00:00 GMT</pubDate><guid>http://www.cnblogs.com/studyzy/archive/2008/07/21/1247824.html</guid><wfw:comment>http://www.cnblogs.com/studyzy/comments/1247824.html</wfw:comment><comments>http://www.cnblogs.com/studyzy/archive/2008/07/21/1247824.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/studyzy/comments/commentRss/1247824.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/studyzy/services/trackbacks/1247824.html</trackback:ping><description><![CDATA[摘要: SQL Server提供了链接服务器用于分布式查询异构数据库。通过链接服务器可以链接到Oracle、Sybase、DB2、SQL Server等大型关系数据库，也可以连接到Access、Excel等文件数据库，甚至可以连接到目录服务（AD）、索引服务等。要链接到一种数据库需要使用相应的接口。微软为很多数据库提供了驱动接口，所以可以直接使用，但是对于没有提供驱动的数据库比如Sybase，则需要在服务器上安装对应数据库厂商提供的驱动。
使用SSMS或者使用T-SQL语句配置成功链接服务器后便可通过：
[服务器名].[数据库名].[架构名].[对象名]
的形式来访问数据库。&nbsp;&nbsp;<a href='http://www.cnblogs.com/studyzy/archive/2008/07/21/1247824.html'>阅读全文</a><img src ="http://www.cnblogs.com/studyzy/aggbug/1247824.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/41816/" target="_blank">[新闻]Pogo浏览器</a>]]></description></item><item><title>如何修改数据库的服务器名称</title><link>http://www.cnblogs.com/studyzy/archive/2008/07/05/1236090.html</link><dc:creator>深蓝</dc:creator><author>深蓝</author><pubDate>Fri, 04 Jul 2008 19:29:00 GMT</pubDate><guid>http://www.cnblogs.com/studyzy/archive/2008/07/05/1236090.html</guid><wfw:comment>http://www.cnblogs.com/studyzy/comments/1236090.html</wfw:comment><comments>http://www.cnblogs.com/studyzy/archive/2008/07/05/1236090.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/studyzy/comments/commentRss/1236090.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/studyzy/services/trackbacks/1236090.html</trackback:ping><description><![CDATA[<p>最近我要在SQL Server 2008上做数据库复制的实验，需要用到两台服务器，所以我需要同时开2个虚拟机（VPC），当然我不可能去单独安装2个SQL Server，安装过程太费时了，所以我是在一个虚拟机中安装了SQL2008，然后将该虚拟机文件复制了一个出来，然后还原成另外一个虚拟机，这样我就可以同时使用2个虚拟机来做复制的实验了。我先在虚拟机SQL2008RC0中安装了Windows2003操作系统，机器名为MS-ZY，然后安装SQL Server 2008，所以数据库的服务器名也就是MS-ZY。</p>
<p><a href="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/1bc57ce9c3b4_BFD/clip_image001_2.jpg"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="251" alt="clip_image001" src="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/1bc57ce9c3b4_BFD/clip_image001_thumb.jpg" width="377" border="0" /></a></p>
<p>接下来复制过去还原成虚拟机SQL2008RC02，当两个虚拟机都打开的情况下，如果都是MS-ZY的服务器名，那将无法识别，所以我将第二个虚拟机的机器名修改为MS-ZY2。这个我就可以使用SSMS通过这个名字来访问第二个数据库了。</p>
<p><a href="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/1bc57ce9c3b4_BFD/clip_image001%5B6%5D.jpg"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="249" alt="clip_image001[6]" src="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/1bc57ce9c3b4_BFD/clip_image001%5B6%5D_thumb.jpg" width="374" border="0" /></a></p>
<p>一起看起来都不错，已经将这两个服务器通过名字分开了，而且我们通过SSMS也的确看到了2个不同的服务器：</p>
<p><a href="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/1bc57ce9c3b4_BFD/clip_image001%5B8%5D.jpg"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="347" alt="clip_image001[8]" src="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/1bc57ce9c3b4_BFD/clip_image001%5B8%5D_thumb.jpg" width="376" border="0" /></a></p>
<p>但是在配置复制的时候却出了问题，我在MS-ZY上配置了数据库分发，配置成功，接下来想在MS-ZY2上配置订阅，可是却报错。于是我就试一下在MS-ZY2上配置分发，同样报错，报错内容为：</p>
<p><a href="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/1bc57ce9c3b4_BFD/clip_image001%5B10%5D.jpg"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="126" alt="clip_image001[10]" src="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/1bc57ce9c3b4_BFD/clip_image001%5B10%5D_thumb.jpg" width="464" border="0" /></a></p>
<p>显然，我虽然在操作系统中将机器名修改为MS-ZY2了，但是在数据库中仍然使用的MS-ZY作为服务器名。怎么办呢？唯一的办法就是修改数据库的服务器名。</p>
<p>请教了一下公司的同事，具体修改过程：</p>
<p>1.使用select @@ServerName可以看到当前数据库的服务器名，果然还是MS-ZY！</p>
<p>2.从Sys.SysServers表中可以看到当前的所有服务器名，也是MS-ZY！</p>
<p>3.使用 sp_dropserver 'MS-ZY' 将这个服务器名删除。</p>
<p>4.使用 sp_addserver 'MS-ZY2','LOCAL'将本地服务器重新添加到服务器表中，并且命名为MS-ZY2.</p>
<p>5.查询Sys.SysServers表，果然已经修改了。</p>
<p>6.重启数据库服务，修改完成，可以正常使用复制功能了 :)</p>
<p>其实操作还是十分的简单，但是由于修改服务器名这种情况实在太少见了，一般都是使用默认的，所以很多人都不知道如果修改，写下此文，希望对遇到和我相同问题的人有所帮助。</p>
<img src ="http://www.cnblogs.com/studyzy/aggbug/1236090.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/41807/" target="_blank">[新闻]洪磊口述:番茄花园如何捆绑流氓软件月入十万</a>]]></description></item><item><title>使用Outlook对邮件进行分类</title><link>http://www.cnblogs.com/studyzy/archive/2008/06/26/1230785.html</link><dc:creator>深蓝</dc:creator><author>深蓝</author><pubDate>Thu, 26 Jun 2008 15:39:00 GMT</pubDate><guid>http://www.cnblogs.com/studyzy/archive/2008/06/26/1230785.html</guid><wfw:comment>http://www.cnblogs.com/studyzy/comments/1230785.html</wfw:comment><comments>http://www.cnblogs.com/studyzy/archive/2008/06/26/1230785.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnblogs.com/studyzy/comments/commentRss/1230785.html</wfw:commentRss><trackback:ping>http://www.cnblogs.com/studyzy/services/trackbacks/1230785.html</trackback:ping><description><![CDATA[<p>Outlook不愧为Office家族中的一员，相比国内FoxMail来说功能要强大的多。若再配上Exchange，那确实十分无敌。</p> <p>其他功能我也不多说，我就说说我最近学到的一个功能：按规则分组！</p> <p>我加入了公司的一个技术讨论组，结果每天差不多就有100来封邮件，相比以前我每天也就是几封而已。邮件太多了就有点看不过来，接下来遇到的问题就是我们部门的邮件些容易被淹没在讨论组100多封的邮件中。所以我希望能够系统自动将邮件分组，所有收件人地址为讨论组的邮件自动转移到另外一个文件夹中。</p> <p>我相信Outlook应该有这个功能，但是一直不知道怎么设，我也问过几个同事，他们都不知道。直到前天在办公室看到梁振的邮件分成了很多个文件夹，我就知道他肯定知道怎么设置。果然，梁振就是强，对微软的产品十分熟悉，两三下帮我搞定了。</p> <p>具体做法是这样的：</p> <p>（1）打开Outlook，新建个文件夹，然后选择“工具”菜单下的“规则和通知”选项。</p> <p><a href="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/Outlook_14BB2/image_2.png"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="149" alt="image" src="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/Outlook_14BB2/image_thumb.png" width="244" border="0"></a>&nbsp;</p> <p>打开的规则和通知窗口</p> <p><a href="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/Outlook_14BB2/image_4.png"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="487" alt="image" src="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/Outlook_14BB2/image_thumb_1.png" width="585" border="0"></a> </p> <p>（2）单击“新建规则”按钮弹出设置窗口</p> <p><a href="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/Outlook_14BB2/image_6.png"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="484" alt="image" src="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/Outlook_14BB2/image_thumb_2.png" width="403" border="0"></a> </p> <p>（3）选择模板看到底是根据发件人来还是根据收件人来或者其他什么规则。然后在步骤2中选择具体的规则。</p> <p>（4）接下来就是选择具体情况，例外情况之类的，最后是给规则命名，然后选中“立即运行此规则”即可。</p> <p>运行后邮件完全通过规则分开了，部门的邮件就不会被大量的讨论组的邮件给淹没了。如图：</p> <p><a href="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/Outlook_14BB2/image_8.png"><img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="155" alt="image" src="http://www.cnblogs.com/images/cnblogs_com/studyzy/WindowsLiveWriter/Outlook_14BB2/image_thumb_3.png" width="187" border="0"></a></p><img src ="http://www.cnblogs.com/studyzy/aggbug/1230785.html?type=1" width = "1" height = "1" /><br><br><a href="http://news.cnblogs.com/n/41813/" target="_blank">[新闻]2008年8月21日IT博客精选：盖茨复出？</a>]]></description></item></channel></rss>