在線等,,以下多選刪除報錯,

shixianyong 2007-08-24 01:42:37
將 varchar 數值 'GridView1.DataKeys[gvr.DataItemIndex].Value' 轉換成資料型別為 int 的資料行語法錯誤。

protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
string connStr = ConfigurationManager.ConnectionStrings["BTS"].ConnectionString;
SqlConnection conn = new SqlConnection(connStr);
conn.Open();
DataSet ds = new DataSet();
SqlCommand comm = new SqlCommand();
SqlDataAdapter sqlad = new SqlDataAdapter();
comm.Connection = conn;
comm.CommandText = "select * from bts";
sqlad.SelectCommand = comm;
//Response.Write(sqlad.SelectCommand.CommandText);
sqlad.Fill(ds, "bts");
GridView1.DataSource = ds.Tables["bts"];
GridView1.DataBind();
}
}
protected void Button3_Click(object sender, EventArgs e)
{
foreach (GridViewRow gvr in GridView1.Rows)
{
CheckBox ch = (CheckBox)gvr.FindControl("ItemCheckBox");
if (ch.Checked)
{
//Ret2.Text += "<li>GridView1 您选择的是(键值):" + GridView1.DataKeys[gvr.DataItemIndex].Value.ToString();
string connStr = ConfigurationManager.ConnectionStrings["BTS"].ConnectionString;
SqlConnection conn = new SqlConnection(connStr);
conn.Open();
DataSet ds = new DataSet();
SqlCommand comm = new SqlCommand();
SqlDataAdapter sqlad = new SqlDataAdapter();
string sql;
sql = "delete from bts where au_id= 'GridView1.DataKeys[gvr.DataItemIndex].Value'";
comm.Connection = conn;
comm.CommandText = sql;
comm.ExecuteNonQuery();

}
}
}

protected void CheckAll(object sender, EventArgs e)
{
CheckBox cbx = (CheckBox)sender;
foreach (GridViewRow gvr in GridView1.Rows)
{
CheckBox ch = (CheckBox)gvr.FindControl("ItemCheckBox");
ch.Checked = cbx.Checked;
}
}
...全文
223 14 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
freeboy827 2007-08-24
  • 打赏
  • 举报
回复
调试一下就解决了,好歹也那么多裤衩
foxfab 2007-08-24
  • 打赏
  • 举报
回复
...............................................................................................................................................................................................................................................................................
BearRui 2007-08-24
  • 打赏
  • 举报
回复
try:

GridView1.DataKeys[gvr.DataItemIndex][0].ToString();
icefeiji 2007-08-24
  • 打赏
  • 举报
回复
单步跟踪下,看看值到底是多少,不就清楚了么~
yan53125 2007-08-24
  • 打赏
  • 举报
回复
是真裤衩么..穿那么多了
belldandy11 2007-08-24
  • 打赏
  • 举报
回复
sql = "delete from bts where au_id= 'GridView1.DataKeys[gvr.DataItemIndex].Value'";

大哥 好歹也5个裤头了........别告诉我不知道怎么改了哈
sendling 2007-08-24
  • 打赏
  • 举报
回复
sql = "delete from bts where au_id= “+ int.Parse(GridView1.DataKeys[gvr.DataItemIndex].Value)+“"; 试下
songle912 2007-08-24
  • 打赏
  • 举报
回复
sql = "delete from bts where au_id= 'GridView1.DataKeys[gvr.DataItemIndex].Value'";
额滴娘亲呀,这样怎么可以
GridView1.DataKeys[gvr.DataItemIndex].Value用加号链接起来
不然你的au_id不是永远等于‘'GridView1.DataKeys[gvr.DataItemIndex].Value'’这个字符串吗??
songle912 2007-08-24
  • 打赏
  • 举报
回复
真是
wuhan_dotnet 2007-08-24
  • 打赏
  • 举报
回复
能直接获取? GridView1.DataKeys[gvr.DataItemIndex].Value.ToString();

不需要强转?((DataKey)GridView1.DataKeys[gvr.DataItemIndex]).Value.ToString(); 这样吧```
jobine 2007-08-24
  • 打赏
  • 举报
回复
sql = "delete from bts where au_id= '" + GridView1.DataKeys[gvr.DataItemIndex].Value.ToString() + "'";
usxue 2007-08-24
  • 打赏
  • 举报
回复
而且在你删除数据的时候,为啥还要定义:
DataSet ds = new DataSet();
SqlDataAdapter sqlad = new SqlDataAdapter();
?????
zhenjiaobing 2007-08-24
  • 打赏
  • 举报
回复
SF.
usxue 2007-08-24
  • 打赏
  • 举报
回复
GridView1.DataKeys[gvr.DataItemIndex].Value的值是多少?

62,243

社区成员

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

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

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

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