Mr Speicher
Neu angemeldet
- Registriert
- 22 Dez. 2013
- Beiträge
- 83
Hallo, ich habe angefangen mich mit C# auseinander zusetzen und bin noch relativ unerfahren auf dem Gebiet.
Vielleicht kann mir jemand Helfen folgendes Anliegen umzusetzen.
Situation ist folgende: Ich habe eine MS Access Datenbank, in ihr befindet sich eine Tabelle, die fünf Felder enthält mit Daten. Was ich bis jetzt hinbekommen habe in C#, ist der Zugriff auf die DB und die Ausgabe einer ganzen Zeile mit allen fünf Datenfeldern in der Kommandozeile und in einer extra erstellten Textdatei.
Wenn man das Programm jetzt ausführt wird natürlich immer die selbe Zeile aus der DB ausgelesen und angezeigt.
Was ich jetzt suche ist eine Möglichkeit das per Zufall eine Zeile in der DB ausgewählt und ausgegeben wird. Also jedes mal bei Programmaufruf eine andere Zeile ausgewählt und ausgegeben wird.
Code habe ich bisher folgenden:
Vielleicht kann mir jemand Helfen folgendes Anliegen umzusetzen.
Situation ist folgende: Ich habe eine MS Access Datenbank, in ihr befindet sich eine Tabelle, die fünf Felder enthält mit Daten. Was ich bis jetzt hinbekommen habe in C#, ist der Zugriff auf die DB und die Ausgabe einer ganzen Zeile mit allen fünf Datenfeldern in der Kommandozeile und in einer extra erstellten Textdatei.
Wenn man das Programm jetzt ausführt wird natürlich immer die selbe Zeile aus der DB ausgelesen und angezeigt.
Was ich jetzt suche ist eine Möglichkeit das per Zufall eine Zeile in der DB ausgewählt und ausgegeben wird. Also jedes mal bei Programmaufruf eine andere Zeile ausgewählt und ausgegeben wird.
Code habe ich bisher folgenden:
[src=csharp]class Program
{
static void Main(string[] args)
{
OleDbConnection con = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\DB\TestDB.accdb");
con.Open();
string strSQL = "SELECT * FROM Tabelle1";
OleDbCommand cmd = new OleDbCommand(strSQL, con);
OleDbDataReader dr = cmd.ExecuteReader();
FileStream fw = new FileStream("Neue Textdatei.txt", FileMode.Create);
StreamWriter sw = new StreamWriter(fw);
dr.Read();
// Ausgeben der Datenfelder in
Console.WriteLine(dr[0].ToString());
Console.WriteLine(dr[1].ToString());
Console.WriteLine(dr[2].ToString());
Console.WriteLine(dr[3].ToString());
Console.WriteLine(dr[4].ToString());
// Schreiben der Datenfelder in die Textdatei
sw.WriteLine(dr[0]);
sw.WriteLine(dr[1]);
sw.WriteLine(dr[2]);
sw.WriteLine(dr[3]);
sw.WriteLine(dr[4]);
sw.WriteLine();
sw.Close();
dr.Close();
con.Close();
Console.ReadLine();
}
{
static void Main(string[] args)
{
OleDbConnection con = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\DB\TestDB.accdb");
con.Open();
string strSQL = "SELECT * FROM Tabelle1";
OleDbCommand cmd = new OleDbCommand(strSQL, con);
OleDbDataReader dr = cmd.ExecuteReader();
FileStream fw = new FileStream("Neue Textdatei.txt", FileMode.Create);
StreamWriter sw = new StreamWriter(fw);
dr.Read();
// Ausgeben der Datenfelder in
Console.WriteLine(dr[0].ToString());
Console.WriteLine(dr[1].ToString());
Console.WriteLine(dr[2].ToString());
Console.WriteLine(dr[3].ToString());
Console.WriteLine(dr[4].ToString());
// Schreiben der Datenfelder in die Textdatei
sw.WriteLine(dr[0]);
sw.WriteLine(dr[1]);
sw.WriteLine(dr[2]);
sw.WriteLine(dr[3]);
sw.WriteLine(dr[4]);
sw.WriteLine();
sw.Close();
dr.Close();
con.Close();
Console.ReadLine();
}