ado.net y mysql

12/08/2004 - 22:31 por dps | Informe spam
saludos al foro

trabajo con mysql como base de datos y tengo una
aplicación en vb.net contra dicha base de datos alojada
en un servidor.

hasta aqui todo bien, caso tipico.

pues bien, en esa base de datos tengo muchas tablas con
la clave como un entero largo con el atributo de
autoincrement (como en access)

necesito saber que código (autoincrement) que asigna la
base de datos a los registros que voy agregando. en php
existe una funcion que hace eso.

puedo hacer eso desde vb.net?

he probado con una consulta tipo "select max(id)
from" pero me he dado cuenta que no vale, ya que si
otro usuario da otro alta se recuperara la clave del
ultimo alta.

utilizo odbc

se admiten todo tipo de sugerencias

un saludete

Preguntas similare

Leer las respuestas

#1 JOSE VARGAS
12/08/2004 - 23:13 | Informe spam
Anexo explicación de la var que almacena el último valor
tomado por el campo

Examples
This example inserts a row into a table with an identity
column and uses @@IDENTITY to display the identity value
used in the new row.

INSERT INTO jobs (job_desc,min_lvl,max_lvl)

VALUES ('Accountant',12,125)

SELECT @@IDENTITY AS 'Identity'


After an INSERT, SELECT INTO, or bulk copy statement
completes, @@IDENTITY contains the last identity value
generated by the statement. If the statement did not
affect any tables with identity columns, @@IDENTITY
returns NULL. If multiple rows are inserted, generating
multiple identity values, @@IDENTITY returns the last
identity value generated. If the statement fires one or
more triggers that perform inserts that generate identity
values, calling @@IDENTITY immediately after the
statement returns the last identity value generated by
the triggers. The @@IDENTITY value does not revert to a
previous setting if the INSERT or SELECT INTO statement
or bulk copy fails, or if the transaction is rolled back.
Respuesta Responder a este mensaje
#2 dps
12/08/2004 - 23:26 | Informe spam
gracias por la ayuda, pero no me ha quedado nada claro el
asunto


Anexo explicación de la var que almacena el último valor
tomado por el campo

Examples
This example inserts a row into a table with an identity
column and uses @@IDENTITY to display the identity value
used in the new row.

INSERT INTO jobs (job_desc,min_lvl,max_lvl)

VALUES ('Accountant',12,125)

SELECT @@IDENTITY AS 'Identity'


After an INSERT, SELECT INTO, or bulk copy statement
completes, @@IDENTITY contains the last identity value
generated by the statement. If the statement did not
affect any tables with identity columns, @@IDENTITY
returns NULL. If multiple rows are inserted, generating
multiple identity values, @@IDENTITY returns the last
identity value generated. If the statement fires one or
more triggers that perform inserts that generate


identity
values, calling @@IDENTITY immediately after the
statement returns the last identity value generated by
the triggers. The @@IDENTITY value does not revert to a
previous setting if the INSERT or SELECT INTO statement
or bulk copy fails, or if the transaction is rolled back.


.

Respuesta Responder a este mensaje
#3 Anonimo
12/08/2004 - 23:50 | Informe spam
Existen variables globales en SQL que almacenan los
valores de ambiente del motor ( numero de registros
afectados, consecutivo de inserción, etc) estas variables
inician con doble arroba.
para este caso @@Identity almacena el ultimo valor
insertado en la tabla que contiene un autoincrementador,
osea el motor es quien asigna el valor consecutivo de
insercion ,.
Si tu realizas un insert y posteriormente preguntas por
el valor de @@Identity te devuleve el valor insertado.
Respuesta Responder a este mensaje
#4 dps
13/08/2004 - 15:50 | Informe spam
comprendido

sabia que se tenia que poder hacer de alguna manera

muchisimas gracias



Existen variables globales en SQL que almacenan los
valores de ambiente del motor ( numero de registros
afectados, consecutivo de inserción, etc) estas


variables
inician con doble arroba.
para este caso @@Identity almacena el ultimo valor
insertado en la tabla que contiene un autoincrementador,
osea el motor es quien asigna el valor consecutivo de
insercion ,.
Si tu realizas un insert y posteriormente preguntas por
el valor de @@Identity te devuleve el valor insertado.
.

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