IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Interfaces de programmation Oracle Discussion :

[ADO] Comment insérer une chaîne de grande taille (ORA-01461)


Sujet :

Interfaces de programmation Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    148
    Détails du profil
    Informations personnelles :
    Localisation : Cameroun

    Informations forums :
    Inscription : Mars 2006
    Messages : 148
    Par défaut [ADO] Comment insérer une chaîne de grande taille (ORA-01461)
    Bonjour à Tous

    Je tiens a préciser que je suis débutant sous oracle donc prière d’être compréhensif avec moi.

    Mon problème est le suivant :
    Je développe une application web avec Visual Studio et je me sers d’oracle 8i comme SGBD. Je souhaite enregistrer dans la BD des donnes de grande taille genre 10 000 caractères. Au départ j’ai choisi pour ma colonne le Type LONG qui suite à mes recherches me permettrait de stocker près de 2 Giga de caractères.

    Quand je cherche à insérer un texte plutôt long dans la colonne j’obtiens l’erreur suivante.

    « ORA-01461: une valeur 'LONG' ne peut être liée que dans une colonne de type 'LONG' »

    Mais lorsque je diminue la taille de mon texte l’ajout s’effectue normalement. Ma question est donc la suivante. Comment corrigez cette erreur pour pouvoir insère une chaîne de caractère de très grande taille. J’ai essayé avec le type Clob mais j’obtenais la même erreur.

    En faisant des recherches sur la question j’ai trouver ces liens ou certains ont la solution à leur Problème mais moi je n’y comprends pas grand-chose.
    http://www.developpez.net/forums/arc...p/t-22243.html
    http://www.developpez.net/forums/arc...p/t-51678.html

    Merci de me venir en aide.

    PS : Désolé si je ne suis pas dans le Bon topic et merci de m’orienté.

  2. #2
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    ce serait pas mal d'avoir la commande qui génère l'erreur

    Sinon, tu as regardé du coté des CLOB ?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    148
    Détails du profil
    Informations personnelles :
    Localisation : Cameroun

    Informations forums :
    Inscription : Mars 2006
    Messages : 148
    Par défaut
    Citation Envoyé par orafrance Voir le message
    ce serait pas mal d'avoir la commande qui génère l'erreur

    Sinon, tu as regardé du coté des CLOB ?
    Sa me fait déjà un grand bien que tu réagisses.

    L’erreur se trouve qu moment ou j’exécute la commande insert avec une chaîne de plus de 4000 caractères. Mais quand je diminue le nombre de caractère l’insertion ou l’update s’effectue.
    J’ai changer de Type, initialement j’avais un type Long ; j’ai mis un type clob pour faire des tests mais jusqu’ici sa ne passe toujours pas

  4. #4
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    on n'a toujours pas la commande d'update

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    148
    Détails du profil
    Informations personnelles :
    Localisation : Cameroun

    Informations forums :
    Inscription : Mars 2006
    Messages : 148
    Par défaut
    Pour la Mise à Jour de mes Données sous VS 2005 j’utilise un SqlDataSource configurer de la sorte.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:cn_web_portal %>"
            DeleteCommand='DELETE FROM "ACTU" WHERE "CODE_ACTU" = :CODE_ACTU' InsertCommand='INSERT INTO "ACTU" ("CODE_ACTU", "TITRE1", "CHAPEAU", "CORPS1", "OWNER1", "DATE_PUBLICATION") VALUES (:CODE_ACTU1, :TITRE1, :CHAPEAU1, :CORPS1, :OWNER1, :DATE_PUBLICATION1)'        ProviderName="<%$ ConnectionStrings:cn_web_portal.ProviderName %>" SelectCommand='SELECT CODE_ACTU, TITRE1, CHAPEAU, CORPS1, OWNER1, DATE_PUBLICATION, VALIDE FROM ACTU WHERE (VALIDE = 0) ORDER BY DATE_PUBLICATION asc'
            UpdateCommand='UPDATE "ACTU" SET "TITRE1" = :TITRE1, "CHAPEAU" = :CHAPEAU, "CORPS1"= :CORPS1,  "OWNER1" = :OWNER1, "DATE_PUBLICATION" = :DATE_PUBLICATION WHERE "CODE_ACTU" = :CODE_ACTU'>
    Avec mes paramètres définis ainsi

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    
    <UpdateParameters>
                <asp:Parameter Name="TITRE1" Type="String" />
                <asp:Parameter Name="CHAPEAU" Type="String" />
                <asp:Parameter Name="CORPS1" Type="String" />            <asp:Parameter Name="OWNER1" Type="String" />
                <asp:Parameter Name="DATE_PUBLICATION" Type="DateTime" />
               
                <asp:Parameter Name="CODE_ACTU" Type="Decimal" />
            </UpdateParameters>
    c’est la colonne nommé Corp1 qui de type Clob au niveau d’oracle.

    Je me demande si le fait que le paramètre corp1 de la requete update soit de type « string » pourrait etre à l’origine de ce Problème ? si oui quel type de données pourrais je utiliser pour ce paramètre ?

    Merci.

  6. #6
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    oui, je pense que string n'est pas suffisamment grand

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 10/01/2007, 15h52
  2. comment costruire une chaîne de connexion ADO runtime
    Par lassad dans le forum Bases de données
    Réponses: 2
    Dernier message: 11/10/2005, 14h16
  3. [Crystal Reports 9] comment insérer une image dans Détails
    Par VVE dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 22/10/2003, 17h06
  4. Réponses: 3
    Dernier message: 28/09/2003, 10h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo