Wie aus einer Datenbank in eine Textdatei mit VBScript kopieren?
-
05-07-2019 - |
Frage
Ich habe ein Beispiel in C # -Code, aber es wird mit streamWriter
. Es muss mit FileSystemObject
Ritus werden beteiligt sind. Wenn ja, was sind Methoden soll ich verwenden? Ich möchte mit VBScript WSH codieren, und meine Datenbank ist MS SQL Server 2005 .
Jede Lösung, Referenzen oder Führer sind hilfreich.
using (StreamWriter tw = File.AppendText("c:\\INMS.txt"))
{
using (SqlDataReader reader = cmd.ExecuteReader())
{
tw.WriteLine("id, ip address, message, datetime");
while (reader.Read())
{
tw.Write(reader["id"].ToString());
tw.Write(", " + reader["ip"].ToString());
tw.Write(", " + reader["msg"].ToString());
tw.WriteLine(", " + reader["date"].ToString());
}
tw.WriteLine("Report Generate at : " + DateTime.Now);
tw.WriteLine("---------------------------------");
tw.Close();
reader.Close();
}
}
Lösung
In VBScript müssen Sie ADODB-Objekte und die FileSystemObject
aus der Scripting
Bibliothek. So etwas wie: -
Dim conn: Set conn = CreateObject("ADODB.Connection")
conn.Open "an ole DB mysql connection string", usernameIfneeded, passwordIfNeeded
Dim cmd : Set cmd = CreateObject("ADODB.Command")
Set cmd.ActiveConnection = conn
cmd.CommandText = "your SQL code here"
cmd.CommantType = 1 ''# adCmdText Command text is a SQL query
Dim rs : Set rs = cmd.Execute
Dim fs : Set fs = CreateObject("Scripting.FileSystemObject")
Dim textStream : Set textStream = fs.OpenTextFile("c:\inms.txt", 8, True)
textStream.WriteLine "id, ip address, message, datetime"
Do Until rs.EOF
textStream.Write rs("id") & ","
textStream.Write rs("ip") & ","
textStream.Write rs("msg") & ","
textStream.WriteLine rs("date")
rs.MoveNext
Loop
textStream.Close
rs.Close
conn.Close
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow