Datenbank in C#



  • Hallo,

    ich hab hier eine Datenbank in Access,bei der ich herausfinden soll, wo eine bestimmte Doublettennummer eingetragen ist und zu dieser Nummer dann gehen soll(ist durch ID gekennzeichnet) und dann diese Beschrebung raushauen soll, das Problem ist nicht die Logik(zwei Zähler, der eine erhöht die Zeile, der andere sucht solange nach der richtigen Nummer),sondern die Umsetzung in C#, ich hab nun schon mal mit einem SCQL Befehl connecten können(die Datenbank), aber ich habe keinen Plan, wie ich das ganze angeh, also wie ich in die nächte Zeile hüpf, einen Counter mach etc, also wie das Programm dann ablaufen soll. Könnt ihr mir helfen??



  • ok wie man auf ne Datenbank zugreift hab ich nun so realisiert:

    public DBZugriff (string str_SQLBefehl, string str_Filename)
    {
    conn = new OleDbConnection ("Provider = Microsoft.Jet.OleDB.4.0; Data Source = " + str_Filename); 
    Adapter = new OleDbDataAdapter(str_SQLBefehl, conn);
    ds = new DataSet ("DS_SQL");
    Adapter.Fill(ds); 
    return ds;
    }
    

    doch wie lese ich aus der datenbank aus und verändere dort drinnen die werte???



  • Auslesen tust du ja schon, sqlBefehl ist ja ein SELECT-Kommando. Für Insert und Update schau dir mal den OleDbCommand an.

    Wenn du das DataSet an ein DataGridView gebunde hast (um die Daten anzuzeigen und für den User veränderbar zu machen) wird dir das INSERT, etc. sogar vom System erstellt. In dem Fall schau dir mal den OleDbCommandBuilder an.

    MfG SideWinder



  • hi,
    hab auch ein prob mit dem DB zugriff und zwar bekomm ich immer "Eine nicht behandelte Ausnahme des Typs 'System.Data.OleDb.OleDbException' ist in system.data.dll aufgetreten."

    public DataTable createDS(string strSQLStatement, string sTable, string DB_Pfad)
    		{
    			strConn = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + DB_Pfad + ";User Id=" + strLogin + ";Password=" + strPasswort + ";";
    
    			OleDbConnection conn = new OleDbConnection(strConn);
    			conn.Open();
    			DataSet ds = new DataSet();// <- hier meckert er und ich weiss einfach nicht warum
    			OleDbDataAdapter oCommand = new OleDbDataAdapter(strSQLStatement,conn);
    
    			try
    			{
    				oCommand.Fill(ds, sTable);
    			}
    			catch(OleDbException e)
    			{
    				MessageBox.Show("Fehler beim Erzeugen des DataSets:\n" + e.Message + "\n\nDataSet konnte nicht gefüllt werden.", "Message", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
    			}	
    			finally
    			{
    				conn.Close();
    			}
    			return ds.Tables[0];
    		}
    

    EDIT: Hat sich erledigt: der Pfad zur Datenbank war falsch 🙄


Anmelden zum Antworten