繁体   English   中英

c#/ sql中某些关键字附近的语法不正确

[英]Incorrect syntax near some keyword in c# / sql

我有以下代码片段: -

protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
{
    string idd = Session["senderefirstname"].ToString();

    Query = " create table '"+ idd +"' (  senderid varchar(90) , recipientid     varchar(90),senderimage varchar(90), senderfirstname varchar(90), senderlastname varchar(90),    message varchar(max) ) ";
    adap = new SqlDataAdapter(Query, con);
    ds = new DataSet();
    adap.Fill(ds); 
    Response.Redirect("newmessage.aspx");
}

但我得到的错误是

“'noah'附近的语法不正确”

noah是存储在session["senderfirstname"]的字符串我收到此错误。 有谁可以指导?

使用CREATE TABLE时,不需要使用单引号。

只需使用create table "+ idd +"

看看CREATE TABLE (Transact-SQL)语法

但更重要的是,我根本不理解您的代码。 我认为您不需要使用SqlDataAdapterDataSet因为您的查询不返回任何内容。

只需使用SqlCommand.ExecuteNonQuery方法执行查询;

Query = " create table "+ idd +"(senderid varchar(90), recipientid varchar(90),senderimage varchar(90), senderfirstname varchar(90), senderlastname varchar(90),message varchar(max)) ";
SqlCommand cmd = new SqlCommand(Query, con);
cmd.ExecuteNonQuery();
Query = " create table "+ idd +" (  senderid varchar(90) , recipientid     varchar(90),senderimage varchar(90), senderfirstname varchar(90), senderlastname varchar(90),    message varchar(max) ) ";

我认为这应该有效。

尝试这个..

Query= "create table "+ idd +"(senderid varchar(90),recipientid varchar(90),senderimage varchar(90), senderfirstname varchar(90), senderlastname varchar(90),message varchar(max) ) ";

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM