易截截图软件、单文件、免安装、纯绿色、仅160KB

定期删除备份的SQL数据库的脚本

  比如某个数据库下对SQL SERVER的数据库进行了每天的备份,现在要保留7天以内的,其他的删除掉,用ASP可以实现了,但要用到filesystemobject,不大爽
    首先写一个js文件clearDatabaseBackup,内容如下
function deleteBackupFile(beforedays) {
    var fso = new ActiveXObject("Scripting.FileSystemObject");
    var dir = fso.GetFolder("D:\\数据库备份");    //改成你的数据库备份目录
    for (var fc = new Enumerator(dir.SubFolders); !fc.atEnd(); fc.moveNext()) {
//假设数据文件的备份文件都是以abc_log开头的,比如abc_log_xxxx
        if (fc.item().name.substr(0,9) == "abc_log") {
            for (var logfiles = new Enumerator(fc.item().Files); !logfiles.atEnd(); logfiles.moveNext()) {
                var fileName = logfiles.item().name;
                var year = "20" + fileName.substr(19, 2);
                var month = fileName.substr(21, 2);
                var day = fileName.substr(23, 2);
                var days = Math.round(((new Date()).getTime() - Date.UTC(year, month - 1, day)) / 1000 / 60 / 60 / 24);
                if (days >= beforedays) logfiles.item().Delete();
            }
        }
    }
}
//保存一周内的数据库备份文件
deleteBackupFile(7);
然后写一个BAT文件,加入到任务计划
cscript clearDatabaseBackup.js


相关文档:

使用SQL重设数据库Sequence的当前值

很多时候,我们需要把数据库Sequence设置到某个特定的值开始,但是又不想重建这个Sequence 那下面的SQL语句就可以实现这样的功能: 其中user_seq是需要操作的Sequence名称,1 .. 100是递增100次 DECLARE
rowCount1 NUMBER;
BEGIN
FOR cc IN 1 .. 100
LOOP
SELECT user_seq.NEXTVAL INTO rowCount1 f ......

如何写sql的递归查询语句?

cpcbid    cpcbbh          type  parentid  parentbh            cbze
70      2009120001      11      NULL        NU ......

SQL Server连接远程数据源的基本方法

SQL Server连接远程数据源的基本方法有下面三种:
OPENDATASOURCE: The OPENDATASOURCE function is used to specify connection information for a remote data source by specifying the OLE DB provider and an initialization string. OPENDATASOURCE can be used directly within a SELECT, INSERT, UPDATE, or DELET ......

Oracle和SQL Server、DB2数据库比较

开放性:
SQL Server   
    只能在windows 上运行,没有丝毫的开放性,操作系统的系统的稳定对数据库是十分重要的。Windows9X系列产品是偏重于桌面应用,NT server只适合中小型企业。而且windows平台的可靠性,安全性和伸缩性是非常有限的。它不象unix那样久经考验,尤其是在处理大数据量 ......

SQL 语句优化(个人摘录)

(1)选择最有效率的表名顺序(只在基于规则的优化器中有效): 
ORACLE 的解析器按照从右到左的顺序处理from子句中的表名,from子句中写在最后的表(基础表 driving table)将被最先处理,在from子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如果有3个以上的表连接查询, 那就需要选择交叉表(interse ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号