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

alguna forma de crear un campo autonumerico

Estas en el tema de alguna forma de crear un campo autonumerico en el foro de .NET en Foros del Web. hola que tal bueno mi idea es que a la hora de hacer un nuevo registro haga en un campo un autonumerico aparte del id ...

  #1 (permalink)  
Antiguo 27/03/2010, 19:17
 
Fecha de Ingreso: agosto-2008
Ubicación: D,F
Mensajes: 412
Antigüedad: 15 años, 8 meses
Puntos: 4
alguna forma de crear un campo autonumerico

hola que tal bueno mi idea es que a la hora de hacer un nuevo registro haga en un campo un autonumerico aparte del id para crear un registro asi p01h

donde p=perro 01=el numero de registro h=nombre del perro en este caso(harry)

y que a si ves no se repita en la base de datos el auntonumerico, ya logre sacar la p y la h gracias a la ayuda de los compañeros de foro, pero me falta sacar el autonumerico para que en otra variable saque la suma de los tres y lo agrege en un campo y asi en tablas de consulta lo busque como el ejemplo que puse(p01h) como cren que pueda hacerlo


edito: esta bien esta instrucion como lo que les explique pork en la base de datos no me lo manda bien me manda esto o me guarda esto "hSELECT Count(*) as var from (Cliente)1p"
les dejo el codigo que puse
Código C#:
Ver original
  1. sql3="SELECT Count(*) as var from (Cliente)";
  2.             cont = sql3 + 1;
  3.             id2 = miLetra + cont+ checkBox1.Tag;
__________________
Si el amor a una mujer es igual al amor a la programacion
cual de las dos escojerias...mmmm buena pregunta jejeje

Última edición por rikimm; 27/03/2010 a las 19:56
  #2 (permalink)  
Antiguo 28/03/2010, 09:17
Avatar de freegirl
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: Catalonia
Mensajes: 4.334
Antigüedad: 20 años, 6 meses
Puntos: 156
Respuesta: alguna forma de crear un campo autonumerico

en vez de count, yo utilizaría "MAX". imagina que borran algún regsitro del medio, entonces podrías tener duplicidades.

Código:
SELECT max (campoID) as var from Cliente
__________________
Saludos
  #3 (permalink)  
Antiguo 28/03/2010, 13:16
 
Fecha de Ingreso: agosto-2008
Ubicación: D,F
Mensajes: 412
Antigüedad: 15 años, 8 meses
Puntos: 4
Respuesta: alguna forma de crear un campo autonumerico

todavia no me sale esa parte me manda en la base datos el codigo select en ves de que me de un valor numerico y lo sume les pongo el codigo tal y como lo puse
Código C#:
Ver original
  1. string miLetra,id2,sql3,cont;
  2. sql3="SELECT MAX(Id) as var FROM Cliente ";
  3.             cont =sql3 + 1;
  4.             id2 = miLetra + cont+ checkBox1.Tag;
  5. // la variable id2 la estoy ocupando para ponerlo en el insert
  6. //tabien lo que me pregunto si cont lo tengo que convertir en int  para que quede asi
  7.  
  8. string miLetra,id2,sql3;
  9. int cont;
  10. sql3="SELECT MAX(Id) as var FROM Cliente ";
  11.             cont =Convert.ToInt32(sql3) + 1;
  12.             id2 = miLetra + cont+ checkBox1.Tag;
  13.  
  14. //cual de las dos formas esta bien porque en la primera no me funciono y en la
  15. // segunda me manda un error "la cadena de entrada no tiene el formato correcto".
  16. // y mi pregunta que me rocomiendas que donde va el MAX() en los parentesis que pongo
  17. // el campo id por default o creo un nuevo campo en la bd(id2)para que en la
  18. //union de las 3 cadenas se guarden en ese mismo campo id2
__________________
Si el amor a una mujer es igual al amor a la programacion
cual de las dos escojerias...mmmm buena pregunta jejeje
  #4 (permalink)  
Antiguo 28/03/2010, 14:37
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 18 años, 9 meses
Puntos: 50
Respuesta: alguna forma de crear un campo autonumerico

Pues así como veo tu código esta cadena -> "SELECT MAX(Id) as var FROM Cliente " nunca, pero nunca la vas a poder convertir en Int32.

Lo que tendrías que hacer es:
  1. Crear un SqlCommand con tu select: "SELECT MAX(Id) as var FROM Cliente"
  2. Crear un SqlDataReader para leer el valor obtenido de tu SqlCommand
  3. si SqlDataReader obtiene datos (Read()), entonces cont =Convert.ToInt32(resultadoDeSqlDataReader ) + 1;
  4. id2 = miLetra + cont.ToString()+ checkBox1.Tag;

y listo ya tienes tu nueva cadena.
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.
  #5 (permalink)  
Antiguo 28/03/2010, 14:52
 
Fecha de Ingreso: agosto-2008
Ubicación: D,F
Mensajes: 412
Antigüedad: 15 años, 8 meses
Puntos: 4
Respuesta: alguna forma de crear un campo autonumerico

Mmmm mas o menos t entendi no se si puedas ponerlo en codigo para ya entenderte bien jejeje recuerda que soy muy nuevo y ando aprendiendo jejejej saludo
__________________
Si el amor a una mujer es igual al amor a la programacion
cual de las dos escojerias...mmmm buena pregunta jejeje
  #6 (permalink)  
Antiguo 28/03/2010, 16:04
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 18 años, 9 meses
Puntos: 50
Respuesta: alguna forma de crear un campo autonumerico

Cita:
Iniciado por rikimm Ver Mensaje
Mmmm mas o menos t entendi no se si puedas ponerlo en codigo para ya entenderte bien jejeje recuerda que soy muy nuevo y ando aprendiendo jejejej saludo
Claro, aquí te dejo este código
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.
  #7 (permalink)  
Antiguo 28/03/2010, 21:59
 
Fecha de Ingreso: agosto-2008
Ubicación: D,F
Mensajes: 412
Antigüedad: 15 años, 8 meses
Puntos: 4
Respuesta: alguna forma de crear un campo autonumerico

mmmmm viendo el ejemplo que me pusiste quedaria asi:
Código C#:
Ver original
  1. OleDbConnection BaseDatos = new OleDbConnection();
  2.             OleDbCommand Com = new OleDbCommand();
  3.             string sql3;
  4.  
  5.  BaseDatos.ConnectionString = @"PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=C:\doggy_park.mdb";
  6.             BaseDatos.Open();
  7.             Com.Connection = BaseDatos;
  8.             Com.CommandType = CommandType.Text;
  9.  
  10. sql3="SELECT MAX(id) as var FROM Cliente ";
  11.             SqlDataReader reader = Com.ExecuteReader();
  12.  
  13.  
  14.             cont =Convert.ToInt32(reader) + 1;
  15.             id2 = miLetra + cont+ checkBox1.Tag;

y lo corri y me manda este error no se puede convertir implicitamente el typo 'System.Data.Oledb.OledDbataReader' en 'System.Data.SqlClient.SqlDataReader'
__________________
Si el amor a una mujer es igual al amor a la programacion
cual de las dos escojerias...mmmm buena pregunta jejeje
  #8 (permalink)  
Antiguo 29/03/2010, 05:15
Avatar de freegirl
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: Catalonia
Mensajes: 4.334
Antigüedad: 20 años, 6 meses
Puntos: 156
Respuesta: alguna forma de crear un campo autonumerico

Cita:
sql3="SELECT MAX(id) as var FROM Cliente ";
numeroDevuelto = Com.executescalar();
haz executeScalar.
__________________
Saludos
  #9 (permalink)  
Antiguo 29/03/2010, 11:17
 
Fecha de Ingreso: agosto-2008
Ubicación: D,F
Mensajes: 412
Antigüedad: 15 años, 8 meses
Puntos: 4
Respuesta: alguna forma de crear un campo autonumerico

freegirl
asi deve de quedar o estoy mal porque no me corre la aplicacion no se si me puedas corregir mi codigo y numero devuelto a que te refieres


Código C#:
Ver original
  1. OleDbConnection BaseDatos = new OleDbConnection();
  2.             OleDbCommand Com = new OleDbCommand();
  3.             string Sql, mascota, miLetra, Sql2, id2, sql3;
  4.             int x, cont;
  5.            
  6.            
  7.  
  8.             BaseDatos.ConnectionString = @"PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=C:\doggy_park.mdb";
  9.             BaseDatos.Open();
  10.             Com.Connection = BaseDatos;
  11.             Com.CommandType = CommandType.Text;
  12. sql3="SELECT MAX(id) as var FROM Cliente ";
  13. numeroDevuelto = Com.ExecuteScalar();
  14.  
  15.  
  16.             cont = Convert.ToInt32(numeroDevuelto) + 1;
  17.             id2 = miLetra + cont+ checkBox1.Tag;
__________________
Si el amor a una mujer es igual al amor a la programacion
cual de las dos escojerias...mmmm buena pregunta jejeje
  #10 (permalink)  
Antiguo 29/03/2010, 11:26
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 18 años, 9 meses
Puntos: 50
Respuesta: alguna forma de crear un campo autonumerico

En esta linea:

Código:
numeroDevuelto = Com.ExecuteScalar();
cambiarla por esto:

Código:
numeroDevuelto = (int)Com.ExecuteScalar();
o

Código:
numeroDevuelto = Convert.ToInt32(Com.ExecuteScalar());
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.
  #11 (permalink)  
Antiguo 29/03/2010, 11:29
 
Fecha de Ingreso: agosto-2008
Ubicación: D,F
Mensajes: 412
Antigüedad: 15 años, 8 meses
Puntos: 4
Respuesta: alguna forma de crear un campo autonumerico

y numeroDevuelto como lo pongo como int o string y otra pregunta entonces la variable sql3 donde vienede lo del select no se ocupa para nada me refiero donde esta la variable cont

me manda error en este codigo "no se establecio un texto de comando para el objeto de comando"

Cita:
numeroDevuelto = Convert.ToInt32(Com.ExecuteScalar());
__________________
Si el amor a una mujer es igual al amor a la programacion
cual de las dos escojerias...mmmm buena pregunta jejeje

Última edición por rikimm; 29/03/2010 a las 11:34
  #12 (permalink)  
Antiguo 29/03/2010, 12:05
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 18 años, 9 meses
Puntos: 50
Respuesta: alguna forma de crear un campo autonumerico

Te falta establecer el CommandText:

Código C:
Ver original
  1. OleDbConnection BaseDatos = new OleDbConnection();
  2.             OleDbCommand Com = new OleDbCommand();
  3.             string Sql, mascota, miLetra, Sql2, id2, sql3;
  4.             int x, cont;
  5.            
  6.            
  7.  
  8.             BaseDatos.ConnectionString = @"PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=C:\doggy_park.mdb";
  9.             BaseDatos.Open();
  10.             Com.Connection = BaseDatos;
  11.             Com.CommandType = CommandType.Text;
  12.             Com.CommandText = "SELECT MAX(id) as var FROM Cliente ";
  13.             numeroDevuelto = Convert.ToInt32(Com.ExecuteScalar());
  14.             BaseDatos.Close();
  15.    
  16.             id2 = string.format("{0}{1}{2}",miLetra,numeroDevuelto.ToString(),checkBox1.Tag);
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.
  #13 (permalink)  
Antiguo 29/03/2010, 12:21
 
Fecha de Ingreso: agosto-2008
Ubicación: D,F
Mensajes: 412
Antigüedad: 15 años, 8 meses
Puntos: 4
Respuesta: alguna forma de crear un campo autonumerico

erick_arcini y freegirl les agradesco su ayuda a los dos ya pude hacerlo solo una observarcion erick_arcini en esta parte del codigo manda erro lo que hize fue dejarlo como en el segundo ejemplo
Cita:
id2 = string.format("{0}{1}{2}",miLetra,numeroDevuelto.T oString(),checkBox1.Tag);
me funciono asi
Cita:
id2 = miLetra,cont,checkBox1.Tag;
para que al final quedara asi;
Código C#:
Ver original
  1. OleDbConnection BaseDatos = new OleDbConnection();
  2.             OleDbCommand Com = new OleDbCommand();
  3.             string Sql, mascota, miLetra, Sql2, id2;
  4.             int x, cont,numeroDevuelto;
  5.            
  6.            
  7.  
  8.             BaseDatos.ConnectionString = @"PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=C:\doggy_park.mdb";
  9.             BaseDatos.Open();
  10.             Com.Connection = BaseDatos;
  11.             Com.CommandType = CommandType.Text;
  12.             Com.CommandText = "SELECT MAX(Id) as var FROM Cliente ";
  13.             numeroDevuelto = Convert.ToInt32(Com.ExecuteScalar());
  14.  
  15.              cont = Convert.ToInt32(numeroDevuelto) + 1;
  16.              id2 =  miLetra + cont + checkBox1.Tag;
  17. //y ya usando la variable id2 en el insert para que lo en la base quede asi p1h
__________________
Si el amor a una mujer es igual al amor a la programacion
cual de las dos escojerias...mmmm buena pregunta jejeje
  #14 (permalink)  
Antiguo 29/03/2010, 12:25
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 18 años, 9 meses
Puntos: 50
Respuesta: alguna forma de crear un campo autonumerico

ok, solo como observación, no tiene caso esta linea:

Código:
cont = Convert.ToInt32(numeroDevuelto) + 1;
¿porqué?, bueno por que la variable numeroDevuelto ya es un entero y no tieen caso que lo vuelvas a convertir, así que lo que puedes hacer es borrar esa línea y optimizar tu código de esta forma:

Código:
id2 =  miLetra + (numeroDevuelto + 1) + checkBox1.Tag;
y así ya tentrías tu id2 formado sin problemas.
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.
  #15 (permalink)  
Antiguo 29/03/2010, 13:42
Avatar de freegirl
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: Catalonia
Mensajes: 4.334
Antigüedad: 20 años, 6 meses
Puntos: 156
Respuesta: alguna forma de crear un campo autonumerico

por cierto, si no hubiere ningún registro en la BD, le va a petar. Por lo que dbería hacer un COUNT previo.
__________________
Saludos
  #16 (permalink)  
Antiguo 29/03/2010, 14:01
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 18 años, 9 meses
Puntos: 50
Respuesta: alguna forma de crear un campo autonumerico

Cita:
Iniciado por freegirl Ver Mensaje
por cierto, si no hubiere ningún registro en la BD, le va a petar. Por lo que dbería hacer un COUNT previo.
Por eso yo le decía que usara el ExcecuteReader con el .Read para ver si hay registros, pero se fue por el camino fácil.

PD. recuerdo esa palabrita "petar" cuando estuve en Madrid hace un año, jajaja me da harta risa, y más cuando me decían "la aplicación ha mandado tremendo petardazo" jajaja
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.
  #17 (permalink)  
Antiguo 29/03/2010, 14:03
 
Fecha de Ingreso: agosto-2008
Ubicación: D,F
Mensajes: 412
Antigüedad: 15 años, 8 meses
Puntos: 4
Respuesta: alguna forma de crear un campo autonumerico

erick_arcini

ok si es cierto tienes razon devo de quietar eso porque toy conviertien dos veces gracias por la observacion

Y porque dices que por el camino facil porque yo estaba siguendo sus consejos porque tu me dices que con read y ella me dice que con otra ahi si ya no supe aver si me puedes explicar la diferencia que habia de la fomra que me decias y de la forma que me decia freegirl

y de la forma que lo puse quiere decir que si no tengo registro no me va a funciona el codigo que puse

freegirl
y pus quien te entiende eh jajajaja primero me dices que con max y ahora que con count decidete no jejejej no es cierto es broma

asi como me dices si tubiera algun registro seria con max o te refieres que puedo tener el registro pero en el campo id2 no tubiera nada me recomendairas count eso supungo
__________________
Si el amor a una mujer es igual al amor a la programacion
cual de las dos escojerias...mmmm buena pregunta jejeje
  #18 (permalink)  
Antiguo 29/03/2010, 14:13
Avatar de freegirl
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: Catalonia
Mensajes: 4.334
Antigüedad: 20 años, 6 meses
Puntos: 156
Respuesta: alguna forma de crear un campo autonumerico

te digo que con el max es para obtener el número máximo de tu campo que hace de identificador, ya que el count a la corta o la larga te dará problemas.

Pero de la manera que tienes el código, si sólo haces el MAX te va a petar:

Cita:
Com.CommandText = "SELECT MAX(Id) as var FROM Cliente ";
numeroDevuelto = Convert.ToInt32(Com.ExecuteScalar());
Simplemente haz una consulta previa con un COUNT para saber si tienes registros en la BD. o bien, que numeroDevuelto sea del tipo Object, y antes sumarle 1 comprueba que haya un número.
__________________
Saludos
  #19 (permalink)  
Antiguo 29/03/2010, 14:15
 
Fecha de Ingreso: agosto-2008
Ubicación: D,F
Mensajes: 412
Antigüedad: 15 años, 8 meses
Puntos: 4
Respuesta: alguna forma de crear un campo autonumerico

Cita:
Iniciado por freegirl Ver Mensaje
te digo que con el max es para obtener el número máximo de tu campo que hace de identificador, ya que el count a la corta o la larga te dará problemas.

Pero de la manera que tienes el código, si sólo haces el MAX te va a petar:



Simplemente haz una consulta previa con un COUNT para saber si tienes registros en la BD. o bien, que numeroDevuelto sea del tipo Object, y antes sumarle 1 comprueba que haya un número.
entonces en ves de max que se count y que mas le tengo que modificar
__________________
Si el amor a una mujer es igual al amor a la programacion
cual de las dos escojerias...mmmm buena pregunta jejeje
  #20 (permalink)  
Antiguo 29/03/2010, 14:15
Avatar de freegirl
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: Catalonia
Mensajes: 4.334
Antigüedad: 20 años, 6 meses
Puntos: 156
Respuesta: alguna forma de crear un campo autonumerico

Cita:
Iniciado por erick_arcini Ver Mensaje
Por eso yo le decía que usara el ExcecuteReader con el .Read para ver si hay registros, pero se fue por el camino fácil.

PD. recuerdo esa palabrita "petar" cuando estuve en Madrid hace un año, jajaja me da harta risa, y más cuando me decían "la aplicación ha mandado tremendo petardazo" jajaja
ya....es que hay varias soluciones. que coja la que él se sienta más cómodo o nos entienda!

¿vosotros como lo decís que la aplicación ha petado?
__________________
Saludos
  #21 (permalink)  
Antiguo 29/03/2010, 14:18
 
Fecha de Ingreso: agosto-2008
Ubicación: D,F
Mensajes: 412
Antigüedad: 15 años, 8 meses
Puntos: 4
Respuesta: alguna forma de crear un campo autonumerico

Cita:
Iniciado por freegirl Ver Mensaje
ya....es que hay varias soluciones. que coja la que él se sienta más cómodo o nos entienda!
es q no es que busque las cosas mas faciles ni en el cual me acomode si no la forma correcta y no tenga problemas yo se que soy muy nuevo y por eso pregunto tanto jejejej tenganme un pokito de paciencia jejejej saludos
__________________
Si el amor a una mujer es igual al amor a la programacion
cual de las dos escojerias...mmmm buena pregunta jejeje
  #22 (permalink)  
Antiguo 29/03/2010, 14:18
Avatar de freegirl
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: Catalonia
Mensajes: 4.334
Antigüedad: 20 años, 6 meses
Puntos: 156
Respuesta: alguna forma de crear un campo autonumerico

Cita:
Iniciado por rikimm Ver Mensaje
entonces en ves de max que se count y que mas le tengo que modificar
no. El MAX está bien. Pero antes tienes que saber si hay registros en la BD.

tienes varias soluciones
  1. puedes hacer una consulta COUNT
  2. que tu variable sea del tipo object, y antes de sumarle 1, comprueba que no sea nulo.
  3. O mejor aún, haz el Reader que te comentaba Erik.
__________________
Saludos
  #23 (permalink)  
Antiguo 29/03/2010, 14:22
 
Fecha de Ingreso: agosto-2008
Ubicación: D,F
Mensajes: 412
Antigüedad: 15 años, 8 meses
Puntos: 4
Respuesta: alguna forma de crear un campo autonumerico

Cita:
Iniciado por freegirl Ver Mensaje
no. El MAX está bien. Pero antes tienes que saber si hay registros en la BD.

tienes varias soluciones
  1. puedes hacer una consulta COUNT
  2. que tu variable sea del tipo object, y antes de sumarle 1, comprueba que no sea nulo.
  3. O mejor aún, haz el Reader que te comentaba Erik.
a ok ok ya te entendi pero ahorita si me funciona el max pork tengo registro como lo eh estado probando pues no hay problema solo el problema seria cuando sea el primer registro aunque mi logica me indica que si el camapo esta vacia lo toma como 0 eh de suponer no y pues le agrega el 1 y mi logica dice que no tendria problemas si no hay registro o estoy equivocado
__________________
Si el amor a una mujer es igual al amor a la programacion
cual de las dos escojerias...mmmm buena pregunta jejeje
  #24 (permalink)  
Antiguo 29/03/2010, 14:23
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 18 años, 9 meses
Puntos: 50
Respuesta: alguna forma de crear un campo autonumerico

Cita:
Iniciado por freegirl Ver Mensaje
ya....es que hay varias soluciones. que coja la que él se sienta más cómodo o nos entienda!

¿vosotros como lo decís que la aplicación ha petado?
Breviario cultural: pues acá tenemos varias formas:

- la aplicación ha tronado. (cuando estas en la oficina)
- ya se chingo esta madre. (cuando estas solo - tono grosero)
- mando un error.
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.
  #25 (permalink)  
Antiguo 29/03/2010, 14:25
Avatar de freegirl
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: Catalonia
Mensajes: 4.334
Antigüedad: 20 años, 6 meses
Puntos: 156
Respuesta: alguna forma de crear un campo autonumerico

o prueba:

Cita:
try
{
numeroDevuelto = Convert.ToInt32(Com.ExecuteScalar());
}
catch (Exception)
{
return 1;
}
en el caso que no tuvieras ningún registro, retornaría 1. Hay formas más "bonitas" para hacerlo, la verdad.
__________________
Saludos
  #26 (permalink)  
Antiguo 29/03/2010, 14:28
Avatar de freegirl
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: Catalonia
Mensajes: 4.334
Antigüedad: 20 años, 6 meses
Puntos: 156
Respuesta: alguna forma de crear un campo autonumerico

Cita:
Iniciado por erick_arcini Ver Mensaje
Breviario cultural: pues acá tenemos varias formas:

- la aplicación ha tronado. (cuando estas en la oficina)
- ya se chingo esta madre. (cuando estas solo - tono grosero)
- mando un error.
en tono grosero, incluso os queda fino y todo. Yo aquí oigo cosas peores...
__________________
Saludos
  #27 (permalink)  
Antiguo 29/03/2010, 14:28
 
Fecha de Ingreso: agosto-2008
Ubicación: D,F
Mensajes: 412
Antigüedad: 15 años, 8 meses
Puntos: 4
Respuesta: alguna forma de crear un campo autonumerico

Esto me ayudaria a no tener problemas si no tengo registros o cuando sea el promer registr

Cita:
Iniciado por freegirl Ver Mensaje
o prueba:

try
{
Com.CommandText = "SELECT MAX(Id) as var FROM Cliente ";
numeroDevuelto = Convert.ToInt32(Com.ExecuteScalar());
}
catch (Exception)
{
return 1;
}
y otras formas de decirlo de formas groseras seria:

pinche porqueria
no mames chingadera
etc...
espero que no me reporten jejejej
__________________
Si el amor a una mujer es igual al amor a la programacion
cual de las dos escojerias...mmmm buena pregunta jejeje
  #28 (permalink)  
Antiguo 29/03/2010, 14:39
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 18 años, 9 meses
Puntos: 50
Respuesta: alguna forma de crear un campo autonumerico

Cita:
Iniciado por rikimm Ver Mensaje
Esto me ayudaria a no tener problemas si no tengo registros o cuando sea el promer registr



y otras formas de decirlo de formas groseras seria:

pinche porqueria
no mames chingadera
etc...
espero que no me reporten jejejej
Ese try te ayudaría (perjudicaría) de tal forma si solo lo colocas en esa línea es cuando:

- puede que no traiga nada tu consulta.
- Se desconecte la base de datos por x o y al momento de hacer tu consulta.
- el dato que obtengas no sea entero.
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.
  #29 (permalink)  
Antiguo 29/03/2010, 14:43
 
Fecha de Ingreso: agosto-2008
Ubicación: D,F
Mensajes: 412
Antigüedad: 15 años, 8 meses
Puntos: 4
Respuesta: alguna forma de crear un campo autonumerico

uchala mmm me lleva mmmm espero no tener problemas cuando sea el primer registro ojala jejejejej
__________________
Si el amor a una mujer es igual al amor a la programacion
cual de las dos escojerias...mmmm buena pregunta jejeje
  #30 (permalink)  
Antiguo 29/03/2010, 15:08
Avatar de erick_arcini  
Fecha de Ingreso: julio-2005
Ubicación: Jaltenco / DF
Mensajes: 1.723
Antigüedad: 18 años, 9 meses
Puntos: 50
Respuesta: alguna forma de crear un campo autonumerico

Prueba esto:

Código C:
Ver original
  1. OleDbConnection BaseDatos = new OleDbConnection();
  2.             OleDbCommand Com = new OleDbCommand();
  3.             string Sql, mascota, miLetra, Sql2, id2;
  4.             int x, cont,numeroDevuelto;
  5.            
  6.            
  7.  
  8.             BaseDatos.ConnectionString = @"PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=C:\doggy_park.mdb";
  9.             BaseDatos.Open();
  10.             Com.Connection = BaseDatos;
  11.             Com.CommandType = CommandType.Text;
  12.             Com.CommandText = "SELECT MAX(Id) as var FROM Cliente ";
  13.         OleDbDataReader lector = Com.ExecuteReader();
  14.         if (lector.HasRows)
  15.         {//si lee que hay registros de esa consulta
  16.             if (lector.Read())
  17.             {//lee el contenido del reader 
  18.                 numeroDevuelto = lector.GetInt32(0);
  19.                 numeroDevuelto++;
  20.             }
  21.                         else
  22.                 {//si no pudo leer
  23.                     numeroDevuelto = 0;
  24.                         }
  25.         }
  26.         else
  27.         {//no trae ningun registro
  28.             numeroDevuelto = 0;
  29.         }  
  30.         BaseDatos.Close();
  31.  
  32.              id2 =  miLetra + numeroDevuelto + checkBox1.Tag;

El código lo hice manualmente en un txt así que puede que tenga errores.
__________________
Mejoremos nuestro país, ayudemos al planeta... próximamente.

Etiquetas: formulario, campos
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 15:35.