_Feng_Nain
2020-03-08 17:37
采纳率: 100%
浏览 198

C#在做的注册"英文"用户名varchar无法转换int,求大佬,是我那个环节出现问题?

在做的注册"英文"用户名varchar无法转换int
System.Data.SqlClient.SqlException:“在将 varchar 值 'asdxzc' 转换成数据类型 int 时失败。”
代码:
SqlCommand cmd = new SqlCommand(@"select userId from userInfo where userId='" + Text_Name.Text + "'", conn);//在数据库中查找userName表中的的name字段数据
conn.Open();
string Flag = Convert.ToString(cmd.ExecuteScalar());

图片说明

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • 2004wave 2020-03-08 20:31
    已采纳

    SqlCommand cmd = new SqlCommand(@"select userId from userInfo where userId='" + Text_Name.Text + "'", conn);//在数据库中查找userName表中的的name字段数据

    应该是 查询用错字段了,查询用户名 是 userNmae字段把,userId是 用户ID、数据库是int类型的吧
    修改成:
    SqlCommand cmd = new SqlCommand(@"select userNmae from userInfo where userNmae='" + Text_Name.Text + "'", conn);

    点赞 打赏 评论
  • blownewbee 2020-03-08 17:46

    userId不是一个整数,是asdxzc

    点赞 打赏 评论
  • 王氏八旺 2020-03-09 15:27

    楼上说的对啊,
    1.你数据库看下这个userid的数据类型
    2.断点把SQL拿出来到数据库跑一次就知道了

    点赞 打赏 评论

相关推荐 更多相似问题