Lucrul cu mysql, note ale unei veverițe

Stabilirea unei conexiuni
Pe scurt, tehnologia de lucru cu baza de date este:
Înregistrare driver pentru o bază de date, utilizați clasa DriverManager pentru a prelua Connection obiect, reprezentând conectarea la baza de date, baze de date SQL trimite-operatorului folosind un obiect Statement, și pentru a primi rezultatele de interogare prin utilizarea obiect ResultSet.






Pentru a stabili o conexiune, trebuie să specificați o adresă URL în formularul jdbc: subprotocol: // host: port / databasename

Solicitări de procesare
Trimiterea cererilor
Pentru a lucra cu interogări, trebuie mai întâi să creați un obiect de declarație din conn conn. Când obiectul Declarație este complet, trebuie să apelați metoda lui close () pentru a distruge obiectul:

Dacă datele cererii trebuie să fie preprocesate (dacă interogarea conține ghilimele), atunci trebuie să creați un PreparedStatement. Va înconjura toate caracterele speciale după cum este necesar. Metoda setString () este necesară pentru a seta valori care trebuie înlocuite în interogare în loc de semne de întrebare.

Declarația conține două metode principale:
int executeUpdate (String sql) - pentru interogări care nu returnează nimic (de exemplu, INSERT, CREATE). Metoda returnează numărul de rânduri modificate.






ResultSet executeQuery (String sql) - pentru interogări care returnează ceva (de exemplu, SELECT). Această metodă nu returnează numărul de rânduri afectate, ele trebuie considerate ele însele dacă este necesar.
Există o altă metodă de executare (). care poate gestiona ambele tipuri de cereri. Dacă execute () returnează true, atunci programul a primit rezultatul, care poate fi obținut după cum urmează: s.ResultSet (). Dacă este falsă, instrucțiunea a fost o comandă de actualizare și puteți obține numărul de rânduri afectate: s.getUpdateCount ().

Rezultatele procesării
Pentru a obține rezultatul unei operații, trebuie să creați un obiect ResultSet și să îl traversați într-o buclă (se întoarce câte o linie pe rând) utilizând metoda următoare (). Când ați terminat utilizarea obiectului ResultSer, trebuie să îl închideți. Metode utile ResultSet:
boolean next () - mergeți la linia următoare a rezultatului
int getInt (int columnIndex), String getString (int columnIndex) - obține valoarea câmpurilor
boolean wasNull () - pentru a afla dacă valoarea coloanei a fost goală
ResultSetMetaData getMetaData () - returnează numărul, tipul și proprietățile coloanelor

Eroare de manipulare
Metode de clasă SQLException:
getMessage () - obțineți mesajul standard de eroare
getErrorCode () - obțineți codul de eroare
getSQLState () - obțineți mesajul suplimentar trimis de serverul de bază de date
Pe lângă erori, puteți procesa și avertismente. Clasa SQLWarning este derivată din clasa SQLException.
Avertismentele, spre deosebire de excepții, nu sunt generate. În timpul executării comenzii SQL, toate avertismentele provenite de la server sunt stocate în lista legată de obiecte SQLWarning. Puteți primi avertismente folosind metodele getWarnings () - obțineți primul avertisment și getNextWarning () - obțineți următorul avertisment.







Trimiteți-le prietenilor: