Построить SQL вручную с двоичными данными в Java

0

У меня есть небольшая программа, которая вручную создает запросы. В псевдокоде это делается в основном так:

string[] a = new string[x];
a[0] = "data 1";
a[1] = "data 2";
a[2] = "data 3";
string query = "insert into x (y) values(";
for i {
query += a[i] + ",";
}
query += ");";

Я знаю, что это использование является неоптимальным, и я должен сделать полную перезапись в какой-то момент. Теперь мне нужно добавить некоторые двоичные данные в a-массив.
Учитывая byte[] b, как я могу добавить его в запрос?
Я не пробовал, но я предполагаю, что b.toString() или просто query+=b приведет к повреждению моих данных?

Теги:
binary

1 ответ

5

Не вводите его в SQL для начала. Используйте параметризованный запрос: он будет намного проще и не будет подвержен атакам SQL-инъекций.

  • 0
    Я знаю я знаю. Называй меня ленивым, но сейчас мне бы очень хотелось "просто заставить его работать". Весь сценарий, который намного больше, в будущем нужно будет переписать с нуля, но мне бы очень хотелось, чтобы это работало без этого.
  • 3
    @Claes: сделать это правильно с параметризованным запросом, вероятно, будет проще, чем обмануть его, чтобы сделать это неправильно. Параметризованные запросы не сложно написать. Также обратите внимание, что если вам нужны двоичные данные, начинать со строки не очень хорошая идея.
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню