Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Która funkcja wykonywania powinna być używana w łączniku MySQL/c++?

Każda z trzech funkcji ma określone zastosowanie, które można odgadnąć na podstawie ich zwracanego typu.

wykonaj

Ta funkcja jest najbardziej ogólna. Zwraca wartość logiczną, która jest wartością true, jeśli zapytanie zwraca wiele wyników, lub false, jeśli zapytanie nie zwraca nic lub liczby aktualizacji.

Jest to funkcja, której będziesz chciał użyć, jeśli chcesz, aby była jak najbardziej ogólna.

Jeśli zwróci true, będziesz chciał użyć ResultSet * getResultSet() aby uzyskać wyniki.
Jeśli zwróci false, będziesz chciał użyć uint64_t getUpdateCount() aby uzyskać liczbę zaktualizowanych wierszy.

executeQuery

Ta funkcja bezpośrednio zwraca ResultSet co jest przydatne dla SELECT i zakłada, że ​​rzeczywiście istnieje zestaw wyników do zwrócenia.

Jest to równoważne wywołaniu execute() po którym następuje getResultSet() .

Użyj tej funkcji, jeśli wiesz, że używasz kodu SQL, który zwraca wyniki, takie jak wiersze.

wykonaj aktualizację

Ta funkcja zwraca wartość całkowitą, która jest przydatna przy UPDATE oświadczenia i zakłada, że ​​zostanie zwrócona liczba aktualizacji.

Jest to równoważne wywołaniu execute() po którym następuje getUpdateCount() , chociaż z jakiegoś powodu typy zwracane są różne (int vs uint64_t).

Jest to funkcja używana podczas wykonywania instrukcji SQL modyfikujących dane i musisz wiedzieć, czy niektóre dane zostały zmodyfikowane.

Tak więc,

zunifikowany to w rzeczywistości execute , który może być użyty do wykonania dowolnego kodu SQL i odpowiedniej obsługi wyników, podczas gdy dwa pozostałe są wygodnymi opakowaniami, gdy wiesz, jakiego rodzaju zapytanie wykonujesz.

W twoim przypadku, ponieważ piszesz wrapper wokół języka SQL, każda z twoich funkcji wie, jaki rodzaj instrukcji wykona, więc użycie wygodnych funkcji pozwoli ci napisać krótszy kod.

Na przykład:

insert(), update(), delete() ---> executeUpdate()
select()                     ---> executeQuery()



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Wybierz wartość z określonej tabeli z klauzulą ​​`gdzie` w innej tabeli

  2. Jak ustawić domyślny pager dla klienta MySQL?

  3. BŁĄD 1366 (HY000):Nieprawidłowa wartość całkowita:„” dla kolumny „id” w wierszu 1

  4. Mysql_fetch_assoc nie działa poprawnie

  5. Musisz wypełnić jedną tabelę danymi z innej tabeli w tej samej bazie danych