Maison > base de données > Oracle > Oracle Java appelle une procédure stockée

Oracle Java appelle une procédure stockée

PHPz
Libérer: 2023-05-07 19:55:07
original
1343 Les gens l'ont consulté

La base de données Oracle est actuellement le système de gestion de bases de données relationnelles le plus utilisé au monde, et Java est l'un des langages de programmation les plus populaires et peut fonctionner sur toutes les plates-formes. Dans les applications pratiques, Java et Oracle sont généralement utilisés ensemble, vous devez donc savoir comment appeler des procédures stockées dans la base de données Oracle en Java.

Une procédure stockée est un ensemble d'instructions SQL prédéfinies qui peuvent être compilées par le système de gestion de base de données Oracle et stockées dans la base de données. Les procédures stockées peuvent être utilisées pour améliorer les performances de la base de données et constituent des outils très utiles pour les développeurs qui doivent effectuer des opérations en plusieurs étapes. Les programmeurs Java peuvent appeler des procédures stockées pour effectuer des opérations sur la base de données.

Les principales étapes pour qu'un programme Java appelle des procédures stockées Oracle sont les suivantes :

  1. Importer le pilote JDBC

Dans le programme Java, vous devez importer le pilote JDBC pour vous connecter à la base de données Oracle. Oracle fournit un pilote JDBC, oracle.jdbc.driver.OracleDriver. Le pilote JDBC doit être importé dans le chemin de classe du programme Java afin que le programme Java puisse l'utiliser pour obtenir la connexion à la base de données.

  1. Obtenir la connexion à la base de données

Dans le programme Java, vous devez obtenir la connexion à la base de données. Vous pouvez utiliser la classe DriverManager fournie par JDBC pour obtenir une connexion à la base de données. La méthode getConnection est utilisée pour obtenir la connexion à la base de données. Elle nécessite que la chaîne de connexion à la base de données, le nom d'utilisateur et le mot de passe soient transmis en paramètres.

  1. Préparer des instructions pour appeler des procédures stockées

Dans les programmes Java, vous devez préparer des instructions pour appeler des procédures stockées. Dans la base de données Oracle, les procédures stockées sont appelées via la classe CallableStatement. La classe CallableStatement est une sous-classe de la classe PreparedStatement qui gère les appels de procédures stockées. Elle contient les méthodes requises pour appeler les procédures stockées.

  1. Paramètres de liaison

Dans un programme Java, vous devez lier les paramètres de la procédure stockée. Les paramètres peuvent être liés aux appels de procédure stockée à l'aide de la méthode setXXX de la classe CallableStatement. Le XXX dans la méthode setXXX représente le type de paramètres liés à la méthode, notamment int, String, double, etc.

  1. Exécuter la procédure stockée

Une fois que vous avez préparé l'instruction pour appeler la procédure stockée et lié les paramètres, vous pouvez exécuter la procédure stockée. Dans un programme Java, vous pouvez utiliser la méthodeexecute ou la méthodeexecuteQuery de la classe CallableStatement pour exécuter une procédure stockée.

  1. Traitement des valeurs de retour

Les procédures stockées peuvent renvoyer certaines valeurs, telles que des curseurs, des valeurs de paramètres, etc. Dans un programme Java, vous devez utiliser la méthode getXXX de la classe CallableStatement pour obtenir la valeur renvoyée par la procédure stockée.

Ce qui suit est un exemple de programme Java montrant comment appeler une procédure stockée dans une base de données Oracle :

import java.sql.CallableStatement ;
import java.sql.Connection ;
import java.sql.DriverManager ; sql.Types ;

public class CallPLSQL {

public static void main(String[] args) throws Exception {

// 步骤1:导入JDBC驱动
Class.forName("oracle.jdbc.driver.OracleDriver");

// 步骤2:获取数据库连接
Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:ORCL", "user", "password");

// 步骤3:准备调用存储过程的语句
String sql = "{call proc_example(?,?,?)}"; // proc_example是存储过程名
CallableStatement cs = conn.prepareCall(sql);

// 步骤4:绑定参数
cs.setInt(1, 123); // 绑定参数1为整型123
cs.registerOutParameter(2, Types.VARCHAR); // 绑定参数2为字符串类型
cs.registerOutParameter(3, Types.NUMERIC); // 绑定参数3为数字类型

// 步骤5:执行存储过程
cs.execute();

// 步骤6:处理返回值
String strResult = cs.getString(2);// 获取返回值
int iResult = cs.getInt(3);

// 输出返回值
System.out.println("strResult:" + strResult);
System.out.println("iResult:" + iResult);

// 关闭连接和语句
cs.close();
conn.close();
Copier après la connexion
}

}

Dans l'exemple de programme Java ci-dessus, nous avons appelé une procédure stockée nommée proc_example. Cette procédure stockée a trois paramètres, le premier est le paramètre d'entrée, les deuxième et troisième sont les paramètres de sortie. Le programme lie le premier paramètre à 123 et lie les types des deuxième et troisième paramètres à l'aide de la méthode registerOutParameter. Une fois que le programme a exécuté la procédure stockée, utilisez la méthode getXXX pour obtenir la valeur renvoyée par la procédure stockée.

Résumé

Dans les programmes Java, l'appel de procédures stockées Oracle est une technologie très utile. Grâce à l'utilisation du pilote JDBC et de la classe CallableStatement, les procédures stockées dans la base de données Oracle peuvent être facilement appelées. Si vous devez gérer un grand nombre d'opérations de base de données dans un programme Java, la technologie d'appel de procédures stockées sera un outil très utile. Dans le même temps, les programmeurs Java doivent également se familiariser avec la syntaxe des procédures stockées et les méthodes de liaison des paramètres de la base de données Oracle.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal