Avatar billede krestionsen Nybegynder
16. maj 2004 - 11:47 Der er 3 kommentarer og
1 løsning

DataGrid update

Jeg er ved, at lave en asp side med en datagrid, som skal vise noget fra databasen hvorefter man skal kunne gå ind i datagriden og opdatere nogle data og det virker også fint med at vise dataene, hvor der er en edit knap og når man trykker på edit knappen så kan man også rette i daene, men når jeg trykker på update sker der ikke noget, så hvis der var nogle der kunne hjælpe ville jeg være taknemelig?

Jeg har vedlagt update koden.

public void DataGrid1_Update(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{

    string sInitialer, sPassword, sAdmin, sAnsat, sTimer;
    int MedarbejderID = (int) DataGrid1.DataKeys[(int)e.Item.ItemIndex];
    sInitialer = ((TextBox)e.Item.Cells[1].Controls[0]).Text;
    sPassword = ((TextBox)e.Item.Cells[2].Controls[0]).Text;
    sAdmin = ((TextBox)e.Item.Cells[3].Controls[0]).Text;
    sAnsat = ((TextBox)e.Item.Cells[4].Controls[0]).Text;
    sTimer = ((TextBox)e.Item.Cells[5].Controls[0]).Text;

    string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Ole DB Services=-4; Data Source=D:\\Fam\\db1.mdb";
    System.Data.IDbConnection dbConnection = new System.Data.OleDb.OleDbConnection(connectionString);

    string queryString = "UPDATE [Medarbejder] SET [Initialer]=Initialer, [Timer]=Timer, [password]=pass" +
    "word, [admin]=admin, [ansat]=ansat WHERE ([Medarbejder].[MedarbejderID] = MedarbejderID)";

    System.Data.IDbCommand dbCommand = new System.Data.OleDb.OleDbCommand();
    dbCommand.CommandText = queryString;
    dbCommand.Connection = dbConnection;

    System.Data.IDataParameter dbParam_initialer = new System.Data.OleDb.OleDbParameter();
    dbParam_initialer.ParameterName = "@Initialer";
    dbParam_initialer.Value = sInitialer;
    dbParam_initialer.DbType = System.Data.DbType.String;
    dbCommand.Parameters.Add(dbParam_initialer);

    System.Data.IDataParameter dbParam_timer = new System.Data.OleDb.OleDbParameter();
    dbParam_timer.ParameterName = "@Timer";
    dbParam_timer.Value = sTimer;
    dbParam_timer.DbType = System.Data.DbType.Int32;
    dbCommand.Parameters.Add(dbParam_timer);

    System.Data.IDataParameter dbParam_password = new System.Data.OleDb.OleDbParameter();
    dbParam_password.ParameterName = "@password";
    dbParam_password.Value = sPassword;
    dbParam_password.DbType = System.Data.DbType.String;
    dbCommand.Parameters.Add(dbParam_password);

    System.Data.IDataParameter dbParam_admin = new System.Data.OleDb.OleDbParameter();
    dbParam_admin.ParameterName = "@admin";
    dbParam_admin.Value = sAdmin;
    dbParam_admin.DbType = System.Data.DbType.Boolean;
    dbCommand.Parameters.Add(dbParam_admin);

    System.Data.IDataParameter dbParam_ansat = new System.Data.OleDb.OleDbParameter();
    dbParam_ansat.ParameterName = "@ansat";
    dbParam_ansat.Value = sAnsat;
    dbParam_ansat.DbType = System.Data.DbType.Boolean;
    dbCommand.Parameters.Add(dbParam_ansat);

    dbConnection.Open();
    dbCommand.ExecuteNonQuery();
    dbConnection.Close();

    DataGrid1.EditItemIndex = -1;
    hentBruger();
}
Avatar billede jaffafo Nybegynder
16. maj 2004 - 13:56 #1
datagrid1.databind() ?
Avatar billede krestionsen Nybegynder
16. maj 2004 - 14:00 #2
det har jeg gjort for jeg kan godt få vist mine data fra databasen, det er det med at opdatere fra databasen, som er problemet og det er den metode, som jeg har vedlagt.
Avatar billede krestionsen Nybegynder
17. juni 2004 - 10:49 #3
nope
Avatar billede krestionsen Nybegynder
17. juni 2004 - 10:49 #4
nope
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester