Insertion d'une image dans BLOB Oracle 10g
J'essaie d'insérer une image dans un champ BLOB dans une des signatures qui je puis sélectionnez à partir de la table et de rendre un rapport. Je n'arrive pas à comprendre comment faire pour obtenir l'image dans la table. J'ai fait un insert cependant, quand je n'afficher que le chemin vers l'image a été montré sur le rapport, et non l'image elle-même.
Table
CREATE TABLE esignatures (
office NUMBER(6,0) NOT NULL,
username VARCHAR2(10) NOT NULL,
iblob BLOB NOT NULL
)
Instruction INSERT (SQL)
INSERT INTO esignatures
VALUES (100, 'BOB', utl_raw.cast_to_raw('C:\pictures\image1.png'));
Je sais pour sûr que je suis de l'insertion de la Chaîne emplacement sous la forme d'une valeur HEX comment puis-je obtenir de l'image HEX valeur dans la table, alors quand j'ai rendu, je vais voir l'image en cours d'affichage.
source d'informationauteur devdar | 2014-02-18
Vous devez vous connecter pour publier un commentaire.
Vous ne pouvez pas accéder à un répertoire local de pl/sql. Si vous utilisez bfile, vous définissez un répertoire (créer le répertoire) sur le serveur où Oracle est en cours d'exécution lorsque vous aurez besoin de mettre vos images.
Si vous souhaitez insérer une poignée d'images à partir de votre ordinateur local, vous aurez besoin d'un client à côté de l'app pour ce faire. Vous pouvez écrire votre propre, mais je l'utilise généralement Crapaud pour cela. Dans le schéma du navigateur, cliquez sur la table. Cliquez sur l'onglet données, et de frapper signe + pour ajouter une ligne. Double-cliquez sur la colonne BLOB, et un assistant s'ouvre. L'extrême gauche de l'icône charger une image dans le blob:
SQL Developer est une fonctionnalité similaire. Voir la "Charge" lien ci-dessous:
Si vous avez besoin de tirer des images sur le fil, vous pouvez le faire à l'aide de pl/sql, mais ce n'est pas simple. Tout d'abord, vous aurez besoin de l'installation liste de contrôle d'accès d'accès (pour des raisons de sécurité) pour permettre à l'utilisateur de tirer sur le fil. Voir cet article pour en savoir plus sur la configuration des ACL.
En supposant ACL est terminée, vous me tirez l'image comme ceci:
Espère que ça aide.
Vous devriez faire quelque chose comme ceci:
1) créer un répertoire d'objet ce qui serait point à côté serveur accessible dossier
2)
Placez votre fichier dans le dossier du système d'exploitation répertoire des points de l'objet à
3)
Donner requis des privilèges d'accès à Oracle schéma de ce qui va charger les données à partir du fichier dans la table:
4) Utilisation BFILENAME, EMPTY_BLOB fonctions et package DBMS_LOB (exemple NON testé - être des soins) comme ci-dessous::
Après cela, vous obtenez le contenu de votre fichier dans la colonne BLOB et les récupérer à l'aide de Java par exemple.
edit: Une lettre manquante: il doit être LOADFROMFILE.