У меня проблемы с добавлением кавычек в строку запроса mySQL. Я принимал решения от других людей, которые, кажется, работают на них, но не работают для меня.

Что я пытаюсь:

 string sql3 = "SELECT wPrice FROM Vehicle WHERE VIN = \"" + (vehicleVIN) + "\"";

Что я все еще получаю:

        "SELECT wPrice FROM Vehicle WHERE VIN = \"58847722BRB\"

Где я ошибаюсь?

-2
asa 31 Дек 2017 в 01:17

2 ответа

Лучший ответ

Никогда не пишите SQL-запросы, в которых используются конкатенированные строки ... вместо этого используйте параметризованные запросы:

String query = "SELECT wPrice FROM Vehicle WHERE VIN = @vin";
String vin = "58847722BRB";

using (SqlCommand command = new SqlCommand(query, connection))
{
    command.Prepare();
    command.Parameters.AddWithValue("@vin", vin);

    // ...
}

хороший учебник для вас.

7
code4life 30 Дек 2017 в 23:11

Вы помещаете только один символ " после \, если вам нужны два символа ", вам понадобятся два \, как в \"\".

Вы также можете использовать необработанные строки, которые представляют собой строку, представленную @:

string strExample = @"This is a ""raw string""";
-2
Tommaso Belluzzo 31 Дек 2017 в 02:21