Storered procedures

09/10/2003 - 21:58 por Julio | Informe spam
Hola grupo

Tengo una confucion con un stored procedures, es lo siguiente:

Tengo creada una tabla en ella tengo algunos campos que estan definido para
que no permita Null.
Procedi a crear un stored Procedure para que me haga un insert en la tabla
que tengo creada, el insert se
hace de maravilla, esto es con el proposito de crear una aplicacion para que
el usuario llene los campos de
la tabla mediante la variables del stored procedure que hace el insert.
Estuve pensando que si el usuario tiene que hacer un cambio en un campo
cualquiera por alguna equivocacion
que cometio introduciendo informacion en la tabla entonces procedi a crear
un stored procedure que me realizara un update a la
tabla, pero al momento de hacer el update me dice que hay campos que no
permiten Null porque estan definido ya en la tabla, pero esos cmpos no lo
quiero modificar.

Quiero saber como modificar campos especificos en la tabla.

Preguntas similare

Leer las respuestas

#1 Miguel Egea
09/10/2003 - 22:18 | Informe spam
si no los explicitas no tienes que modificarlos

Podrías usar un truquillo como este

/* codigo si probrar */

create proc modifica @codigo int,@texto varchar(20)=null
as
begin
update tabla set texto=coalesce(@texto,texto where codigo=@codigo
end
/* fin codigo sin probar */
anque txto no admita nulos no fallará
Saludos
Miguel Egea


"Julio" escribió en el mensaje
news:uhl$
Hola grupo

Tengo una confucion con un stored procedures, es lo siguiente:

Tengo creada una tabla en ella tengo algunos campos que estan definido


para
que no permita Null.
Procedi a crear un stored Procedure para que me haga un insert en la tabla
que tengo creada, el insert se
hace de maravilla, esto es con el proposito de crear una aplicacion para


que
el usuario llene los campos de
la tabla mediante la variables del stored procedure que hace el insert.
Estuve pensando que si el usuario tiene que hacer un cambio en un campo
cualquiera por alguna equivocacion
que cometio introduciendo informacion en la tabla entonces procedi a crear
un stored procedure que me realizara un update a la
tabla, pero al momento de hacer el update me dice que hay campos que no
permiten Null porque estan definido ya en la tabla, pero esos cmpos no lo
quiero modificar.

Quiero saber como modificar campos especificos en la tabla.


Respuesta Responder a este mensaje
#2 Julio
09/10/2003 - 23:36 | Informe spam
Si tengo varios campos donde lo debo expesificar para que me lo aplique a
todos o tengo que ponerselo a cada campo?, y si alquien puede explicarme la
sintasis se lo agradeceria poque le estoy dando mente y no caigo.
Como la que se expesifica :
update tabla set texto=coalesce(@texto,texto


"Miguel Egea" wrote in message
news:uo25%
si no los explicitas no tienes que modificarlos

Podrías usar un truquillo como este

/* codigo si probrar */

create proc modifica @codigo int,@texto varchar(20)=null
as
begin
update tabla set texto=coalesce(@texto,texto where codigo=@codigo
end
/* fin codigo sin probar */
anque txto no admita nulos no fallará
Saludos
Miguel Egea


"Julio" escribió en el mensaje
news:uhl$
> Hola grupo
>
> Tengo una confucion con un stored procedures, es lo siguiente:
>
> Tengo creada una tabla en ella tengo algunos campos que estan definido
para
> que no permita Null.
> Procedi a crear un stored Procedure para que me haga un insert en la


tabla
> que tengo creada, el insert se
> hace de maravilla, esto es con el proposito de crear una aplicacion para
que
> el usuario llene los campos de
> la tabla mediante la variables del stored procedure que hace el insert.
> Estuve pensando que si el usuario tiene que hacer un cambio en un campo
> cualquiera por alguna equivocacion
> que cometio introduciendo informacion en la tabla entonces procedi a


crear
> un stored procedure que me realizara un update a la
> tabla, pero al momento de hacer el update me dice que hay campos que no
> permiten Null porque estan definido ya en la tabla, pero esos cmpos no


lo
> quiero modificar.
>
> Quiero saber como modificar campos especificos en la tabla.
>
>


Respuesta Responder a este mensaje
#3 Miguel Egea
10/10/2003 - 09:46 | Informe spam
Si julio, Básicamente, coalesce es como un isnull, es decir si el parámetro
que te pasan es null, no actualizas sino que se vuelve a asignar el valor
del campo. Esto no es lo ideal, lo ideal es construir exactamente el update,
pero eso te obligaría a hacerlo dinámico y puede no ser buena idea. Digo
que no es buena idea por si tienes triggers que dependan de esa columna que
se dispararán.

Saludos
Miguel Egea

"Julio" escribió en el mensaje
news:O#Qk$
Si tengo varios campos donde lo debo expesificar para que me lo aplique a
todos o tengo que ponerselo a cada campo?, y si alquien puede explicarme


la
sintasis se lo agradeceria poque le estoy dando mente y no caigo.
Como la que se expesifica :
update tabla set texto=coalesce(@texto,texto


"Miguel Egea" wrote in message
news:uo25%
> si no los explicitas no tienes que modificarlos
>
> Podrías usar un truquillo como este
>
> /* codigo si probrar */
>
> create proc modifica @codigo int,@texto varchar(20)=null
> as
> begin
> update tabla set texto=coalesce(@texto,texto where codigo=@codigo
> end
> /* fin codigo sin probar */
> anque txto no admita nulos no fallará
> Saludos
> Miguel Egea
>
>
> "Julio" escribió en el mensaje
> news:uhl$
> > Hola grupo
> >
> > Tengo una confucion con un stored procedures, es lo siguiente:
> >
> > Tengo creada una tabla en ella tengo algunos campos que estan definido
> para
> > que no permita Null.
> > Procedi a crear un stored Procedure para que me haga un insert en la
tabla
> > que tengo creada, el insert se
> > hace de maravilla, esto es con el proposito de crear una aplicacion


para
> que
> > el usuario llene los campos de
> > la tabla mediante la variables del stored procedure que hace el


insert.
> > Estuve pensando que si el usuario tiene que hacer un cambio en un


campo
> > cualquiera por alguna equivocacion
> > que cometio introduciendo informacion en la tabla entonces procedi a
crear
> > un stored procedure que me realizara un update a la
> > tabla, pero al momento de hacer el update me dice que hay campos que


no
> > permiten Null porque estan definido ya en la tabla, pero esos cmpos no
lo
> > quiero modificar.
> >
> > Quiero saber como modificar campos especificos en la tabla.
> >
> >
>
>


Respuesta Responder a este mensaje
#4 Julio
10/10/2003 - 14:05 | Informe spam
Gracias Hermano, estoy claro.
"Miguel Egea" wrote in message
news:
Si julio, Básicamente, coalesce es como un isnull, es decir si el


parámetro
que te pasan es null, no actualizas sino que se vuelve a asignar el valor
del campo. Esto no es lo ideal, lo ideal es construir exactamente el


update,
pero eso te obligaría a hacerlo dinámico y puede no ser buena idea. Digo
que no es buena idea por si tienes triggers que dependan de esa columna


que
se dispararán.

Saludos
Miguel Egea

"Julio" escribió en el mensaje
news:O#Qk$
> Si tengo varios campos donde lo debo expesificar para que me lo aplique


a
> todos o tengo que ponerselo a cada campo?, y si alquien puede explicarme
la
> sintasis se lo agradeceria poque le estoy dando mente y no caigo.
> Como la que se expesifica :
> update tabla set texto=coalesce(@texto,texto
>
>
> "Miguel Egea" wrote in message
> news:uo25%
> > si no los explicitas no tienes que modificarlos
> >
> > Podrías usar un truquillo como este
> >
> > /* codigo si probrar */
> >
> > create proc modifica @codigo int,@texto varchar(20)=null
> > as
> > begin
> > update tabla set texto=coalesce(@texto,texto where codigo=@codigo
> > end
> > /* fin codigo sin probar */
> > anque txto no admita nulos no fallará
> > Saludos
> > Miguel Egea
> >
> >
> > "Julio" escribió en el mensaje
> > news:uhl$
> > > Hola grupo
> > >
> > > Tengo una confucion con un stored procedures, es lo siguiente:
> > >
> > > Tengo creada una tabla en ella tengo algunos campos que estan


definido
> > para
> > > que no permita Null.
> > > Procedi a crear un stored Procedure para que me haga un insert en la
> tabla
> > > que tengo creada, el insert se
> > > hace de maravilla, esto es con el proposito de crear una aplicacion
para
> > que
> > > el usuario llene los campos de
> > > la tabla mediante la variables del stored procedure que hace el
insert.
> > > Estuve pensando que si el usuario tiene que hacer un cambio en un
campo
> > > cualquiera por alguna equivocacion
> > > que cometio introduciendo informacion en la tabla entonces procedi a
> crear
> > > un stored procedure que me realizara un update a la
> > > tabla, pero al momento de hacer el update me dice que hay campos que
no
> > > permiten Null porque estan definido ya en la tabla, pero esos cmpos


no
> lo
> > > quiero modificar.
> > >
> > > Quiero saber como modificar campos especificos en la tabla.
> > >
> > >
> >
> >
>
>


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