错误:'nvarchar'附近的语法不正确。必须声明标量变量“@”。 [英] Error: Incorrect syntax near 'nvarchar '. Must declare the scalar variable "@".

查看:116
本文介绍了错误:'nvarchar'附近的语法不正确。必须声明标量变量“@”。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

for (int j = 1; j < lineData.Length; j++)
                {
                    
                    query2.Append("insert into ");
                    query2.Append(tableName);
                    query2.Append(" values");
                    query2.Append("(");
                    string[] Row = lineData[j].Split('\t');


                    for (int k = 0; k < ((Row.Length) - 1); k++)
                    {
                        query2.Append("@");
                        query2.AppendFormat("[{0}]",fields[k]);
                     }
                    query2.Append(");");
                 SqlCommand command2 = new SqlCommand(query2.ToString(),myConnection);
                    
                    for (int k=0; k < (Row.Length - 1); k++)
                    {
                        StringBuilder parm = new StringBuilder();

                        parm.Append("\"");
                        parm.Append("@[");
                        parm.Append(fields[k]);
                        parm.Append("]");
                        parm.Append("\"");
                        Console.WriteLine(parm.ToString()+" "+Row[k]);
                        command2.Parameters.AddWithValue(parm.ToString(), Row[k]);
                        
                    } command2.ExecuteNonQuery();

                }

推荐答案

@ 仅限在使用 SqlParameter 时使用,当您构建字符串查询时,不应使用 @ [colname] 应该使用 [colname]



使用 SqlParameter 时,您不需要使用方括号 [] - > @varname 会做。



删除 @ 来自字符串查询的前缀。
The @ is only used when you are using the SqlParameter, when you are building string queries you should not be using @[colname] but should be using [colname].

When using the SqlParameter you don't need to use square brackets [] -> @varname will do.

Remove the @ prefix from your string queries.


这篇关于错误:'nvarchar'附近的语法不正确。必须声明标量变量“@”。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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