IDENTITY(INT,VALOR,INCREMEnTO)

21/02/2007 - 12:40 por Javi 3D .Net | Informe spam
Estoy haciendo un select identity(int,select (max dato),1) from tabla


Es decir no permite que valor sea una variable.

gracias.

Preguntas similare

Leer las respuestas

#6 Jose Mariano Alvarez
21/02/2007 - 18:10 | Informe spam
Debes tener en cuenta tambien lo que dice este articulo.
http://support.microsoft.com/defaul...-us;273586



Saludos
Ing. Jose Mariano Alvarez


(Cambia los ceros por O y saca lo que sobra)




"Gustavo Larriera (MVP)" wrote in message
news:
Los argumentos Semilla e Incremento deben ser valores contantes. No puedes
pasar variables en tales argumentos.

Una forma posible de resolverlo es usar SQL dinámico, algo similar a esto:

DECLARE @semilla INT; SET @semilla = 1;
DECLARE @incremento INT; SET @incremento = 1;
DECLARE @sql NVARCHAR(MAX)

SET @sql = N'SELECT ID_Num = IDENTITY(int, ' + CONVERT(VARCHAR(20),
@semilla) + ', ' + CONVERT(VARCHAR(20),@incremento) + ') INTO #miTabla; '

EXEC sp_executesql @sql



Gustavo Larriera, MVP
http://aspnet2.com/mvp.ashx?GustavoLarriera
http://solidqualitylearning.com/blogs/glarriera/
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.



"Javi 3D .Net" wrote:

On 21 feb, 13:27, "Maxi" wrote:
> Hola, que es lo que queres resolver? el identity es una condicion de un
> tipo
> de datos
>
>
> Salu2
>
> Microsoft MVP SQL Server
> Culminis Speaker
>
> "Javi 3D .Net" escribió en el
> mensajenews:
>
>
>
> > Estoy haciendo un select identity(int,select (max dato),1) from tabla
>
> > Es decir no permite que valor sea una variable.
>
> > gracias.- Ocultar texto de la cita -
>
> - Mostrar texto de la cita -

LO QUE quiero es que el valor semilla no sea un numero, 1, o bien
3500, quiero que sea una variable , lo que me devuelva de una select
de otra tabla en concreto.


Respuesta Responder a este mensaje
#7 Gustavo Larriera (MVP)
21/02/2007 - 18:57 | Informe spam
Totalmente de acuerdo contigo Mariano.

El amigo no brindó demasiados detalles de lo quiere hacer. Vale el
comentario de Maxi, pidiéndole que diga lo que quiere hacer y no cómo lo
desea hacer :-)


Gustavo Larriera, MVP
http://aspnet2.com/mvp.ashx?GustavoLarriera
http://solidqualitylearning.com/blogs/glarriera/
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.



"Jose Mariano Alvarez" wrote:

Debes tener en cuenta tambien lo que dice este articulo.
http://support.microsoft.com/defaul...-us;273586



Saludos
Ing. Jose Mariano Alvarez


(Cambia los ceros por O y saca lo que sobra)




"Gustavo Larriera (MVP)" wrote in message
news:
> Los argumentos Semilla e Incremento deben ser valores contantes. No puedes
> pasar variables en tales argumentos.
>
> Una forma posible de resolverlo es usar SQL dinámico, algo similar a esto:
>
> DECLARE @semilla INT; SET @semilla = 1;
> DECLARE @incremento INT; SET @incremento = 1;
> DECLARE @sql NVARCHAR(MAX)
>
> SET @sql = N'SELECT ID_Num = IDENTITY(int, ' + CONVERT(VARCHAR(20),
> @semilla) + ', ' + CONVERT(VARCHAR(20),@incremento) + ') INTO #miTabla; '
>
> EXEC sp_executesql @sql
>
>
>
> Gustavo Larriera, MVP
> http://aspnet2.com/mvp.ashx?GustavoLarriera
> http://solidqualitylearning.com/blogs/glarriera/
> Este mensaje se proporciona tal como es, sin garantías de ninguna clase.
>
>
>
> "Javi 3D .Net" wrote:
>
>> On 21 feb, 13:27, "Maxi" wrote:
>> > Hola, que es lo que queres resolver? el identity es una condicion de un
>> > tipo
>> > de datos
>> >
>> >
>> > Salu2
>> >
>> > Microsoft MVP SQL Server
>> > Culminis Speaker
>> >
>> > "Javi 3D .Net" escribió en el
>> > mensajenews:
>> >
>> >
>> >
>> > > Estoy haciendo un select identity(int,select (max dato),1) from tabla
>> >
>> > > Es decir no permite que valor sea una variable.
>> >
>> > > gracias.- Ocultar texto de la cita -
>> >
>> > - Mostrar texto de la cita -
>>
>> LO QUE quiero es que el valor semilla no sea un numero, 1, o bien
>> 3500, quiero que sea una variable , lo que me devuelva de una select
>> de otra tabla en concreto.
>>
>>



Respuesta Responder a este mensaje
#8 Javi 3D .Net
22/02/2007 - 12:40 | Informe spam
Esta bien acepto que se quejen de mi escasa informacion..

Tenía una tabla que tiene un campo identity llama IDP y en un
proceso anterior he rellenado, ahora ira por el 3210 p.e.


Ahora queria generar una select into otra tabla en el que la '
inicializacion de la entidad' fuese el max(IDP) del la tabla
anterior.
Esperar haber aclarado algo.

Gustavo Larriera (MVP) ha escrito:
Totalmente de acuerdo contigo Mariano.

El amigo no brindó demasiados detalles de lo quiere hacer. Vale el
comentario de Maxi, pidiéndole que diga lo que quiere hacer y no cómo lo
desea hacer :-)


Gustavo Larriera, MVP
http://aspnet2.com/mvp.ashx?GustavoLarriera
http://solidqualitylearning.com/blogs/glarriera/
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.



"Jose Mariano Alvarez" wrote:

> Debes tener en cuenta tambien lo que dice este articulo.
> http://support.microsoft.com/defaul...-us;273586
>
>
>
> Saludos
> Ing. Jose Mariano Alvarez
>
>
> (Cambia los ceros por O y saca lo que sobra)
>
>
>
>
> "Gustavo Larriera (MVP)" wrote in message
> news:
> > Los argumentos Semilla e Incremento deben ser valores contantes. No puedes
> > pasar variables en tales argumentos.
> >
> > Una forma posible de resolverlo es usar SQL dinámico, algo similar a esto:
> >
> > DECLARE @semilla INT; SET @semilla = 1;
> > DECLARE @incremento INT; SET @incremento = 1;
> > DECLARE @sql NVARCHAR(MAX)
> >
> > SET @sql = N'SELECT ID_Num = IDENTITY(int, ' + CONVERT(VARCHAR(20),
> > @semilla) + ', ' + CONVERT(VARCHAR(20),@incremento) + ') INTO #miTabla; '
> >
> > EXEC sp_executesql @sql
> >
> >
> >
> > Gustavo Larriera, MVP
> > http://aspnet2.com/mvp.ashx?GustavoLarriera
> > http://solidqualitylearning.com/blogs/glarriera/
> > Este mensaje se proporciona tal como es, sin garantías de ninguna clase.
> >
> >
> >
> > "Javi 3D .Net" wrote:
> >
> >> On 21 feb, 13:27, "Maxi" wrote:
> >> > Hola, que es lo que queres resolver? el identity es una condicion de un
> >> > tipo
> >> > de datos
> >> >
> >> >
> >> > Salu2
> >> >
> >> > Microsoft MVP SQL Server
> >> > Culminis Speaker
> >> >
> >> > "Javi 3D .Net" escribió en el
> >> > mensajenews:
> >> >
> >> >
> >> >
> >> > > Estoy haciendo un select identity(int,select (max dato),1) from tabla
> >> >
> >> > > Es decir no permite que valor sea una variable.
> >> >
> >> > > gracias.- Ocultar texto de la cita -
> >> >
> >> > - Mostrar texto de la cita -
> >>
> >> LO QUE quiero es que el valor semilla no sea un numero, 1, o bien
> >> 3500, quiero que sea una variable , lo que me devuelva de una select
> >> de otra tabla en concreto.
> >>
> >>
>
>
>
Respuesta Responder a este mensaje
#9 Gustavo Larriera (MVP)
23/02/2007 - 01:41 | Informe spam
Ok, puedes hacerlo con SQL dinámico como mostré en un mensaje anterior.


Gustavo Larriera, MVP
Solid Quality
MVP profile: http://aspnet2.com/mvp.ashx?GustavoLarriera
Blog: http://solidqualitylearning.com/blogs/glarriera/
Este mensaje se proporciona tal como es, sin garantías de ninguna clase
/ This message is provided "AS IS" with no warranties expressed or
implied, and confers no rights.

Javi 3D .Net wrote:
Esta bien acepto que se quejen de mi escasa informacion..

Tenía una tabla que tiene un campo identity llama IDP y en un
proceso anterior he rellenado, ahora ira por el 3210 p.e.


Ahora queria generar una select into otra tabla en el que la '
inicializacion de la entidad' fuese el max(IDP) del la tabla
anterior.
Esperar haber aclarado algo.

Gustavo Larriera (MVP) ha escrito:
Totalmente de acuerdo contigo Mariano.

El amigo no brindó demasiados detalles de lo quiere hacer. Vale el
comentario de Maxi, pidiéndole que diga lo que quiere hacer y no cómo lo
desea hacer :-)


Gustavo Larriera, MVP
http://aspnet2.com/mvp.ashx?GustavoLarriera
http://solidqualitylearning.com/blogs/glarriera/
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.



"Jose Mariano Alvarez" wrote:

Debes tener en cuenta tambien lo que dice este articulo.
http://support.microsoft.com/defaul...-us;273586



Saludos
Ing. Jose Mariano Alvarez


(Cambia los ceros por O y saca lo que sobra)




"Gustavo Larriera (MVP)" wrote in message
news:
Los argumentos Semilla e Incremento deben ser valores contantes. No puedes
pasar variables en tales argumentos.

Una forma posible de resolverlo es usar SQL dinámico, algo similar a esto:

DECLARE @semilla INT; SET @semilla = 1;
DECLARE @incremento INT; SET @incremento = 1;
DECLARE @sql NVARCHAR(MAX)

SET @sql = N'SELECT ID_Num = IDENTITY(int, ' + CONVERT(VARCHAR(20),
@semilla) + ', ' + CONVERT(VARCHAR(20),@incremento) + ') INTO #miTabla; '

EXEC sp_executesql @sql



Gustavo Larriera, MVP
http://aspnet2.com/mvp.ashx?GustavoLarriera
http://solidqualitylearning.com/blogs/glarriera/
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.



"Javi 3D .Net" wrote:

On 21 feb, 13:27, "Maxi" wrote:
Hola, que es lo que queres resolver? el identity es una condicion de un
tipo
de datos


Salu2

Microsoft MVP SQL Server
Culminis Speaker

"Javi 3D .Net" escribió en el
mensajenews:



Estoy haciendo un select identity(int,select (max dato),1) from tabla
Es decir no permite que valor sea una variable.
gracias.- Ocultar texto de la cita -


- Mostrar texto de la cita -


LO QUE quiero es que el valor semilla no sea un numero, 1, o bien
3500, quiero que sea una variable , lo que me devuelva de una select
de otra tabla en concreto.













Respuesta Responder a este mensaje
#10 Maxi
23/02/2007 - 03:16 | Informe spam
Hola, ademas de lo que dice Gux yo me preguntaria: que importa el numero del
identity? si importa la secuencia entonces no deberias usar identitys sino
tu propio numerador


Saludos

[Microsoft MVP SQL Server]
SQLTOTALConsulting - Servicios y consultoria de SQLServer
www.sqlgurus.org
Buenos Aires - Argentina
http://msmvps.com/blogs/maxiaccotto/
"Javi 3D .Net" wrote in message
news:
Esta bien acepto que se quejen de mi escasa informacion..

Tenía una tabla que tiene un campo identity llama IDP y en un
proceso anterior he rellenado, ahora ira por el 3210 p.e.


Ahora queria generar una select into otra tabla en el que la '
inicializacion de la entidad' fuese el max(IDP) del la tabla
anterior.
Esperar haber aclarado algo.

Gustavo Larriera (MVP) ha escrito:
Totalmente de acuerdo contigo Mariano.

El amigo no brindó demasiados detalles de lo quiere hacer. Vale el
comentario de Maxi, pidiéndole que diga lo que quiere hacer y no cómo lo
desea hacer :-)


Gustavo Larriera, MVP
http://aspnet2.com/mvp.ashx?GustavoLarriera
http://solidqualitylearning.com/blogs/glarriera/
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.



"Jose Mariano Alvarez" wrote:

> Debes tener en cuenta tambien lo que dice este articulo.
> http://support.microsoft.com/defaul...-us;273586
>
>
>
> Saludos
> Ing. Jose Mariano Alvarez
>
>
> (Cambia los ceros por O y saca lo que sobra)
>
>
>
>
> "Gustavo Larriera (MVP)" wrote in message
> news:
> > Los argumentos Semilla e Incremento deben ser valores contantes. No
> > puedes
> > pasar variables en tales argumentos.
> >
> > Una forma posible de resolverlo es usar SQL dinámico, algo similar a
> > esto:
> >
> > DECLARE @semilla INT; SET @semilla = 1;
> > DECLARE @incremento INT; SET @incremento = 1;
> > DECLARE @sql NVARCHAR(MAX)
> >
> > SET @sql = N'SELECT ID_Num = IDENTITY(int, ' + CONVERT(VARCHAR(20),
> > @semilla) + ', ' + CONVERT(VARCHAR(20),@incremento) + ') INTO
> > #miTabla; '
> >
> > EXEC sp_executesql @sql
> >
> >
> >
> > Gustavo Larriera, MVP
> > http://aspnet2.com/mvp.ashx?GustavoLarriera
> > http://solidqualitylearning.com/blogs/glarriera/
> > Este mensaje se proporciona tal como es, sin garantías de ninguna
> > clase.
> >
> >
> >
> > "Javi 3D .Net" wrote:
> >
> >> On 21 feb, 13:27, "Maxi" wrote:
> >> > Hola, que es lo que queres resolver? el identity es una condicion
> >> > de un
> >> > tipo
> >> > de datos
> >> >
> >> >
> >> > Salu2
> >> >
> >> > Microsoft MVP SQL Server
> >> > Culminis Speaker
> >> >
> >> > "Javi 3D .Net" escribió en el
> >> > mensajenews:
> >> >
> >> >
> >> >
> >> > > Estoy haciendo un select identity(int,select (max dato),1) from
> >> > > tabla
> >> >
> >> > > Es decir no permite que valor sea una variable.
> >> >
> >> > > gracias.- Ocultar texto de la cita -
> >> >
> >> > - Mostrar texto de la cita -
> >>
> >> LO QUE quiero es que el valor semilla no sea un numero, 1, o bien
> >> 3500, quiero que sea una variable , lo que me devuelva de una select
> >> de otra tabla en concreto.
> >>
> >>
>
>
>
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida