sp_OAMethod'OpenTextFile'澄清

时间:2013-11-28 18:14:23

标签: sql sql-server-2008

即使在我使用的Microsoft网站上,我似乎也能找到答案:

EXECUTE @RetCode = sp_OAMethod @FileSystem, 
 'OpenTextFile',
 @FileHandle OUTPUT,
 @FilePath,
 8,
 1

我想知道finale int参数(1)的作用以及有什么其他选项。我试验并使用了2但没有看到任何差异。

我知道第二个最后一个int参数(8)指定了一个追加vs使用2写入但是也不知道该参数的其他值。

1 个答案:

答案 0 :(得分:9)

sp_OAMethod正在执行给定对象的方法,在本例中是FileSystemObject OpenTextFile按此顺序有4个参数:

  
      
  1. FilePath - 必需。要打开的文件的名称
  2.   
  3. 模式 - 可选。如何打开文件   
        
    • 1 =阅读 - 打开文件进行阅读。你不能写这个文件。
    •   
    • 2 =写作 - 打开文件进行写作。
    •   
    • 8 =追加 - 打开文件并写入文件末尾。
    •   
  4.   
  5. 创建 - 可选。设置如果文件名不存在,是否可以创建新文件。 True表示可以创建新文件,False表示不会创建新文件。 False是默认值。
  6.   
  7. 格式 - 可选。文件的格式   
        
    • 0 = TristateFalse - 以ASCII格式打开文件。这是默认值。
    •   
    • 1 = TristateTrue - 以Unicode格式打开文件。
    •   
    • 2 = TristateUseDefault - 使用系统默认值打开文件。
    •   
  8.   

在您的情况下(8)是Mode,而(1)是Create。 您可以阅读更多相关信息here