Jython - JDBC

Jython utilise le zxJDBC packagequi fournit un wrapper Python facile à utiliser autour de JDBC. zxJDBC relie deux normes:JDBC est la plate-forme standard pour l'accès aux bases de données en Java, et DBI est l'API de base de données standard pour les applications Python.

ZxJDBC fournit une interface conforme à la norme DBI 2.0 avec JDBC. Plus de 200 pilotes sont disponibles pour JDBC et ils fonctionnent tous avec zxJDBC. Des pilotes hautes performances sont disponibles pour toutes les principales bases de données relationnelles, notamment:

  • DB2
  • Derby
  • MySQL
  • Oracle
  • PostgreSQL
  • SQLite
  • SQL Server et
  • Sybase.

Le package ZxJDBC peut être téléchargé depuis https://sourceforge.net/projects/zxjdbc/ ou http://www.ziclix.com/zxjdbc/. L'archive téléchargée contient le ZxJDBC.jar, qui doit être ajouté à la variable d'environnement CLASSPATH.

Nous avons l'intention d'établir une connectivité de base de données avec la base de données MySQL. Pour cela, le pilote JDBC pour MySQL est requis. Téléchargez leMySQL J connector à partir du lien suivant - https://dev.mysql.com/downloads/connector/j/ et incluez le connecteur mysql java-5.1.42-bin.jar dans le CLASSPATH.

Connectez-vous au serveur MySQL et créez une table étudiant dans la base de données de test avec la structure suivante -

Champ Type Largeur
Nom Varchar dix
Âge Int 3
Des marques Int 3

Ajoutez-y quelques enregistrements.

Nom Âge Des marques
Ravi 21 78
Ashok 20 65
Anil 22 71

Créez le script Jython suivant comme dbconnect.py.

url = "jdbc:mysql://localhost/test"
user = "root"
password = "password"
driver = "com.mysql.jdbc.Driver"
mysqlConn = zxJDBC.connect(url, user, password, driver)
mysqlConn = con.cursor()
mysqlConn.execute(“select * from student)
for a in mysql.fetchall():
   print a

Exécutez le script ci-dessus à partir de l'invite Jython. Les enregistrements dans le tableau des élèves seront répertoriés comme indiqué ci-dessous -

(“Ravi”, 21, 78)
(“Ashok”, 20, 65)
(“Anil”,22,71)

Ceci explique la procédure d'établissement de JDBC en Jython.