首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

利用Sqlcommand连接数据库的有关问题

2013-09-15 
利用Sqlcommand连接数据库的问题private void button1_Click(object sender, EventArgs e){SqlCommand ss

利用Sqlcommand连接数据库的问题


    private void button1_Click(object sender, EventArgs e)
        {
            SqlCommand s;
            s = new SqlCommand();
            s.Connection = p;
            string str = string.Format("select  * from 用户表  where 用户ID={0} and 用户密码={1}",this.textBox1.Text,this.textBox2.Text);
            s.CommandText = str;
            s.CommandType = CommandType.Text;
            SqlDataReader sdr = s.ExecuteReader();
           // sdr.Read();
            if(sdr.Read())
            {
                MessageBox.Show("登录成功!");
                主窗体 p1 = new 主窗体();
                p1.Show();
            }
            else
            {
                MessageBox.Show("用户名与密码不匹配!");
            }
        }

错误提示:“System.Data.SqlClient.SqlException”类型的未经处理的异常出现在 System.Data.dll 中。

其他信息: 关键字 'and' 附近有语法错误。
求解!!!! 数据库 ,sqlcommand
------解决方案--------------------


ID和密码是什么类型的?可能存在缺少引号的问题。

不建议拼接SQL,容易有注入问题,应该采用参数化的SQL
[解决办法]
select  * from 用户表  where 用户ID='{0}' and 用户密码='{1}'",
[解决办法]
支持 楼上.
[解决办法]



曾经我就出现过这个问题
[解决办法]
单引号

要么你就直接写


string sql="select * from xxoo where id='"+TextBox1.Text+"'";

热点排行