Campo text

30/12/2003 - 15:48 por Jorge Martinez | Informe spam
Necesito llamar a un store procedure pasándole como parámetro el contenido
de un campo de una tabla de mi base de datos (SQL 7.0) del tipo text, estoy
dando vueltas sobre esto y no le encuentro la forma, alguien me puede dar
una mano, gracias.



Saludos

Felices Fiestas y un prospero Año Nuevo

Preguntas similare

Leer las respuestas

#11 Adrian Garcia
31/12/2003 - 03:19 | Informe spam
Quizas asi?

EXEC mistoredprocedure @miparametro= READTEXT pub_info.pr_info @val 0
2147483647

"Jorge Martinez" wrote in message
news:u$
Gracias por la respuesta, debo estar a un pelito de poder lograrlo , pero


de
esta forma al llamar a mi store ,éste no se da cuenta de los datos que le
estoy pasando y me pide el parámetro, "el store requiere el parámetro


@body
que no se ha espeficficado..."





PD:Saludos a D. Seara de parte de un alumno del 1er curso de .NET que dió


en
BS

"Adrian Garcia" escribió en el mensaje
news:
> Existe en T-SQL las funciones TEXTPTR que devuelve un puntero a una
columna
> del tipo IMAGE, TEXT y NTEXT. Junto a la funcion READTEXT creo que es
> posible hacer lo que deseas. He aqui un ejemplo:
>
> SET TEXTSIZE 2147483647USE pubs
> DECLARE @val varbinary(16)
> SELECT @val = textptr(pr_info) FROM pub_info
> WHERE pub_id = '0736'
> EXEC mistoredprocedure (READTEXT pub_info.pr_info @val 0


2147483647) --Me
> aseguro que le estoy pasando hasta la longitud maxima posible.Este


codigo
> hay que probarlo, no le tengo mucha fe que digamos...SaludosAdrianNDSOft
>
>
> "Jorge Martinez" wrote in message
> news:e%
> > Ahí está el problema, en mi campo text yo tengo más de 8000 caracteres


y
> por
> > eso no puedo trabajar con una variable del tipo varchar, sino ya lo
> hubiera
> > tenido resuelto, el inconveniente se presenta efectivamente al tratar
con
> > dato del tipo text...
> >
> > "ulises" escribió en el mensaje
> > news:00fa01c3cef2$bc9bf210$
> > Asumiendo que el campo texto almacena solo caracteres
> > hasta un máximo 8000 caracteres puedes asignar a una
> > variable tipo char el campo, algo como :
> >
> > declare @campo varchar(8000)
> > select @campo = campo from tablatexto where clave = 1
> > exec lista @campo
> >
> > si el campo texto almacena campos binarios no sabría como
> > hacerlo.
> >
> > Saludos,
> > Ulises
> >
> >
> > >Ok, y como asigno el contenido de mi campo en la base de
> > datos a la
> > >variable @campo ?
> > >
> > >Disculpas si es obvio y no lo veo..
> > >
> > >
> > >"ulises" escribió en el
> > mensaje
> > >news:09b501c3cee9$9fe2f960$
> > >El tipo text también puede ser usado como parámetro en un
> > >store procedure en SQL2K y SQL7, puedes probar con :
> > >
> > >create procedure lista ( @campo text )
> > >as
> > >select @campo
> > >
> > >exec lista 'esto es un campo texto'
> > >
> > >
> > >esto es un campo texto
> > >
> > >(1 row(s) affected)
> > >
> > >en todo caso indica como lo estas ejecutando y que mensaje
> > >te envia.
> > >
> > >Saludos,
> > >Ulises
> > >
> > >>Necesito llamar a un store procedure pasándole como
> > >parámetro el contenido
> > >>de un campo de una tabla de mi base de datos (SQL 7.0)
> > >del tipo text, estoy
> > >>dando vueltas sobre esto y no le encuentro la forma,
> > >alguien me puede dar
> > >>una mano, gracias.
> > >>
> > >>
> > >>
> > >>Saludos
> > >>
> > >>Felices Fiestas y un prospero Año Nuevo
> > >>
> > >>
> > >>.
> > >>
> > >
> > >
> > >.
> > >
> >
> >
>
>


Respuesta Responder a este mensaje
#12 Jorge Martinez
31/12/2003 - 14:45 | Informe spam
No, todavía no funciona, de esta forma me da un "error de sintaxis derca de
readtext.."
"Adrian Garcia" escribió en el mensaje
news:
Quizas asi?

EXEC mistoredprocedure @miparametro= READTEXT pub_info.pr_info @val 0
2147483647

"Jorge Martinez" wrote in message
news:u$
> Gracias por la respuesta, debo estar a un pelito de poder lograrlo ,


pero
de
> esta forma al llamar a mi store ,éste no se da cuenta de los datos que


le
> estoy pasando y me pide el parámetro, "el store requiere el parámetro
@body
> que no se ha espeficficado..."
>
>
>
>
>
> PD:Saludos a D. Seara de parte de un alumno del 1er curso de .NET que


dió
en
> BS
>
> "Adrian Garcia" escribió en el mensaje
> news:
> > Existe en T-SQL las funciones TEXTPTR que devuelve un puntero a una
> columna
> > del tipo IMAGE, TEXT y NTEXT. Junto a la funcion READTEXT creo que es
> > posible hacer lo que deseas. He aqui un ejemplo:
> >
> > SET TEXTSIZE 2147483647USE pubs
> > DECLARE @val varbinary(16)
> > SELECT @val = textptr(pr_info) FROM pub_info
> > WHERE pub_id = '0736'
> > EXEC mistoredprocedure (READTEXT pub_info.pr_info @val 0
2147483647) --Me
> > aseguro que le estoy pasando hasta la longitud maxima posible.Este
codigo
> > hay que probarlo, no le tengo mucha fe que


digamos...SaludosAdrianNDSOft
> >
> >
> > "Jorge Martinez" wrote in message
> > news:e%
> > > Ahí está el problema, en mi campo text yo tengo más de 8000


caracteres
y
> > por
> > > eso no puedo trabajar con una variable del tipo varchar, sino ya lo
> > hubiera
> > > tenido resuelto, el inconveniente se presenta efectivamente al


tratar
> con
> > > dato del tipo text...
> > >
> > > "ulises" escribió en el mensaje
> > > news:00fa01c3cef2$bc9bf210$
> > > Asumiendo que el campo texto almacena solo caracteres
> > > hasta un máximo 8000 caracteres puedes asignar a una
> > > variable tipo char el campo, algo como :
> > >
> > > declare @campo varchar(8000)
> > > select @campo = campo from tablatexto where clave = 1
> > > exec lista @campo
> > >
> > > si el campo texto almacena campos binarios no sabría como
> > > hacerlo.
> > >
> > > Saludos,
> > > Ulises
> > >
> > >
> > > >Ok, y como asigno el contenido de mi campo en la base de
> > > datos a la
> > > >variable @campo ?
> > > >
> > > >Disculpas si es obvio y no lo veo..
> > > >
> > > >
> > > >"ulises" escribió en el
> > > mensaje
> > > >news:09b501c3cee9$9fe2f960$
> > > >El tipo text también puede ser usado como parámetro en un
> > > >store procedure en SQL2K y SQL7, puedes probar con :
> > > >
> > > >create procedure lista ( @campo text )
> > > >as
> > > >select @campo
> > > >
> > > >exec lista 'esto es un campo texto'
> > > >
> > > >
> > > >esto es un campo texto
> > > >
> > > >(1 row(s) affected)
> > > >
> > > >en todo caso indica como lo estas ejecutando y que mensaje
> > > >te envia.
> > > >
> > > >Saludos,
> > > >Ulises
> > > >
> > > >>Necesito llamar a un store procedure pasándole como
> > > >parámetro el contenido
> > > >>de un campo de una tabla de mi base de datos (SQL 7.0)
> > > >del tipo text, estoy
> > > >>dando vueltas sobre esto y no le encuentro la forma,
> > > >alguien me puede dar
> > > >>una mano, gracias.
> > > >>
> > > >>
> > > >>
> > > >>Saludos
> > > >>
> > > >>Felices Fiestas y un prospero Año Nuevo
> > > >>
> > > >>
> > > >>.
> > > >>
> > > >
> > > >
> > > >.
> > > >
> > >
> > >
> >
> >
>
>


Respuesta Responder a este mensaje
#13 Jorge Martinez
02/01/2004 - 13:17 | Informe spam
Lo Logré, pude llamar a mi stoer procedure de la forma siguiente:
DECLARE @xml_0 varchar( 8000 ), @xml_1 varchar( 8000 ),
@xml_2 varchar( 8000 ), @xml_3 varchar( 8000 )
SELECT @xml_0 = SUBSTRING( Documentohtml, ( 0*8000 ) + 1, 8000 ),
@xml_1 = SUBSTRING( Documentohtml, ( 1*8000 ) + 1, 8000 ),
@xml_2 = SUBSTRING( Documentohtml, ( 2*8000 ) + 1, 8000 ),
@xml_3 = SUBSTRING( Documentohtml, ( 3*8000 ) + 1, 8000 )
FROM documentohtml where iddocumentohtml = 8089


exec ('exec mistoreprocedure ''' + @xml_0 + @xml_1 + '''')

Es algo conocido como Sql dinamico, gracias y un próspero 2004.




"Jorge Martinez" escribió en el mensaje
news:%23lB$
No, todavía no funciona, de esta forma me da un "error de sintaxis derca


de
readtext.."
"Adrian Garcia" escribió en el mensaje
news:
> Quizas asi?
>
> EXEC mistoredprocedure @miparametro= READTEXT pub_info.pr_info @val 0
> 2147483647
>
> "Jorge Martinez" wrote in message
> news:u$
> > Gracias por la respuesta, debo estar a un pelito de poder lograrlo ,
pero
> de
> > esta forma al llamar a mi store ,éste no se da cuenta de los datos que
le
> > estoy pasando y me pide el parámetro, "el store requiere el parámetro
> @body
> > que no se ha espeficficado..."
> >
> >
> >
> >
> >
> > PD:Saludos a D. Seara de parte de un alumno del 1er curso de .NET que
dió
> en
> > BS
> >
> > "Adrian Garcia" escribió en el


mensaje
> > news:
> > > Existe en T-SQL las funciones TEXTPTR que devuelve un puntero a una
> > columna
> > > del tipo IMAGE, TEXT y NTEXT. Junto a la funcion READTEXT creo que


es
> > > posible hacer lo que deseas. He aqui un ejemplo:
> > >
> > > SET TEXTSIZE 2147483647USE pubs
> > > DECLARE @val varbinary(16)
> > > SELECT @val = textptr(pr_info) FROM pub_info
> > > WHERE pub_id = '0736'
> > > EXEC mistoredprocedure (READTEXT pub_info.pr_info @val 0
> 2147483647) --Me
> > > aseguro que le estoy pasando hasta la longitud maxima posible.Este
> codigo
> > > hay que probarlo, no le tengo mucha fe que
digamos...SaludosAdrianNDSOft
> > >
> > >
> > > "Jorge Martinez" wrote in


message
> > > news:e%
> > > > Ahí está el problema, en mi campo text yo tengo más de 8000
caracteres
> y
> > > por
> > > > eso no puedo trabajar con una variable del tipo varchar, sino ya


lo
> > > hubiera
> > > > tenido resuelto, el inconveniente se presenta efectivamente al
tratar
> > con
> > > > dato del tipo text...
> > > >
> > > > "ulises" escribió en el mensaje
> > > > news:00fa01c3cef2$bc9bf210$
> > > > Asumiendo que el campo texto almacena solo caracteres
> > > > hasta un máximo 8000 caracteres puedes asignar a una
> > > > variable tipo char el campo, algo como :
> > > >
> > > > declare @campo varchar(8000)
> > > > select @campo = campo from tablatexto where clave = 1
> > > > exec lista @campo
> > > >
> > > > si el campo texto almacena campos binarios no sabría como
> > > > hacerlo.
> > > >
> > > > Saludos,
> > > > Ulises
> > > >
> > > >
> > > > >Ok, y como asigno el contenido de mi campo en la base de
> > > > datos a la
> > > > >variable @campo ?
> > > > >
> > > > >Disculpas si es obvio y no lo veo..
> > > > >
> > > > >
> > > > >"ulises" escribió en el
> > > > mensaje
> > > > >news:09b501c3cee9$9fe2f960$
> > > > >El tipo text también puede ser usado como parámetro en un
> > > > >store procedure en SQL2K y SQL7, puedes probar con :
> > > > >
> > > > >create procedure lista ( @campo text )
> > > > >as
> > > > >select @campo
> > > > >
> > > > >exec lista 'esto es un campo texto'
> > > > >
> > > > >
> > > > >esto es un campo texto
> > > > >
> > > > >(1 row(s) affected)
> > > > >
> > > > >en todo caso indica como lo estas ejecutando y que mensaje
> > > > >te envia.
> > > > >
> > > > >Saludos,
> > > > >Ulises
> > > > >
> > > > >>Necesito llamar a un store procedure pasándole como
> > > > >parámetro el contenido
> > > > >>de un campo de una tabla de mi base de datos (SQL 7.0)
> > > > >del tipo text, estoy
> > > > >>dando vueltas sobre esto y no le encuentro la forma,
> > > > >alguien me puede dar
> > > > >>una mano, gracias.
> > > > >>
> > > > >>
> > > > >>
> > > > >>Saludos
> > > > >>
> > > > >>Felices Fiestas y un prospero Año Nuevo
> > > > >>
> > > > >>
> > > > >>.
> > > > >>
> > > > >
> > > > >
> > > > >.
> > > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida