“System.Data.SqlClient.SqlException”类型的未经处理的异常在 System.Data.dll 中发生 其他信息: 'Use

mayuanyuan1625402632 2015-09-10 06:40:45
运行一段代码,总是出现这个问题,该怎么解决
public UserInfo SelectUser( string userName ,string password )
{
using ( SqlConnection conn = new SqlConnection(DbUtil.ConnString))
{
SqlCommand cmd = conn.CreateCommand();
cmd.CommandText = @"SELECT ID,UserName,PassWord,Email FROM USERS WHERW UserName=@UserName AND PassWord=@PassWord";
cmd.CommandType = CommandType.Text;
cmd.Parameters.Add(new SqlParameter("@UserName", userName));
cmd.Parameters.Add(new SqlParameter("@PassWord", password));
conn.Open();

SqlDataReader reader = cmd.ExecuteReader();
UserInfo user = null;
while (reader.Read())
{
if (user == null)
{ user = new UserInfo(); }
user.ID = reader.GetInt32(0);
user.UserName = reader.GetString(1);
user.PassWord = reader.GetString(2);//not successtion
if (!reader.IsDBNull(3))
{
user.Email = reader.GetString(3);
}
}
return user;
}
使用的数据库是用视图建立的,求大神帮忙!!
...全文
357 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
於黾 2015-09-11
  • 打赏
  • 举报
回复
WHERW
引用 3 楼 duanzi_peng 的回复:
WHERW -》WHERE
正解,我来晚了
ajianchina 2015-09-11
  • 打赏
  • 举报
回复
将你的sql字符串贴到查询编辑器里执行一下看看结果吧。
exception92 2015-09-11
  • 打赏
  • 举报
回复
WHERW -》WHERE
  • 打赏
  • 举报
回复
引用 2 楼 u012012237 的回复:
你可以打个断点,调试看看,你看看是不是传进来的userName为null,最好的方式还是调试。
求回复啊,指教一下我这个菜鸟吧
  • 打赏
  • 举报
回复
引用 6 楼 duanzi_peng 的回复:
[quote=引用 5 楼 mayuanyuan1625402632 的回复:]
[quote=引用 3 楼 duanzi_peng 的回复:]
WHERW

-》WHERE

又出现了一个问题,请帮帮忙[/quote]
把 错误的详细信息 贴出来看看先[/quote]
执行MessageBox.Show(reader.HasRows.ToString());返回为false,我明明在表里添加两行数据了,哪里的问题呢
  • 打赏
  • 举报
回复
引用 4 楼 Z65443344 的回复:
WHERW

[quote=引用 3 楼 duanzi_peng 的回复:]
WHERW

-》WHERE

正解,我来晚了[/quote]
又出现了一个问题,程序执行到29行的时候直接跳到41行,导致返回的user为空,reader.Read()返回为false,用
MessageBox.Show(reader.HasRows.ToString());测试结果是false,没有数据,但是我明明在表里添加了两行数据啊,哪里的问题呢
exception92 2015-09-11
  • 打赏
  • 举报
回复
引用 5 楼 mayuanyuan1625402632 的回复:
[quote=引用 3 楼 duanzi_peng 的回复:] WHERW -》WHERE
又出现了一个问题,请帮帮忙[/quote] 把 错误的详细信息 贴出来看看先
  • 打赏
  • 举报
回复
引用 3 楼 duanzi_peng 的回复:
WHERW

-》WHERE

又出现了一个问题,请帮帮忙
风云再起9310 2015-09-10
  • 打赏
  • 举报
回复
你可以打个断点,调试看看,你看看是不是传进来的userName为null,最好的方式还是调试。
  • 打赏
  • 举报
回复
再重申一下问题,运行上述代码时,到红字那一行就会出现 System.Data.SqlClient.SqlException”类型的未经处理的异常在 System.Data.dll 中发生 其他信息: 'UserName' 附近有语法错误。 这样的提示,请大神指教该怎么解决,数据库使用的是SQL server2008,数据表用的视图建立的

110,502

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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