Salut,
Quel est l'équivalent du type TEXT de MySQL en oracle ?? J'ai trouvé le type LONG(taille) qui permet de stocker 2G de caractères, mais il prend un paramètrescontrairement au type TEXT de mysql qui ne prend aucun paramètre !
Salut,
Quel est l'équivalent du type TEXT de MySQL en oracle ?? J'ai trouvé le type LONG(taille) qui permet de stocker 2G de caractères, mais il prend un paramètrescontrairement au type TEXT de mysql qui ne prend aucun paramètre !
salut, j'ai jamais fait de mysql, mais je pense que cela doit etre varchar2(xx)
C'est le type CLOB :
http://helyos.developpez.com/lob/
http://sheikyerbouti.developpez.com/...?page=Chap9#L9
le pb c'est que je developpe avec ASP, et ce dernier ne peut pas extraire les données de type CLOB
Varchar2(xx) ne peut pas dépasser 256 (je pense, mais ce qui est sûr c'est que c'est très limité pour mon cas)
bon j'ai trouvé une fonction qui permet de le faire. Cependant j'ai un autre pb : la colonne de type CLOB n'a pas accepté une chaine de 4400 caractères !!! Je croyais que la limite c'était 2 ou 4G !!
Salut il y'a un post similaire mais sur Oracle ca t'aidera peut etre :
http://www.developpez.net/forums/sho...d.php?t=331759
Le problème ne vient pas de la limite du CLOB mais de la longueur limite d'une requête. Est-ce que tu peut passer par des variables BIND en ASP ?
dls mais j'ai rien comprisque veux-tu dire par longueur limite de la requête ??!! c'est quoi les variables BIND ?? sachant que ma page ASP fait un insert !!
Voici l'erreur :
sachant que la taille de la chaine est 4559 !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 UPDATE theme SET titre='test _8',chapeau='test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 test 1234 ' WHERE id=3 Microsoft OLE DB Provider for ODBC Drivers error '80004005' [Oracle][ODBC][Ora]ORA-01704: constante de chaîne trop longue /admin/update_action.asp, line 18
Tu n'a pas le droit de mettre des constantes de plus de 4000 caractère dans une requête, c'est là qu'est le problème...
Dans des langage comme java ou PL/SQL, tu fais ta requête en 2 temps. Tu prépare une chaine de requête avec des paramètres (en java ça s'appelle "prepareStatement" avec des '?' à l'interieur). Et ensuite tu exécute ta requête en lui donnant des variable passées en paramètre, c'est ce qu'on appelle des variable "BIND". Malheureusement, je ne crois pas que ça existe en ASP, et meme que ça ne passe pas en ODBC, d'ou ma question...
Je ne suis pas spécialiste, mais je crois qu'Oracle fourni une DLL pour traiter les LOB (attention, j'ai entendu dire qu'il y avait des versions bugguées.....)
Personnellement, je me suis déja pris la tete avec une problèmatique du genre en ASP, et j'ai honteusement contourné le problème en saucissonant mes chaines de caractère dans une table intermédiaire contenant des champs de moins de 4000 caractère....![]()
Envoyé par remi4444
ta solution est tout a fait légitime, ASP est tout sauf un langage de programmation, c'est nul comme langage web !!
En effet, je ne crois pas que ASP puisse proposer un truc comme les preparedStatement de Java !!
MERCI pour tes explications![]()
Partager