请帮忙。 '(无论我插入什么数据)'附近的语法不正确' [英] Please Help. Incorrect Syntax Near '(Whatever Data I Insert)'

查看:62
本文介绍了请帮忙。 '(无论我插入什么数据)'附近的语法不正确'的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

namespace Company
{
    public partial class Form2 : Form
    {
        SqlConnection con = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\User\Documents\Company.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True");
        SqlCommand cmd;
        SqlDataAdapter da;
        DataSet ds;
        public Form2()
        {
            InitializeComponent();
        }
        private void button1_Click(object sender, EventArgs e)
        {
            con.Open();
            cmd = new SqlCommand("insert into Login(Username,Password,Phone_No) values('"+textBox1.Text+"','"+textBox2.Text+"','"+textBox3 .Text+"'",con);
            cmd. ExecuteNonQuery();
            con.Close();
            MessageBox.Show("User successfully added");
            this.Hide();
            Form1 form1 = new Form1();
            form1.Show();
        }
    }
}

推荐答案

你应该使用参数化查询来解决这个问题。你现在拥有的东西让你容易受到SQL注入。



你想做什么类似这样的事情:

You should be using parameterized queries to handle this. What you currently have leaves you susceptible to SQL injection.

You want to do something like this:
cmd = new SqlCommand("INSERT INTO Login(Username,Password,Phone_No) VALUES (@UserName,@Password,@Phone_No)",con);
cmd.Parameters.AddWithValue("@UserName",textBox1.Text);
cmd.Parameters.AddWithValue("@Password",textBox2.Text);
cmd.Parameters.AddWithValue("@Phone_No",textBox3.Text);
            cmd. ExecuteNonQuery();


这篇关于请帮忙。 '(无论我插入什么数据)'附近的语法不正确'的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆