通过一个表的字段向令一个表更新字段

zilong4460072 2008-11-24 09:13:32
表的字段: room(roomnumb,price,entrydays,staydays,empty)
yuding(roomnumb,entrydays,staydays)
把表yuding绑定到Grid View1上后
用RowCommand怎么样把预定表的entrydays,staydays的字段更新到room表里(room与yuding的roomnumb字段是同一个)
我在Grid View1添加了BUtton按钮 ,RowCommand事件代码 :

protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
int index = Convert.ToInt32(e.CommandArgument);
string roomnumb=GridView1.DataKeys[index].Value.ToString();

string strconnection=ConfigurationManager.ConnectionStrings["123"].ConnectionString;
SqlConnection conn = new SqlConnection(strconnection);
string sql = "set select * from yuding where roomnumb='"+roomnumb+"'" ;
SqlCommand cmd = new SqlCommand(sql,conn);
cmd.ExecuteReader();
conn.Open();
}

不知道应该怎样来写代码!
...全文
115 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
qinhl99 2008-11-24
  • 打赏
  • 举报
回复
up
criedshy 2008-11-24
  • 打赏
  • 举报
回复

设置DataKeyNames="roomnumb,entrydays,staydays"
<asp:GridView ID="GridView1" runat="server"  AllowSorting="True"  DataKeyNames="roomnumb,entrydays,staydays"  OnRowCommand="GridView1_RowCommand"/>

<asp:TemplateField HeaderText="修改">
<ItemTemplate>
<asp:Button ID="btnPLC" Text="修改" CommandName="update" CommandArgument="<%# ((GridViewRow)Container).RowIndex %>" runat="server" />
</ItemTemplate>
</asp:TemplateField>


后台代码

protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "update")
{
int index = Convert.ToInt32(e.CommandArgument);
string roomnumb=GridView1.DataKeys[index].Values["roomnumb"].ToString();
string entrydays=GridView1.DataKeys[index].Values["entrydays"].ToString();
string staydays=GridView1.DataKeys[index].Values["staydays"].ToString();
string strconnection=ConfigurationManager.ConnectionStrings["123"].ConnectionString;
SqlConnection conn = new SqlConnection(strconnection);
conn.Open();
string sql = "update room set staydays='"+staydays+"',entrydays='"+entrydays+"' where roomnumb="+roomnumb;
SqlCommand cmd = new SqlCommand(sql,conn);
cmd.ExecuteNonQuery();
conn.Close();


}
}
wuyq11 2008-11-24
  • 打赏
  • 举报
回复
通过 select * from yuding where roomnumb='"+roomnumb+"'
先查询entrydays,staydays
再执行update room set entrydays='',staydays=''where roomnumb='"+roomnumb+"'
一弗楚 2008-11-24
  • 打赏
  • 举报
回复
string sql=string.Format("update room set entrydays='{0}',staydays='{1}' where roomnumb='{2}'",当前列行entrydays值,当前列行staydays值,当前列行roomnumb值)
jiang_jiajia10 2008-11-24
  • 打赏
  • 举报
回复

update table set roomnumb = (select * from yuding where roomnumb='"+roomnumb+"')

62,073

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧