列名'XX'无效???

birdwings 2007-05-30 03:05:53
想用ASP.net作个二级联动菜单,设第一个下拉框为A,第二个下拉框为B,也就是B中的值随选中的A的值,而变..
调用函数采用:
private void DropDownList1_SelectedIndexChanged(object sender, System.EventArgs e)
{
string memberpart = DropDownList1.SelectedItem.Text.ToString();
DataSet ds2 = back1.MemberName(memberpart);
DropDownList2.DataSource = ds2.Tables[0].DefaultView;
DropDownList2.DataTextField = "Username";
DropDownList2.DataValueField = "Id";
DropDownList2.DataBind();
}
设了中断试了下,假设我在A框也就是DropDownList1中选的是"美国";memberpart="美国";没有问题,继续往下..
back1类中:
public static DataSet MemberName(string memberpart)
{
string Sql = "select Username,Id from U_login where U_part=" + memberpart;

DataSet dss = SQLHelper.ExecuteDataset(Sql);
return dss;
}
没有问题,一切正常,继续往下..
SQLHelper类中:
public static DataSet ExecuteDataset(string aaa)
{
SqlCommand cmd = new SqlCommand(aaa);
cmd.Connection = ICon.Conn;
cmd.CommandType = CommandType.Text;
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet dss = new DataSet();
da.Fill(dss);
ICon.Close();
return dss;
}
看了aaa的值,正常,sql语句传过来了,就是"select Username,Id from U_login where U_part=美国"
但是在da.Fill(dss);的地方报错了..
错误如下:
列名 '美国' 无效。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Data.SqlClient.SqlException: 列名 '美国' 无效。

源错误:


行 46: SqlDataAdapter da = new SqlDataAdapter(cmd);
行 47: DataSet dss = new DataSet();
行 48: da.Fill(dss);
行 49: ICon.Close();
行 50: return dss;

这是什么情况,怎么回事啊???
...全文
741 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
birdwings 2007-05-30
  • 打赏
  • 举报
回复
我知道了...我把数据类型换成varchar就一切正常了....谢谢大家帮忙..我想结贴,可老出错..
birdwings 2007-05-30
  • 打赏
  • 举报
回复
我是楼猪,大家再来帮一下,问题还没解决..
果然是SQL出问题了,我去查询分析器里直接试了一下还是出错..
U_part ntext 16

select * from U_login where U_part=美国
服务器: 消息 207,级别 16,状态 3,行 1
列名 '美国'无效。

select * from U_login where U_part='美国'
服务器: 消息 306,级别 16,状态 1,行 1
不能比较或排序 text、ntext 和 image 数据类型,除非使用 IS NULL 或 LIKE 运算符。

select * from U_login where U_part="美国"
服务器: 消息 207,级别 16,状态 3,行 1
列名 '美国'无效。

我郁闷了..这三种都报错..我是SQLSERVER是不是坏了??????
haoyuzhou009 2007-05-30
  • 打赏
  • 举报
回复
将sql拿出来去库里运行以下 看能出来不
lwjvince 2007-05-30
  • 打赏
  • 举报
回复
晕 这么快!~
lwjvince 2007-05-30
  • 打赏
  • 举报
回复
select Username,Id from U_login where U_part='美国'

james_hunter 2007-05-30
  • 打赏
  • 举报
回复
大家动作好快……
kkun_3yue3 2007-05-30
  • 打赏
  • 举报
回复
"select Username,Id from U_login where U_part='美国'"
"select Username,Id from U_login where U_part=N'美国'"
james_hunter 2007-05-30
  • 打赏
  • 举报
回复
sql语句应该是
"select Username,Id from U_login where U_part='美国'"
Ericcsdn 2007-05-30
  • 打赏
  • 举报
回复
这么长的看不完,帮顶
hegang888888888 2007-05-30
  • 打赏
  • 举报
回复
'美国'

62,047

社区成员

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

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

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

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