有没有一种方法可以在不使用参数化查询的情况下在C#.net程序的MySQL查询中使用@字符?

因此,例如在以下程序中

String s =
@"LOAD DATA LOCAL INFILE C:\foo.txt'
INTO TABLE Bar
(idFoo, @baa)
SET
baa = nullif(@baa,'')
";
MySqlCommand myCommand = new MySqlCommand(s, myConnection);
MySqlDataReader myReader = myCommand.ExecuteReader();


@baa被视为参数。即:就像打电话时使用的

myCommand.Parameters.Add("@baa", SqlDbType.VarChar );


但是在这种情况下,我不想将@baa用作参数。我该怎么写?

最佳答案

MySQL使用反引号字符来引用带有空格或其他特殊字符的令牌。例如,这用于处理带有空格等的字段名称。

因此,在您的代码中,您希望@baa引用字段名称的地方,在该名称周围放置反引号字符,如下所示:`@baa`

08-04 14:30