SQL 获取系统文件
--获得当前所有驱动器
exec master.dbo.xp_availablemedia
--获得子目录列表
exec master.dbo.xp_subdirs 'c:\'
--获得所有子目录的目录树结构
exec master.dbo.xp_dirtree 'c:\'
--订阅文件删除
declare @tempTable table (Cont varchar(50))
declare @strTemp varchar(50)
declare @dirPath varchar(50)
declare @dirOrder varchar(50)
declare @delpath varchar(50)
declare @delOrder varchar(50)
set @dirPath = 'C:\ddt\unc\ZF_TEST_BB\'
set @dirOrder = 'dir '+@dirPath
set @delpath = 'rd/q/s '+@dirPath
insert into @tempTable(Cont) exec master.dbo.xp_cmdshell @dirOrder
DECLARE authors_cursor CURSOR FOR
select Cont from @tempTable
where (Cont not like '%'+CONVERT(varchar(50),month(GETDATE()))+'-'+CONVERT(varchar(50),day(GETDATE()))+'%')
and (Cont like '%'+CONVERT(varchar(50),year(GETDATE()))+'-%')
OPEN authors_cursor
FETCH NEXT from authors_cursor into @strTemp
While @@FETCH_STATUS = 0
Begin
set @delOrder = @delpath+ right(@strTemp,14);
print @delOrder
-- exec master.dbo.xp_cmdshell @delOrder
FETCH NEXT from authors_cursor into @strTemp
End
CLOSE authors_cursor
DEALLOCATE authors_cursor
相关文档:
在SQL Server2005中有FOR XML 用法,可以讲一个表作为一个字段。
我的设计想法主要是用在1对多的关系中表读取的问题。
表A 表B
在A中有一条记录而在B中有多条记录可以参照下面的写法:(我的项目中用到的,修改了字段主要是演示用)
select A.*,
(SELECT a, CAST(G_Univalence AS NVARCHAR(48)) AS G_Univa ......
1. 安装oracle 10G客户端
要访问oracle数据库必须安装oracle客户端。安装oracle客户端有两种方式,即完整安装和立即安装,这两种方式都可以。安装完后配置要链接数据库服务器。
$ORACLE_HOME\network\admin\tnsname.ora
在此配置文件里添加如下内容:
sunora =
(DESCRIPTION =
......
/*------------------------------------------------------------------
-- Author : htl258(Tony)
-- Date : 2010-04-16 14:30:23
-- Version: Microsoft SQL Server 2008 (RTM) - 10.0.1600.22 (Intel X86)
Jul 9 2008 14:43:34
&nb ......
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[f_convert]') and xtype in (N'FN', N'IF', N'TF'))&n ......
分布式查询
OPENROWSET
从Excel取数据
SELECT * from OPENROWSET('Microsoft.Jet.OLEDB.4.0','Excel 8.0;Database=d:\1.xls',[Sheet1$])
从Oracle取数据
SELECT * from OPENROWSET('MSDAORA.1','NetServiceName ......