Comment utiliser setClob() dans PreparedStatement inJDBC
Voici l'info:
- J'ai une Chaîne
- Je veux insérer un enregistrement dans une table avec la Chaîne de caractères dans une colonne dont la
type de données estCLOB
. - Je voudrais utiliser
setClob()
méthode de la preparedstatement.
Donc ma question est de savoir comment créer un Clob
objet de cette Chaîne, de sorte que je
pouvez utiliser setClob()
méthode.
Merci d'avance,
Naveen
Regardez les
Connection
javadoc. Il y a un createClob()
méthode.OriginalL'auteur user3369905 | 2014-03-02
Vous devez vous connecter pour publier un commentaire.
Si vous voulez écrire une Chaîne de colonne CLOB suffit d'utiliser
PreparedStatement.setString
.Si vous voulez savoir comment créer un CLOB de Chaîne, ce qu'il est
OriginalL'auteur Evgeniy Dorofeev
Vous pouvez créer le clob à partir d'un objet de connexion comme suit
Ou vous pouvez essayer le code alternatif comme suit :
Merci pour la notification. Oui, vous avez raison. C'était mon insouciance. J'ai corrigé.
OriginalL'auteur Visruth
Pour CLOB il est de la Chaîne déjà. Donc, il suffit d'utiliser .setString() et cela devrait fonctionner. Une chose à propos de ORACLE jdbc si vous l'utilisez, comme le CLOB paramètre d'ENTRÉE sera la dernière dans votre déclaration, surtout avec un ensemble important de données.
Exemple:
Comme vous pouvez le voir, le CLOB_COL est de type CLOB et devrait être le dernier de sorte que lorsque
vous n' .setString(5) et 5 est le dernier index.
OriginalL'auteur TA Nguyen
Aujourd'hui, j'ai eu un problème avec un Clob champ parce que j'ai été en utilisant "setString" pour régler le paramètre, mais ensuite, j'ai eu cette erreur en testant avec une très longue chaîne: "setString ne peut traiter que des Chaînes de moins de 32766 caractères"
J'ai utilisé de la connexion.createClob mais il m'a donné cette exception:
Alors à la recherche de cette exception, j'ai trouvé ce
à l'aide de CLOB en java jeter exception et de la accepté de répondre (à l'aide de setCharacterStream au lieu de setClob) a travaillé pour moi
Copier/coller à partir de la accepté de répondre (de sorte que tous les crédits sont pour a_horse_with_no_name )
OriginalL'auteur valepu
J'ai eu une variation spécifique de cette question, d'insérer un clob dans une base de données Oracle à partir du code java en cours d'exécution sur que db. Aucune des réponses ici assez travaillé pour moi.
J'ai finalement trouvé la solution, l'astuce étant d'utiliser oracle.sql.CLOB
Ce l'approche que j'ai découvert:
OriginalL'auteur Dave Lyndon