Foros del Web » Programación para mayores de 30 ;) » .NET »

Generar Codigo com Campos SQL Server 2005

Estas en el tema de Generar Codigo com Campos SQL Server 2005 en el foro de .NET en Foros del Web. Saludos Soy nuevo en esta excelente comunidad, no se si este es el foro indicado, pero, necesito saber como crear un Código en donde tome ...
  #1 (permalink)  
Antiguo 25/08/2010, 10:55
 
Fecha de Ingreso: agosto-2010
Mensajes: 1
Antigüedad: 13 años, 8 meses
Puntos: 0
Pregunta Generar Codigo com Campos SQL Server 2005

Saludos Soy nuevo en esta excelente comunidad, no se si este es el foro indicado, pero, necesito saber como crear un Código en donde tome la primera letra del Campo (Nombre), la del campo (Apellido) y el año de Nacimiento Automáticamente de una Tabla en SQL Server 2005.

Necesito usarlo como ID automático con el codigo en vez de que cuente ("1,2,3,4....etc.")



Gracias.
  #2 (permalink)  
Antiguo 25/08/2010, 13:52
Avatar de xjuanch0x  
Fecha de Ingreso: septiembre-2009
Mensajes: 125
Antigüedad: 14 años, 7 meses
Puntos: 1
Respuesta: Generar Codigo com Campos SQL Server 2005

Cita:
Iniciado por thescaryboy Ver Mensaje
Saludos Soy nuevo en esta excelente comunidad, no se si este es el foro indicado, pero, necesito saber como crear un Código en donde tome la primera letra del Campo (Nombre), la del campo (Apellido) y el año de Nacimiento Automáticamente de una Tabla en SQL Server 2005.

Necesito usarlo como ID automático con el codigo en vez de que cuente ("1,2,3,4....etc.")



Gracias.

Esto se puede hacer todo desde un procedimiento almacenado, lo único que debes de hacer es un substring al parámetro que recibe el nombre y otro el apellido para que saque la primera letra y luego solo conviertes la fecha a varchar y lo almacenadas, recuerda que este campo se podrá repetir en el caso de que dos personas tenga la misma fecha de nacimiento y el los nombres empiecen por la misma letra.

Ahora como lo haces, pues simplemente el procedimiento que almacena la información de usuario, después de insertar al nuevo usuario, almacena el Identity del registro solo con esta intrucion select @id= @@IDENTITY donde @Id es una variable cualquiera de tipo int, después con ese variable solo haces un update sobre el campo combinado de la iniciales y el nombre

aqui te dejo un ejemplo :
Código SQL:
Ver original
  1. DECLARE @Nombre VARCHAR(100),@Apellido VARCHAR(100),@Fecha DATETIME,@Codigo VARCHAR(100),@Id INT
  2. SET @Nombre = 'Juan David'
  3. SET @Apellido = 'Torres Vaquez'
  4. SET @Fecha = GETDATE()
  5.  
  6. SELECT @Codigo=CAST((SUBSTRING(@Nombre,1,1)+SUBSTRING(@Apellido,1,1)++CONVERT(VARCHAR(10),@Fecha,112)) AS VARCHAR(100))
  7. SELECT @id= @@IDENTITY
  8. SELECT @Codigo,@id AS Codigo
__________________
Juan David Torres Vasquez
[email protected]
Microsoft Certified Technology Specialist (MCTS)
DCE Platinum en Visual C# y VB.NET

Etiquetas: campos, server, sql
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 14:16.