如何在不使用C#中的主键的情况下进行更新? [英] How do I update without using primary key in C#?

查看:59
本文介绍了如何在不使用C#中的主键的情况下进行更新?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用选择链接按钮编程更新网格视图。我已将选择链接到另一个表单并添加更新按钮。



这是我的桌子



news_id \\ int \\ No \\ PRI \\Auto_increment

名称\\ varchar(500)\\ No

news_date \\Date \\ No

description \\Text \\ No

状态\\ int \ \否

created_date \\Date \\ No



这是我的代码:





protected void btnupdate_Click(object sender,EventArgs e)

{

尝试

{



SqlConnection con = new SqlConnection();

con.ConnectionString = ConfigurationManager.ConnectionStrings [constr]。ConnectionString;

con.Open();



SqlCommand cmd = new SqlCommand();

string ssql;

ssql =更新news_id的新闻= @ news_id(;

ssql = ssql +'+ Convert.ToString(txtname.Text)+';

ssql = ssql +,' + Convert.ToString(startdate)+';

ssql = ssql +,'+ Convert.ToString(txtdescription.Text)+';

ssql = ssql +,'+ Convert.ToString(drpstatus.SelectedValue)+';

ssql = ssql +,'+ Convert.ToString(lblcreateddate.Text)+ ';



ssql = ssql +);



cmd.CommandText = ssql;

cmd.CommandType = CommandType.Text;

cmd.Connection = con;

cmd.ExecuteNonQuery();

con.Close();







Bin dUserDetails();



}

catch(例外情况)

{



}

}



我不想使用news_id,因为我已经给了它作为自动增量,因此用户无法更新它。所以在我写的查询中,它不知道从哪里可以找到新闻。



请帮忙。

推荐答案

您需要news_id才能恢复到数据库。您不必通过将其分配给gridview的DataKeynames属性来向用户显示它。看看这个:

DataKeyNames [ ^ ]

使用gridview参考CRUB:insert-update-and-delete-using -grid-view-and-objectdatasource.aspx [ ^ ]
You will need the news_id for reverting back to the database. You do not have to show it to the user by assigning it to the "DataKeynames" property of the gridview. Check this out:
DataKeyNames[^]
Refer to this for CRUB using gridview: insert-update-and-delete-using-grid-view-and-objectdatasource.aspx[^]


这篇关于如何在不使用C#中的主键的情况下进行更新?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆