2011-08-24 2 views
0

Dans l'exemple de code suivant, je souhaite mettre à jour la table mais ce n'est pas le cas. c'est mettre à jour mon DataGrid. Je veux que la description soit 'Care' sur la table. Ceci est juste un exemple de projet pour apprendre à utiliser les jeux de données.Comment mettre à jour une table à l'aide du dataset?

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.UI; 
using System.Web.UI.WebControls; 
using System.Data.SqlClient; 
using System.Data; 

public partial class _Default : System.Web.UI.Page 
{ 

SqlCommand cmd; 
SqlDataAdapter da; 
DataSetPK ds; 
protected void Page_Load(object sender, EventArgs e) 
{ 
    SqlConnection cn = new SqlConnection("server=ORDERS;uid=OG;pwd=OG;database=PRO2"); 
    cmd = new SqlCommand("select * from [OG].[TAP_C_ROOM_TABLES]", cn); 
    da = new SqlDataAdapter(cmd); 
    // dsProducts tds = new dsProducts(); 
    ds = new DataSetPK(); 

    da.Fill(ds, ds.TAP_C_ROOM_TABLES.TableName); 

    dgok.DataSource = ds; 
    dgok.DataBind(); 

    } 
    protected void btnInsert_Click(object sender, EventArgs e) 
    { 


    DataRow row = null; 
    // DataSetPK ds = new DataSetPK(); 
    row = ds.TAP_C_ROOM_TABLES.NewTAP_C_ROOM_TABLESRow(); 
    row[0] = "T1"; 
    row[1] = "a"; 

    row[2] = "test"; 
    ds.TAP_C_ROOM_TABLES.BeginInit(); 
    ds.TAP_C_ROOM_TABLES.Rows.Add(row); 
    ds.TAP_C_ROOM_TABLES.EndInit(); 
    ds.TAP_C_ROOM_TABLES.AcceptChanges(); 
    ds.AcceptChanges(); 

    da.Update(ds.TAP_C_ROOM_TABLES); 

    da.Update(ds, ds.TAP_C_ROOM_TABLES.TableName); 


    dgok.DataSource = ds; 
    dgok.DataBind(); 


    } 
    protected void btnUpdate_Click(object sender, EventArgs e) 
    { 
    ds.TAP_C_ROOM_TABLES.Rows[0][2]="Care"; 
    ds.TAP_C_ROOM_TABLES.AcceptChanges(); 
    ds.AcceptChanges(); 
    da.Update(ds, ds.TAP_C_ROOM_TABLES.TableName); 

    dgok.DataSource = ds; 
    dgok.DataBind(); 

    } 
    } 
+1

Encaisser certaines de vos questions. Vous acceptez une question en cliquant sur le symbole tjek sur l'une des réponses – Kimtho6

Répondre

0

Si vous voulez mettre à jour la table, vous devrez exécuter la requête SQL correspondante.

Et si vous utilisez le serveur SQL, je pense que la commande SQL pour renommer une colonne serait

sp_RENAME 'TableName.[OldColumnName]' , '[NewColumnName]', 'COLUMN' 
+0

Je suis plus intéressant dans la mise à jour des données. ici par exemple, pourquoi cela ne fonctionne pas? da.Update (ds, ds.TAP_C_ROOM_TABLES.TableName); – Booksman

+1

Vous devez ajouter une commande de mise à jour string upd = @ "mettre à jour l'employé set firstname = @firstname où id = @id"; SqlCommand cmd = nouvelle SqlCommand (upd, cn); da.UpdateCommand = cmd; Et puis vous exécutez le da.Update (ds, ds.tablename); – roymustang86

+1

Cela devrait vous aider http://www.java2s.com/Code/CSharp/Database-ADO.net/UpdatetableusingSqlDataAdapter.htm – roymustang86

Questions connexes