Foros del Web » Programando para Internet » ASP Clásico »

Campo memo demasiado largo

Estas en el tema de Campo memo demasiado largo en el foro de ASP Clásico en Foros del Web. Hola. Bueno tengo una base de datos y en la tabla documentos tengo los suguientes campos: Titulo (Texto) Documento (Memo) IdTipo (Numero) El caso es ...
  #1 (permalink)  
Antiguo 04/10/2005, 11:08
 
Fecha de Ingreso: noviembre-2004
Mensajes: 3
Antigüedad: 20 años, 5 meses
Puntos: 0
Campo memo demasiado largo

Hola. Bueno tengo una base de datos y en la tabla documentos tengo los suguientes campos:
Titulo (Texto)
Documento (Memo)
IdTipo (Numero)

El caso es que cuando intento ingresar en el campo memo algo de mas de 65535 caracteres me da un error .

He intentando descomponerlo en varios registros pero esto tambien me da error:

Codigo
dim sDocumento
sDocumento = Request.Form("Documento")


¿Hay alguna manera de arreglarlo?

Saludos
  #2 (permalink)  
Antiguo 04/10/2005, 14:37
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
Podrias dividirlo en varios campos no registros, pero me es curioso que te marque erro en un sDocumento = Request.Form("Documento"), ¿que error te marca?
  #3 (permalink)  
Antiguo 05/10/2005, 10:29
 
Fecha de Ingreso: noviembre-2004
Mensajes: 3
Antigüedad: 20 años, 5 meses
Puntos: 0
Hola. Aqui te adjunto el error

Tipo de error:
Objeto Request, ASP 0107 (0x80004005)
La información procesada sobrepasa el límite permitido.
/listas/paginas/Documentos/altas.asp, line 39


Tipo de explorador:
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.1.4322)

Página:
POST 248731 bytes to /listas/paginas/Documentos/altas.asp

Datos de POST:
select=1&txtTitulo=aaa&txtDocumento=%3C%21DOCTYPE+ html+PUBLIC+%22-%2F%2FW3C%2F%2FDTD+XHTML+1.0+Transitional%2F%2FEN% 22+%22http%3A%2F%2Fwww.w3.org%2FTR%2Fxhtml1%2FDTD% 2Fxhtml1-transitional.dtd%22%3E%0D . . .

Trozo codigo:

if request.Form("Submit") = "Insertar" then
dim sDocumento,nSelect,sTitulo
'iDocumento = len(Request.Form("txtDocumento"))
sDocumento = Request.Form("txtDocumento") 'Linea 39
nSelect = Request.Form("select")
sTitulo = Request.Form("txtTitulo")
abrirRecordset()
if len(sDocumento) < 65535 then
rsDocInsertar.addnew
rsDocInsertar("IdTipo") = nSelect
rsDocInsertar("Titulo")= sTitulo
rsDocInsertar("Documento")= sDocumento
rsDocInsertar.update
else
' response.write("No Insertado")
msgbox("No Insertado")
end if
cerrarRecordset()
end if

<%


Saludos
  #4 (permalink)  
Antiguo 05/10/2005, 10:48
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 23 años, 3 meses
Puntos: 146
Interesante, nunca me ha pasado.

Pero aca hay una solución (de hecho son dos con el BinaryRead): http://lula.pro.br/artigo.asp?codigo=533&autor=Lula

Hay una tercera, que es utilizar un substituto del objeto Request, pero esa la dejamos mejor por si el partir desde js el contenido del memo, no te funcionara.

Saludos
  #5 (permalink)  
Antiguo 05/10/2005, 12:34
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 3 meses
Puntos: 98
Otro mas:

http://www.pstruh.cz/tips/detpg_largepost/
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #6 (permalink)  
Antiguo 07/10/2005, 10:03
 
Fecha de Ingreso: noviembre-2004
Mensajes: 3
Antigüedad: 20 años, 5 meses
Puntos: 0
Hola.

Ya he probado las soluciones que me habeis dicho y me funcionan.

Gracias y saludos
  #7 (permalink)  
Antiguo 07/10/2005, 18:05
Avatar de Gurrutello  
Fecha de Ingreso: enero-2002
Ubicación: Ontario,Toronto [Canada]
Mensajes: 2.017
Antigüedad: 23 años, 3 meses
Puntos: 6
hola
ademas de poner este enlace donde encontraras varias formas segun lenguaje de programacion:
http://www.tutores.org/tutores/code/...riteria=maximo

en tu codigo asp debes de poner lo siguiente:
<%
if tu_consulata=len(request("tu_consulta"))<10000 then
response.write"maximo de caracteres exedidos"
else
'todo ok
end if
%>
donde 10000 es el numero de caracteres permitidos, lo cual tienes que avisarlo al visitante, asi te evitaras ese problema
por otro lado no se cuantos caracteres permite el " MEMO " de Access
Saludos
__________________
Un Saludo
www.tutores.org
Asp | Php | Javascript | Perl | Coldfusion | Flash | +- 2000 codigos
  #8 (permalink)  
Antiguo 09/10/2005, 13:31
 
Fecha de Ingreso: septiembre-2005
Mensajes: 20
Antigüedad: 19 años, 7 meses
Puntos: 0
El campo memo depende de la version de access
para el 97 creo que era sobre 60mil
para el 2000 90mil
para el 2003 ... aun no me ha petado :)
pero creo recordar que es sobre 999.999
  #9 (permalink)  
Antiguo 09/10/2005, 13:33
 
Fecha de Ingreso: septiembre-2005
Mensajes: 20
Antigüedad: 19 años, 7 meses
Puntos: 0
NOTA
Los espacios en blanco se cuentan como caracteres :)
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:49.