Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > MS SQL Server
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 06-04-2005
dunia_lv dunia_lv is offline
Miembro
 
Registrado: feb 2005
Posts: 60
Poder: 20
dunia_lv Va por buen camino
Saber la última fila insertada

Hola:

Tengo una tabla que tiene como index que yo misma tengo que incrementar. Por tanto me haría falta saber el último index que inserté para sumarle 1 y así poder insertar el otro. El caso es que no sé de que manera puedo saber el último index insertado desde un procedimiento de sqlserver. Me ayudan?

Desde ya gracias

Dunia
Responder Con Cita
  #2  
Antiguo 06-04-2005
JOSEPE JOSEPE is offline
Miembro
 
Registrado: feb 2005
Posts: 45
Poder: 0
JOSEPE Va por buen camino
El concepto de ultima fila en una Base de Datos relacional no tiene sentido, lo que tienes que hacer es buscar mediante el index que has definido el ultimo valor. Si tu indice es un numero como parece ser pues simplemente mediante SQl puedes buscar el maximo valor.
Sin embargo, lo mejor que se puede hacer en este caso es difinir un Generator (que es para lo que se han creado) y desde aca controlas en que moemnto incrementar el generador.

Salu2
JOSEPE
Lima-Peru
Responder Con Cita
  #3  
Antiguo 06-04-2005
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 27
jachguate Va por buen camino
Todo lo dicho por Josepe con respecto de la última línea es correcto. Solo quiero ampliar que para saber el máximo valor de cualquier campo en una tabla podes hacer una consulta del tipo:
Código SQL [-]
Select max(campollave)
  from tabla;
Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #4  
Antiguo 06-04-2005
Avatar de __hector
[__hector] __hector is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Santo Domingo, Rep. Dom.
Posts: 1.075
Poder: 23
__hector Va por buen camino
Esteee.... los generadores son propios de Interbase, y por la tematica del foro asi como por el mensaje, creo que se refiere a SQL Server.

Si no puedes utilizar campos de incremento (Identity insert) para que la numeracion sea automatica, debes valerte de un trigger para insertar el valor correcto en la columna al momento de insertar una nueva fila.

Tambien hay funciones como scope_identity o @@identity que te dan el valor del ultimo id generado para la tabla, pero sigue utilizando autonumericos.
__________________
Héctor Geraldino
Software Engineer
Responder Con Cita
  #5  
Antiguo 07-04-2005
JOSEPE JOSEPE is offline
Miembro
 
Registrado: feb 2005
Posts: 45
Poder: 0
JOSEPE Va por buen camino
Si pues Hector tienes razon, no me percate que se trataba de la parte del foro donde se discuten aspectos de la BD de M$, que confieso nunca he tenido la necesidad de usar.

Seria muy bueno que en la pagina inicial del club pueda agregarse un campo que indique en que foro se puso el mensaje de tal manera de poder decidir rapidamente a que mensajes de los foros desea uno ingresar y leer. Yo por lo menos hasta el momento leo todos los mensajes conforme van ingresando, aunque personalmente evitaria aquellos relacionados con SQLServer, Tablas planas, y algunos otros foros.

Salu2
JOSEPE
Lima-Peru

Última edición por JOSEPE fecha: 07-04-2005 a las 00:52:24.
Responder Con Cita
  #6  
Antiguo 07-04-2005
dunia_lv dunia_lv is offline
Miembro
 
Registrado: feb 2005
Posts: 60
Poder: 20
dunia_lv Va por buen camino
Gracias a todos...

Chicos muchas gracias...quería disculparme si no estoy en el foro indicado, pues yo pensé que solo era de sql server. De cualquier manera cada una de sus respuesta me han ayudado en gran medida....
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 18:39:39.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi