System.Data.SqlClient.SqlException:'Category'附近的语法不正确

问题描述 投票:-1回答:2
public partial class admin_category : System.Web.UI.Page
{
    SqlConnection con = new SqlConnection(@"Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\Database.mdf;Integrated Security=True");
    SqlDataSource sd = new SqlDataSource();

    protected void Page_Load(object sender, EventArgs e)
    {

        this.UnobtrusiveValidationMode = System.Web.UI.UnobtrusiveValidationMode.None;

        con.Open();

    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        SqlCommand cmd = new SqlCommand(" insert into Men Category (CategoryName) values (@CategoryName)",con);
        cmd.Parameters.AddWithValue("@CategoryName",Cat_nm.Text);

        cmd.ExecuteNonQuery();
        con.Close();

        Response.Write("<script>alert('Category Added Sucessfully');</script>");

    }
}
c# asp.net
2个回答
0
投票

在表/列/等中有空格。出于这个原因,名称通常是一个坏主意。查询很容易变得难以分析,与数据库交互的其他工具可能会遇到各种各样的问题。最好删除空间。

如果名称由于某种原因必须有空格,则可以将其标识为带方括号的数据库实体:

insert into [Men Category] (CategoryName) values (@CategoryName)

一般来说,明确使用这些括号来识别您的表/列/等是一个好习惯。无论如何,空格或其他:

insert into [Men Category] ([CategoryName]) values (@CategoryName)

-1
投票

你需要[] for Men Category插入[Men Category](CategoryName)值('some things')

© www.soinside.com 2019 - 2024. All rights reserved.