﻿<?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>IT博客-You and me... -文章分类-MSSQL思考</title><link>http://www.cnitblog.com/junhong-cai/category/7321.html</link><description /><language>zh-cn</language><lastBuildDate>Sat, 01 Oct 2011 22:26:25 GMT</lastBuildDate><pubDate>Sat, 01 Oct 2011 22:26:25 GMT</pubDate><ttl>60</ttl><item><title>MS SQL 自动删除旧的数据库备份文件</title><link>http://www.cnitblog.com/junhong-cai/articles/67077.html</link><dc:creator>疯狂水车</dc:creator><author>疯狂水车</author><pubDate>Mon, 28 Jun 2010 03:44:00 GMT</pubDate><guid>http://www.cnitblog.com/junhong-cai/articles/67077.html</guid><wfw:comment>http://www.cnitblog.com/junhong-cai/comments/67077.html</wfw:comment><comments>http://www.cnitblog.com/junhong-cai/articles/67077.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/junhong-cai/comments/commentRss/67077.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/junhong-cai/services/trackbacks/67077.html</trackback:ping><description><![CDATA[<p>MS SQL 自动删除旧的数据库备份文件，你可以把下面这段代码放进sql的DTS里面的vbs控件，然后用jobs控制什么时候运行，也可以另保存为vbs文件。然后用windows的Scheduled Tasks 来运行。<br></p>
<div style="BORDER-BOTTOM: #cccccc 1px solid; BORDER-LEFT: #cccccc 1px solid; PADDING-BOTTOM: 4px; BACKGROUND-COLOR: #eeeeee; PADDING-LEFT: 4px; WIDTH: 98%; PADDING-RIGHT: 5px; FONT-SIZE: 13px; WORD-BREAK: break-all; BORDER-TOP: #cccccc 1px solid; BORDER-RIGHT: #cccccc 1px solid; PADDING-TOP: 4px"><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif"><span style="COLOR: #000000">iDaysOld&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">7</span><span style="COLOR: #000000">&nbsp;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif">strPath&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">D:\DatabaseBackup</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;&nbsp;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif"><br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif"></span><span style="COLOR: #0000ff">Set</span><span style="COLOR: #000000">&nbsp;objFSO&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">CreateObject</span><span style="COLOR: #000000">(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Scripting.FileSystemObject</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">)&nbsp;&nbsp;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif"></span><span style="COLOR: #0000ff">Set</span><span style="COLOR: #000000">&nbsp;objFolder&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;objFSO.GetFolder(strPath)&nbsp;&nbsp;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif"></span><span style="COLOR: #0000ff">Set</span><span style="COLOR: #000000">&nbsp;colSubfolders&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;objFolder.Subfolders&nbsp;&nbsp;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif"></span><span style="COLOR: #0000ff">Set</span><span style="COLOR: #000000">&nbsp;colFiles&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;objFolder.Files&nbsp;&nbsp;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif"><br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif"></span><span style="COLOR: #0000ff">For</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">Each</span><span style="COLOR: #000000">&nbsp;objFile&nbsp;in&nbsp;colFiles&nbsp;&nbsp;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif">&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">If</span><span style="COLOR: #000000">&nbsp;objFile.DateLastModified&nbsp;</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">&nbsp;(</span><span style="COLOR: #0000ff">Date</span><span style="COLOR: #000000">()&nbsp;</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">&nbsp;iDaysOld)&nbsp;</span><span style="COLOR: #0000ff">Then</span><span style="COLOR: #000000">&nbsp;&nbsp;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">MsgBox</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Dir:&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">&nbsp;objFolder.Name&nbsp;</span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">&nbsp;vbCrLf&nbsp;</span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">File:&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">&nbsp;objFile.Name&nbsp;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">'</span><span style="COLOR: #008000">objFile.Delete&nbsp;&nbsp;</span><span style="COLOR: #008000"><br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif"></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">End</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">If</span><span style="COLOR: #000000">&nbsp;&nbsp;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif"></span><span style="COLOR: #0000ff">Next</span><span style="COLOR: #000000">&nbsp;&nbsp;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif"><br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif"><br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif"></span><span style="COLOR: #0000ff">For</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">Each</span><span style="COLOR: #000000">&nbsp;objSubfolder&nbsp;in&nbsp;colSubfolders&nbsp;&nbsp;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif">&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">Set</span><span style="COLOR: #000000">&nbsp;colFiles&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;objSubfolder.Files&nbsp;&nbsp;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif">&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">For</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">Each</span><span style="COLOR: #000000">&nbsp;objFile&nbsp;in&nbsp;colFiles&nbsp;&nbsp;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">If</span><span style="COLOR: #000000">&nbsp;objFile.DateLastModified&nbsp;</span><span style="COLOR: #000000">&lt;</span><span style="COLOR: #000000">&nbsp;(</span><span style="COLOR: #0000ff">Date</span><span style="COLOR: #000000">()&nbsp;</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">&nbsp;iDaysOld)&nbsp;</span><span style="COLOR: #0000ff">Then</span><span style="COLOR: #000000">&nbsp;&nbsp;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">MsgBox</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">Dir:&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">&nbsp;objSubfolder.Name&nbsp;</span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">&nbsp;vbCrLf&nbsp;</span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">File:&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">&nbsp;objFile.Name&nbsp;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">'</span><span style="COLOR: #008000">objFile.Delete&nbsp;&nbsp;</span><span style="COLOR: #008000"><br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif"></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">End</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">If</span><span style="COLOR: #000000">&nbsp;&nbsp;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif">&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">Next</span><span style="COLOR: #000000">&nbsp;&nbsp;<br><img align=top src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif"></span><span style="COLOR: #0000ff">Next</span><span style="COLOR: #000000">&nbsp;</span></div>
<br>把strPath＝"D:\DatabaseBackup"改成你备份的数据库文件。<br>如果你要真正运行就把MsgBox关掉，把objFile.Delete开启。<br>
<img src ="http://www.cnitblog.com/junhong-cai/aggbug/67077.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/junhong-cai/" target="_blank">疯狂水车</a> 2010-06-28 11:44 <a href="http://www.cnitblog.com/junhong-cai/articles/67077.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SHRINK DATABASE LOG FILE</title><link>http://www.cnitblog.com/junhong-cai/articles/47182.html</link><dc:creator>疯狂水车</dc:creator><author>疯狂水车</author><pubDate>Sun, 27 Jul 2008 14:40:00 GMT</pubDate><guid>http://www.cnitblog.com/junhong-cai/articles/47182.html</guid><wfw:comment>http://www.cnitblog.com/junhong-cai/comments/47182.html</wfw:comment><comments>http://www.cnitblog.com/junhong-cai/articles/47182.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/junhong-cai/comments/commentRss/47182.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/junhong-cai/services/trackbacks/47182.html</trackback:ping><description><![CDATA[SHRINK DATABASE LOG FILE<br><br>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #0000ff">Declare</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #008000">@dbhname</span><span style="COLOR: #000000">&nbsp;</span><span style="FONT-WEIGHT: bold; COLOR: #000000">nvarchar</span><span style="COLOR: #000000">(</span><span style="FONT-WEIGHT: bold; COLOR: #800000">255</span><span style="COLOR: #000000">)<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">Set</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #008000">@dbname</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #808080">=</span><span style="COLOR: #000000">&nbsp;"yourdbname"<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">Backup</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #ff00ff">log</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #008000">@dbname</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">with</span><span style="COLOR: #000000">&nbsp;truncate_only<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">DBCC</span><span style="COLOR: #000000">&nbsp;SHRINKDATABASE&nbsp;(</span><span style="COLOR: #008000">@dbname</span><span style="COLOR: #000000">,</span><span style="FONT-WEIGHT: bold; COLOR: #800000">0</span><span style="COLOR: #000000">)</span></div>
<img src ="http://www.cnitblog.com/junhong-cai/aggbug/47182.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/junhong-cai/" target="_blank">疯狂水车</a> 2008-07-27 22:40 <a href="http://www.cnitblog.com/junhong-cai/articles/47182.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>删除Table中重复的记录 (Delete data for duplicate)</title><link>http://www.cnitblog.com/junhong-cai/articles/45789.html</link><dc:creator>疯狂水车</dc:creator><author>疯狂水车</author><pubDate>Mon, 16 Jun 2008 11:08:00 GMT</pubDate><guid>http://www.cnitblog.com/junhong-cai/articles/45789.html</guid><wfw:comment>http://www.cnitblog.com/junhong-cai/comments/45789.html</wfw:comment><comments>http://www.cnitblog.com/junhong-cai/articles/45789.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/junhong-cai/comments/commentRss/45789.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/junhong-cai/services/trackbacks/45789.html</trackback:ping><description><![CDATA[<span style="FONT-SIZE: 10pt">状况是:除了主键不一样外,其余全一样.而不想把数据导出,删掉重复的记录,再重新导入<br>今天在工作中突然遇到这个问题,记得一二年前也有遇到这种问题,后来解决了.<br>现在却一时记不起当时的方法.没办法了自己再想吧.最后我用起了这种方法,也算是挺简单的.<br>不记得当时是不是也是用这种方法了.把SQL Query放在这边方便大家,如果你需要.</span><br><br>
<div><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>Select&nbsp;0&nbsp;as&nbsp;id,country,name,tel,address<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>Into&nbsp;#TMP<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>From&nbsp;Table<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>Where&nbsp;country='china'<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>Group&nbsp;by&nbsp;country,name,tel,address<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>Having&nbsp;count(*)&gt;1<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>Update&nbsp;#TMP&nbsp;set&nbsp;#TMP.id&nbsp;=&nbsp;Table.id<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>From&nbsp;#TMP<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>Inner&nbsp;join&nbsp;Table&nbsp;on&nbsp;Table.country&nbsp;=&nbsp;#TMP.country<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>and&nbsp;Table.name&nbsp;=&nbsp;#TMP.name<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>and&nbsp;Table.tel&nbsp;=&nbsp;#TMP.tel<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>and&nbsp;(Table.address&nbsp;=&nbsp;#TMP.address&nbsp;or&nbsp;Table.address&nbsp;is&nbsp;null)<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>Select&nbsp;*&nbsp;from&nbsp;#TMP<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>Delete&nbsp;From&nbsp;Table&nbsp;Where&nbsp;id&nbsp;in&nbsp;(Select&nbsp;id&nbsp;From&nbsp;#TMP)<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top>Drop&nbsp;Table&nbsp;#TMP<br><img src="http://www.cnitblog.com/Images/OutliningIndicators/None.gif" align=top></div>
<p><br><br><span style="FONT-SIZE: 10pt">简单吧..如果你想说只删掉前面的或只删除后面的,那么加入排序.<br>值得注意的是字段如果是NULL的话,要像我一样加入 "or Table.address is null".不然不会匹配.</span></p>
<p style="FONT-SIZE: 10pt">当然如果你想更小心一点的话,就先检后删.GOOD LUCK!</p>
<img src ="http://www.cnitblog.com/junhong-cai/aggbug/45789.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/junhong-cai/" target="_blank">疯狂水车</a> 2008-06-16 19:08 <a href="http://www.cnitblog.com/junhong-cai/articles/45789.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>