JDBC (Java DataBase Connectivity) to podstawowy interfejs API, który umożliwia interakcję z serwerami baz danych SQL poprzez wykonywanie instrukcji SQL przy użyciu języka programowania Java.
Przygotowane oświadczenie jest nieco bardziej rozbudowaną wersją oświadczenia i zawsze powinno być co najmniej tak szybkie i łatwe w obsłudze jak oświadczenie. Przygotowane oświadczenie można sparametryzować Większość relacyjnych baz danych obsługuje zapytanie JDBC / SQL w czterech krokach: Analizuj przychodzące zapytanie SQL Skompiluj zapytanie SQL Zaplanuj / zoptymalizuj ścieżkę akwizycji …
Zastanawiałem się, czy istnieje bardziej elegancki sposób wykonywania zapytań IN () za pomocą JDBCTemplate Springa. Obecnie robię coś takiego: StringBuilder jobTypeInClauseBuilder = new StringBuilder(); for(int i = 0; i < jobTypes.length; i++) { Type jobType = jobTypes[i]; if(i != 0) { jobTypeInClauseBuilder.append(','); } jobTypeInClauseBuilder.append(jobType.convert()); } Co jest dość bolesne, ponieważ …
Do wykonywania zapytań do bazy danych mysql używam przygotowanych instrukcji. Chcę wdrożyć funkcję wyszukiwania opartą na pewnego rodzaju słowach kluczowych. W tym celu muszę użyć LIKEsłowa kluczowego, tyle wiem. I już wcześniej korzystałem z przygotowanych instrukcji, ale nie wiem, jak tego użyć, LIKEponieważ z poniższego kodu gdzie miałbym dodać 'keyword%'? …
Mam ogólną metodę Java z następującą sygnaturą metody: private static ResultSet runSQLResultSet(String sql, Object... queryParams) Otwiera połączenie, buduje za PreparedStatementpomocą instrukcji sql i parametrów w queryParamstablicy o zmiennej długości, uruchamia je, buforuje ResultSet(w a CachedRowSetImpl), zamyka połączenie i zwraca zbuforowany zestaw wyników. Mam obsługę wyjątków w metodzie, która rejestruje błędy. …
Zastanawiam się, czy istnieje sposób na wykonywanie asynchronicznych wywołań do bazy danych? Na przykład wyobraź sobie, że mam duże żądanie, którego przetworzenie zajmuje bardzo dużo czasu, chcę wysłać żądanie i otrzymać powiadomienie, gdy żądanie zwróci wartość (przekazując Listener / callback lub coś w tym rodzaju). Nie chcę blokować czekania na …
Zainstalowałem Oracle 11g Express Edition Release 2 w moim 64-bitowym systemie operacyjnym Windows 7 i próbowałem uruchomić program JDBC, po czym pojawił się następujący błąd: java.sql.SQLException: Listener refused the connection with the following error: ORA-12505, TNS:listener does not currently know of SID given in connect descriptor at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:412) at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:531) …
Mam metodę pobierania użytkowników z bazy danych za pomocą JDBC: public List<User> getUser(int userId) { String sql = "SELECT id, name FROM users WHERE id = ?"; List<User> users = new ArrayList<User>(); try { Connection con = DriverManager.getConnection(myConnectionURL); PreparedStatement ps = con.prepareStatement(sql); ps.setInt(1, userId); ResultSet rs = ps.executeQuery(); while(rs.next()) { …
Muszę znaleźć moją nazwę użytkownika MySQL. Kiedy otwieram klienta wiersza poleceń MySQL, pyta mnie tylko o hasło. Nie pamiętam swojej nazwy użytkownika. A do połączenia z JDBC potrzebuję adresu URL, hosta i numeru portu. Gdzie znajdę to wszystko?
Mam tabelę bazy danych zawierającą daty (`date` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00'). Używam MySQL. Z programu czasami dane są przekazywane do bazy danych bez daty. Tak więc wartość daty jest automatycznie przypisywana, 0000-00-00 00:00:00 gdy wywoływana jest tabela danych z kolumną daty, w której występuje błąd ...'0000-00-00 00:00:00' can …
Wiem, że PreparedStatements unikają / zapobiegają iniekcji SQL. Jak to się dzieje? Czy kwerenda w postaci ostatecznej, która została utworzona przy użyciu PreparedStatements, będzie ciągiem znaków, czy w inny sposób?
Uczę się Java EE i pobrałem zaćmienie szklistą rybką dla tego samego. Widziałem kilka przykładów, a także przeczytałem dokumentację Oracle, aby dowiedzieć się wszystkiego o Java EE 5. Połączenie z bazą danych było bardzo proste. Otworzyłem dynamiczny projekt sieciowy, utworzyłem sesyjny EJB, użyłem EntityManager i za pomocą metod get uzyskałem …
Jestem nowy w JDBC i próbuję nawiązać połączenie z bazą danych MySQL. Używam sterownika Connector / J, ale nie mogę znaleźć parametrów połączenia JDBC dla mojej Class.forName()metody.
Po prostu spędziłem zbyt dużo czasu w ciągu dnia, próbując znaleźć błędy podczas podłączania fabrycznej fasoli JNDI. Problem okazał się taki, że zamiast tego ... <bean id="someId" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiName" value="java:comp/env/jdbc/loc"/> </bean> Właściwie to napisałem ... <bean id="someId" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiName" value="jdbc/loc"/> </bean> Wnioskuję, że java:comp/env/być może odwołuje się do …
Otrzymuję wyjątek ORA-01000 SQL. Mam więc pytania z tym związane. Czy maksymalna liczba otwartych kursorów jest dokładnie związana z liczbą połączeń JDBC, czy też są one związane z instrukcją i obiektami zestawu wyników, które utworzyliśmy dla pojedynczego połączenia? (Korzystamy z puli połączeń) Czy istnieje sposób skonfigurowania liczby obiektów instrukcji / …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.