sp_OAMethod 'OpenTextFile' clarification

sql, sql-server-2008

Solution

The sp_OAMethod is executing method of the given object, in this case is a FileSystemObject OpenTextFile has 4 parameters in this order:

- FilePath -Required. The name of the file to open

- Mode - Optional. How to open the file

- 1 = Reading - Open a file for reading. You cannot write to this file.

- 2 = Writing - Open a file for writing.

- 8 = Appending - Open a file and write to the end of the file.

- Create - Optional. Sets whether a new file can be created if the filename does not exist. True indicates that a new file can be created, and False indicates that a new file will not be created. False is default.

- Format - Optional. The format of the file

- 0 = TristateFalse - Open the file as ASCII. This is default.

- 1 = TristateTrue - Open the file as Unicode.

- 2 = TristateUseDefault - Open the file using the system default.

In your case (8) is the `Mode`, and (1) is the `Create`. You can read more about it here.

Problem

I can seem to find an answer to this even on Microsoft sites I am using this: ``` EXECUTE @RetCode = sp_OAMethod @FileSystem, 'OpenTextFile', @FileHandle OUTPUT, @FilePath, 8, 1 ``` I would like to know what the finale int parameter (1) does and what other options there are for this. I experimented and used 2 but did not see any difference. I know that the second last int parameter (8) specifies an append vs using 2 a write but do not know of other values for this parameter either.

Original source