Kann mir bitte jemand sagen, wie Sie den Speicherort finden, wo meine Daten und Protokolldateien mit SMO in C# gespeichert?Wie finde ich meine Datendateien und Protokolldateien mit smo in C#
0
A
Antwort
0
anscheinend können Sie "die Namen der logischen Daten und Protokolldateien aus den Sammlungen von Dateigruppen und Dateien abrufen".
siehe link text
4
public static void foo() {
Microsoft.SqlServer.Management.Smo.Server server = new ServerConnection("<server name>");
Microsoft.SqlServer.Management.Smo.Database db = server.Databases["<database name>"];
Console.WriteLine(db.FileGroups[0].Files[0].FileName);
Console.WriteLine(db.LogFiles[0].FileName);
}
Dieses Beispiel vorausgesetzt, dass Sie über ausreichende Rechte auf den Server \ Database haben, und gibt nur den vollständigen Pfad \ Dateinamen für die erste db/log-Datei im Dateigruppe.
Dateigruppen, Dateien und Logdateien sind SMO-Sammlungen, die eines oder mehrere der entsprechenden Elemente enthalten.
0
$targetServerName = "localhost"
$targetDatabaseName = "dbname"
$targetServer = New-Object ("Microsoft.SqlServer.Management.Smo.Server")$targetServerName
$database = $targetServer.Databases[$targetDatabaseName]
foreach ($fg in $database.FileGroups)
{
foreach ($df in $fg.Files)
{
"Filegroup type : " + $fg.Name + " DataFiles : " + $df.FileName
}
}
foreach ($lf in $database.LogFiles)
{
"Log file : " + $lf.FileName
}
Das sollte Ihnen die genauen Pfade erhalten.
Nein Ich möchte den genauen Pfad der Protokolldateien im System kennen. – Cute