Kaip prisijungti prie „MySQL“ duomenų bazės naudojant „Java“

Kaip prisijungti prie „MySQL“ duomenų bazės naudojant „Java“

„Java“ teikia JDBC („Java“ duomenų bazės ryšys) kaip „Java SDK“ (programinės įrangos kūrimo rinkinio) dalis. Naudojant tai UGNIS , labai lengva prisijungti prie reliatyvinės duomenų bazės ir atlikti įprastas operacijas, pvz., užklausas, įterpti, atnaujinti ir ištrinti įrašus.





Nors pagrindinė JDBC API yra įtraukta į „Java“, norint prisijungti prie tam tikros duomenų bazės, tokios kaip „MySQL“ ar „SQL Server“, reikalingas papildomas komponentas, žinomas kaip duomenų bazės tvarkyklė. Ši duomenų bazės tvarkyklė yra programinės įrangos komponentas, kuris išverčia pagrindinius JDBC iškvietimus į tą duomenų bazę suprantamą formatą.





transliuoti žaidimus iš kompiuterio į televizorių

Šiame straipsnyje pažvelkime į prisijungimo prie „MySQL“ duomenų bazės išsamią informaciją ir kaip su ja atlikti keletą užklausų.





„MySQL“ duomenų bazės tvarkyklė

Kaip paaiškinta aukščiau, kad galėtumėte prisijungti prie „MySQL“ duomenų bazės, jums reikia „MySQL“ JDBC tvarkyklės. Tai vadinama „Connector/J“ tvarkykle ir ją galima atsisiųsti iš „MySQL“ svetainė čia.

Atsisiuntę ZIP (arba TAR.GZ) failą, išskleiskite archyvą ir nukopijuokite JAR failą mysql-connector-java-bin.jar į tinkamą vietą. Šis failas reikalingas norint paleisti bet kurį kodą, kuriame naudojama „MySQL JDBC“ tvarkyklė.



Pavyzdinės duomenų bazės kūrimas

Darant prielaidą, kad atsisiuntėte „MySQL“ duomenų bazę ir tinkamai nustatykite kur jūs turite prieigą prie jos, leiskite mums sukurti pavyzdinę duomenų bazę, kad galėtume ją naudoti prisijungdami ir vykdydami užklausas.

Prisijunkite prie duomenų bazės naudodami pasirinktą klientą ir paleiskite šiuos teiginius, kad sukurtumėte duomenų bazės pavyzdį.





create database sample;

Mums taip pat reikia vartotojo vardo ir slaptažodžio, kad galėtume prisijungti prie duomenų bazės (nebent norite prisijungti kaip administratorius, o tai apskritai yra bloga idėja).

Toliau sukuriamas vartotojas, vardu testatorius kas prisijungs prie „MySQL“ duomenų bazės iš tos pačios mašinos, kurioje ji veikia (pažymėta vietinis šeimininkas ), naudojant slaptažodį securepwd .





create user 'testuser'@'localhost' identified by 'securepwd';

Jei jungiatės prie duomenų bazės, veikiančios kitame kompiuteryje (pavadinimu nuotolinis ), turite naudoti šiuos ( nuotolinis gali būti pagrindinio kompiuterio pavadinimas arba IP adresas):

create user 'testuser'@'remotemc' identified by 'securepwd';

Dabar, kai vartotojo vardas ir slaptažodis buvo sukurti, turime suteikti prieigą prie anksčiau sukurtos duomenų bazės pavyzdžių.

grant all on sample.* to 'testuser'@'localhost';

Arba, jei duomenų bazė yra nuotolinė:

grant all on sample.* to 'testuser'@'remotemc';

Dabar turėtumėte patikrinti, ar galite prisijungti prie duomenų bazės kaip vartotojas, kurį ką tik sukūrėte naudodami tą patį slaptažodį. Po prisijungimo taip pat galite paleisti šias komandas, kad įsitikintumėte, jog visi leidimai yra teisingi.

create table joe(id int primary key auto_increment, name varchar(25));
drop table joe;

Nustatykite „Java“ klasės kelią

Dabar pažvelkime į detales, kaip prisijungti prie „MySQL“ iš „Java“. Pirmasis žingsnis yra įkelti duomenų bazės tvarkyklę. Tai daroma tinkamoje vietoje iškviečiant šiuos dalykus.

kaip pašalinti onedrive iš windows 8
Class.forName('com.mysql.jdbc.Driver');

Kodas gali sukelti išimtį, todėl galite ją sugauti, jei ketinate su ja susidoroti (pvz., Suformatuoti GUI klaidos pranešimą).

try {
Class.forName('com.mysql.jdbc.Driver');
} catch(ClassNotFoundException ex) {
// use the exception here
}

Labai dažnai šį kodą galima iškviesti statiniame klasės bloke, todėl programa nepavyksta iš karto, jei negalima įkelti tvarkyklės.

public class Sample
{
static {
try {
Class.forName('com.mysql.jdbc.Driver');
} catch(ClassNotFoundException ex) {
System.err.println('Unable to load MySQL Driver');
}
}
}

Žinoma, norint rasti tvarkyklę, programa turi būti iškviesta kartu su tvarkyklės JAR (atsisiųsta ir išgauta aukščiau), įtraukta į klasės kelią taip.

java -cp mysql-connector-java-bin.jar: ...

Prisijungimas prie „MySQL“ iš „Java“

Dabar, kai mes pašalinome informaciją apie „MySQL“ tvarkyklės įkėlimą iš „Java“, leiskite mums prisijungti prie duomenų bazės. Vienas iš būdų sukurti duomenų bazės ryšį yra naudoti DriverManager .

String jdbcUrl = ...;
Connection con = DriverManager.getConnection(jdbcUrl);

Ir kas yra jdbcUrl ? Tai rodo išsamią ryšio informaciją, įskaitant serverį, kuriame yra duomenų bazė, vartotojo vardą ir pan. Čia yra mūsų pavyzdžio URL pavyzdys.

String jdbcUrl = 'jdbc:mysql://localhost/sample?user=testuser&password=secrepwd';

Atkreipkite dėmesį, kad įtraukėme visus prisijungimui reikalingus parametrus, įskaitant pagrindinio kompiuterio pavadinimą ( vietinis šeimininkas ), vartotojo vardą ir slaptažodį. (Įtraukti tokį slaptažodį NĖRA gera praktika, alternatyvų ieškokite žemiau.)

Naudojant tai jdbcUrl , čia yra visa programa, skirta patikrinti ryšį.

public class Sample
{
static {
try {
Class.forName('com.mysql.jdbc.Driver');
} catch(ClassNotFoundException ex) {
System.err.println('Unable to load MySQL Driver');
}
}
static public void main(String[] args) throws Exception
{
String jdbcUrl = 'jdbc:mysql://localhost/sample?user=testuser&password=securepwd';
Connection con = DriverManager.getConnection(jdbcUrl);
System.out.println('Connected!');
con.close();
}
}

Atminkite, kad duomenų bazės ryšys yra brangus programos išteklius ir turi būti tinkamai uždarytas, kaip nurodyta aukščiau. Tačiau aukščiau pateiktas kodas neuždaro ryšio išimties atveju. Norėdami uždaryti ryšį įprastu ar nenormaliu išėjimu, naudokite šį modelį:

try(Connection con = DriverManager.getConnection(jdbcUrl)) {
System.out.println('Connected!');
}

Kaip minėta aukščiau, yra bloga idėja įterpti slaptažodį į JDBC URL. Norėdami tiesiogiai nurodyti vartotojo vardą ir slaptažodį, galite naudoti šią prisijungimo parinktį.

kaip pasidaryti asmeninius „snapchat“ filtrus
String jdbcUrl = 'jdbc:mysql://localhost/sample';
try(Connection con = DriverManager.getConnection(jdbcUrl, 'testuser', 'securepwd')) {
}

Duomenų bazės užklausa iš „Java“

Dabar, kai ryšys su duomenų baze yra užmegztas, pažiūrėkime, kaip atlikti užklausą, pvz., Užklausą duomenų bazės versijoje:

select version();

Užklausa „Java“ vykdoma taip. A Pareiškimas objektas sukuriamas ir užklausa vykdoma naudojant executeQuery () metodas, kuris grąžina a Rezultatų rinkinys .

String queryString = 'select version()';
Statement stmt = con.createStatement();
ResultSet rset = stmt.executeQuery(queryString);

Išspausdinkite versiją iš Rezultatų rinkinys kaip nurodyta toliau. 1 reiškia stulpelio indeksą rezultatuose, pradedant nuo 1.

while ( rset.next()) {
System.out.println('Version: ' + rset.getString(1));
}

Apdorojus rezultatus, objektus reikia uždaryti.

rset.close();
stmt.close();

Tai apima viską, ką reikia padaryti prisijungus prie „MySQL“ iš „Java“ ir atliekant paprastą užklausą.

Taip pat patikrinkite mūsų SQL komandos apgauti lapą .

Dalintis Dalintis „Tweet“ Paštu Ar gerai įdiegti „Windows 11“ į nesuderinamą kompiuterį?

Dabar galite įdiegti „Windows 11“ senesniuose kompiuteriuose naudodami oficialų ISO failą ... bet ar tai gera idėja?

Skaityti toliau
Susijusios temos
  • Programavimas
  • „Java“
  • SQL
Apie autorių Jay Sridhar(Paskelbti 17 straipsnių) Daugiau iš Jay Sridhar

Prenumeruokite mūsų naujienlaiškį

Prisijunkite prie mūsų naujienlaiškio, kad gautumėte techninių patarimų, apžvalgų, nemokamų el. Knygų ir išskirtinių pasiūlymų!

Norėdami užsiprenumeruoti, spustelėkite čia