Wpis z mikrobloga

#java #sql #programowanie #programista15k

PreparedStatement preparedStatement = conn.prepareStatement("SELECT dziennik_elektroniczny.haslo_i_login.ID_user FROM dziennik_elektroniczny.haslo_i_login WHERE login = ? AND haslo = ?");
preparedStatement.setString(1, login);
preparedStatement.setString(2, haslo);

Stworzyłem takie oto zapytanie do bazy danych. Jak zrobić aby tam gdzie są znaki zapytania były cudzysłowowa? \? nie działa.
  • 11
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@dupogisaga: trochę nie odpowiem na twoje pytanie
Ale czy w twojej bazie zakładasz istnienie użytkowników o takim samym loginie ale innym haśle? bo twoje zapytanie trochę to zakłada
  • Odpowiedz
@dugopisa Nie rozumiem twojego pytania. Co znaczy cydzysłowowa? Jak byś chciał, żeby wyglądało twój wynikowy stmt, czy nie tak:

SELECT X.ID_user FROM X WHERE login = 'test_login' AND haslo = 'test_login'
Jeśli tak to robisz to dobrze i co będzie między ' to zależy jak zadeklarujesz zmienne login i haslo

@Nicarim ten stmt tego nie zakłada. Takie założenia trzeba robić w ddl tabeli.
@krasnoludkolo JOOQ jest podobno spoko, ale
  • Odpowiedz
@krasnoludkolo: Tu nie jest problem czy piszesz proste sql czy złożone, bo do tego jOOQ jest też fajny, a zależy do jakich baz danych chcesz się połączyć. Tu masz spis jaka licencja z jaką bazą danych się zintegruje. I tak jeśli używasz PostgreSQL czy MariaDB to spokojnie Ci wystarczy. Natomiast jeśli masz projekt chmurowy i chcesz użyć baz danych z AWS albo Azure to już musisz zabulić sporą kasę jak
  • Odpowiedz
@Paszczoworek: a jeśli używam postgresa w cloudzie to pod które bym się łapał?

JOOQ ma te zaletę, że ponieważ on 'tylko' generuje sqle można bardzo fajnie optymalizować sobie wykorzystanie połączeń do bazy. Po prostu daje większą kontrole ( ͡° ͜ʖ ͡°)
  • Odpowiedz
@krasnoludkolo: To jest dobre pytanie. Jaki cloud? Jaki postgres? Jaka wersja jOOQ?

Tak to prawda, też my dlatego chcieliśmy go użyć ( ͡° ͜ʖ ͡°). Wszystkie narzędzia robią jeszcze coś więcej. Przy okazji czego używasz do zarządzania pulą połączeń do db?
  • Odpowiedz