OracleBFile.SetFileName(String, String) Yöntem

Tanım

OracleBFile nesnesini işletim sistemindeki farklı bir dosyaya bağlar.

public:
 void SetFileName(System::String ^ directory, System::String ^ file);
public void SetFileName (string directory, string file);
member this.SetFileName : string * string -> unit
Public Sub SetFileName (directory As String, file As String)

Parametreler

directory
String

Fiziksel dosya içeren dizin nesnesinin diğer adı.

file
String

İşletim sistemindeki dosyanın adı.

Özel durumlar

İşlem bir işlem içinde olmalıdır.

Açıklamalar

İşlemin SetFileName başarılı olması için bir işlem içinde olması gerekir. Yalnızca bir BFILE çağrısı SetFileName nesneyi farklı bir dosyayla ilişkilendirirOracleBFile, ancak Oracle tablosunu güncelleştirmez. çağrısı SetFileNameyaptıktan sonra Oracle tablosunu güncelleştirmek için yöntemini OracleDataAdapter çağırmanız Update ve ardından işlemi işlemeniz gerekir.

veya özelliğini aldıktan DirectoryName sonra, bunlar nesnede OracleBFile önbelleğe alınır ve kopyalanan OracleBFile nesnelerin çağrısından SetFileNameveya veritabanında yapılan değişikliklerden BFILE etkilenmez.FileName Başka bir deyişle, sunucudaki nesnenin BFILE gerçek değerlerini temsil etmeyebilirler.

Ayrıca, bir özelliğin (DirectoryName veya FileName) alınması, her iki özellik değerinin de sunucudan alınmasına ve nesnede önbelleğe alınmasına OracleBFile neden olur.

Aşağıdaki C# örneği, bu şemanın bir Oracle tablosunda olduğunu varsayar:

(col1 number, col2 BFILE)  

Örnekte, bir OracleBFile nesneye SetFileNameerişmek için ve SeekRead yöntemlerinin kullanılması gösterilmektedir.

byte[] buffer = new byte[100];  
OracleDataReader dataReader = command.ExecuteReader();  
using (dataReader) {  
    if (dataReader.Read()) {  
        OracleBFile BFile = dataReader.GetOracleBFile(1);  
        using (BFile) {  
            BFile.Seek(0, SeekOrigin.Begin);  
            BFile.Read(buffer, 0, 100);  
            command.Transaction = connection.BeginTransaction();  
            BFile.SetFileName("TESTDIR", "File1.jpg");  
            BFile.Read(buffer, 0, 100);  
        }  
    }  
}  

Şunlara uygulanır