Newsgrupos.com  

Retroceder   Newsgrupos.com > Forum > Newsgroup es.comp.lenguajes.* Foro > Newsgroup es.comp.lenguajes.delphi
Registrarse Preguntas Frecuentes Lista de Foreros Calendario Buscar Temas de Hoy Marcar Foros Como Leídos




Respuesta
 
LinkBack Herramientas Desplegado
  #1 (permalink)  
Antiguo 22-09-2004, 12:23:07
Joaquin
 
Mensajes: n/a
Predeterminado re: problemas con SQL

Habia mandado el siguiente código:

>Tengo en mi programa esta fracción de código
>
>SQL.Add('UPDATE "Personas.db" SET RefCount = RefCount + 1');
>SQL.Add('WHERE (IdPersona = :ID)');
>Params[0].AsInteger := IdPersona;
>ExecSQL();
>
>y curiosamente cuando la ejecuto me incrementa el campo IdPersona en la
>tabla. A qué puede ser debido?.


He encontrado el problema: El campo IdPersona es autoincremental y cuando
ejecuto la SQL se incrementa porque, como entiendo, se crea un nuevo
registro donde se copian las modificaciones y luego se borra el original.

Por tanto la pregunta siguiente sería:
Cómo se puede modificar con SQL un registro con campos autoincrementales sin
que estos campos se modifiquen???????

Gracias y un saludo.



Responder Con Cita
Alt Today
Advertising
Google Adsense
 
This advertising will not be shown
in this way to registered members.
Register your free account today
and become a member on
Newsgrupos.com
Standard Sponsored Links

  #2 (permalink)  
Antiguo 22-09-2004, 16:15:14
Eduardo Quiroz Salinas
 
Mensajes: n/a
Predeterminado Re: problemas con SQL

si hay autoincremente en un campo, entonces dicho campo es el campo llave. Sòlo tienes que mandar el
numero del campo (el q se autoincrementa) como dato para tupla. Con eso NO se modifica el
autoincrementable. Pero si no lo pones dentro del update, entonces te creará uno nuevo. Tienes que
estar atento a eso.


Joaquin wrote:
> Habia mandado el siguiente código:
>
>
>>Tengo en mi programa esta fracción de código
>>
>>SQL.Add('UPDATE "Personas.db" SET RefCount = RefCount + 1');
>>SQL.Add('WHERE (IdPersona = :ID)');
>>Params[0].AsInteger := IdPersona;
>>ExecSQL();
>>
>>y curiosamente cuando la ejecuto me incrementa el campo IdPersona en la
>>tabla. A qué puede ser debido?.

>
>
> He encontrado el problema: El campo IdPersona es autoincremental y cuando
> ejecuto la SQL se incrementa porque, como entiendo, se crea un nuevo
> registro donde se copian las modificaciones y luego se borra el original.
>
> Por tanto la pregunta siguiente sería:
> Cómo se puede modificar con SQL un registro con campos autoincrementales sin
> que estos campos se modifiquen???????
>
> Gracias y un saludo.
>
>
>


--
Linux user number 344659

"...Los que no requieren de un dios para ser virtuosos,
son la desesperacion de los creyentes..."

-------------------------------
Eduardo Quiroz Salinas
09-5149349
eduardoquiroz***vtr.net
-------------------------------
Responder Con Cita
  #3 (permalink)  
Antiguo 22-09-2004, 16:15:14
Eduardo Quiroz Salinas
 
Mensajes: n/a
Predeterminado Re: problemas con SQL

si hay autoincremente en un campo, entonces dicho campo es el campo llave. Sòlo tienes que mandar el
numero del campo (el q se autoincrementa) como dato para tupla. Con eso NO se modifica el
autoincrementable. Pero si no lo pones dentro del update, entonces te creará uno nuevo. Tienes que
estar atento a eso.


Joaquin wrote:
> Habia mandado el siguiente código:
>
>
>>Tengo en mi programa esta fracción de código
>>
>>SQL.Add('UPDATE "Personas.db" SET RefCount = RefCount + 1');
>>SQL.Add('WHERE (IdPersona = :ID)');
>>Params[0].AsInteger := IdPersona;
>>ExecSQL();
>>
>>y curiosamente cuando la ejecuto me incrementa el campo IdPersona en la
>>tabla. A qué puede ser debido?.

>
>
> He encontrado el problema: El campo IdPersona es autoincremental y cuando
> ejecuto la SQL se incrementa porque, como entiendo, se crea un nuevo
> registro donde se copian las modificaciones y luego se borra el original.
>
> Por tanto la pregunta siguiente sería:
> Cómo se puede modificar con SQL un registro con campos autoincrementales sin
> que estos campos se modifiquen???????
>
> Gracias y un saludo.
>
>
>


--
Linux user number 344659

"...Los que no requieren de un dios para ser virtuosos,
son la desesperacion de los creyentes..."

-------------------------------
Eduardo Quiroz Salinas
09-5149349
eduardoquiroz***vtr.net
-------------------------------
Responder Con Cita
  #4 (permalink)  
Antiguo 22-09-2004, 16:15:14
Eduardo Quiroz Salinas
 
Mensajes: n/a
Predeterminado Re: problemas con SQL

si hay autoincremente en un campo, entonces dicho campo es el campo llave. Sòlo tienes que mandar el
numero del campo (el q se autoincrementa) como dato para tupla. Con eso NO se modifica el
autoincrementable. Pero si no lo pones dentro del update, entonces te creará uno nuevo. Tienes que
estar atento a eso.


Joaquin wrote:
> Habia mandado el siguiente código:
>
>
>>Tengo en mi programa esta fracción de código
>>
>>SQL.Add('UPDATE "Personas.db" SET RefCount = RefCount + 1');
>>SQL.Add('WHERE (IdPersona = :ID)');
>>Params[0].AsInteger := IdPersona;
>>ExecSQL();
>>
>>y curiosamente cuando la ejecuto me incrementa el campo IdPersona en la
>>tabla. A qué puede ser debido?.

>
>
> He encontrado el problema: El campo IdPersona es autoincremental y cuando
> ejecuto la SQL se incrementa porque, como entiendo, se crea un nuevo
> registro donde se copian las modificaciones y luego se borra el original.
>
> Por tanto la pregunta siguiente sería:
> Cómo se puede modificar con SQL un registro con campos autoincrementales sin
> que estos campos se modifiquen???????
>
> Gracias y un saludo.
>
>
>


--
Linux user number 344659

"...Los que no requieren de un dios para ser virtuosos,
son la desesperacion de los creyentes..."

-------------------------------
Eduardo Quiroz Salinas
09-5149349
eduardoquiroz***vtr.net
-------------------------------
Responder Con Cita
  #5 (permalink)  
Antiguo 22-09-2004, 16:15:14
Eduardo Quiroz Salinas
 
Mensajes: n/a
Predeterminado Re: problemas con SQL

si hay autoincremente en un campo, entonces dicho campo es el campo llave. Sòlo tienes que mandar el
numero del campo (el q se autoincrementa) como dato para tupla. Con eso NO se modifica el
autoincrementable. Pero si no lo pones dentro del update, entonces te creará uno nuevo. Tienes que
estar atento a eso.


Joaquin wrote:
> Habia mandado el siguiente código:
>
>
>>Tengo en mi programa esta fracción de código
>>
>>SQL.Add('UPDATE "Personas.db" SET RefCount = RefCount + 1');
>>SQL.Add('WHERE (IdPersona = :ID)');
>>Params[0].AsInteger := IdPersona;
>>ExecSQL();
>>
>>y curiosamente cuando la ejecuto me incrementa el campo IdPersona en la
>>tabla. A qué puede ser debido?.

>
>
> He encontrado el problema: El campo IdPersona es autoincremental y cuando
> ejecuto la SQL se incrementa porque, como entiendo, se crea un nuevo
> registro donde se copian las modificaciones y luego se borra el original.
>
> Por tanto la pregunta siguiente sería:
> Cómo se puede modificar con SQL un registro con campos autoincrementales sin
> que estos campos se modifiquen???????
>
> Gracias y un saludo.
>
>
>


--
Linux user number 344659

"...Los que no requieren de un dios para ser virtuosos,
son la desesperacion de los creyentes..."

-------------------------------
Eduardo Quiroz Salinas
09-5149349
eduardoquiroz***vtr.net
-------------------------------
Responder Con Cita
  #6 (permalink)  
Antiguo 22-09-2004, 16:15:14
Eduardo Quiroz Salinas
 
Mensajes: n/a
Predeterminado Re: problemas con SQL

si hay autoincremente en un campo, entonces dicho campo es el campo llave. Sòlo tienes que mandar el
numero del campo (el q se autoincrementa) como dato para tupla. Con eso NO se modifica el
autoincrementable. Pero si no lo pones dentro del update, entonces te creará uno nuevo. Tienes que
estar atento a eso.


Joaquin wrote:
> Habia mandado el siguiente código:
>
>
>>Tengo en mi programa esta fracción de código
>>
>>SQL.Add('UPDATE "Personas.db" SET RefCount = RefCount + 1');
>>SQL.Add('WHERE (IdPersona = :ID)');
>>Params[0].AsInteger := IdPersona;
>>ExecSQL();
>>
>>y curiosamente cuando la ejecuto me incrementa el campo IdPersona en la
>>tabla. A qué puede ser debido?.

>
>
> He encontrado el problema: El campo IdPersona es autoincremental y cuando
> ejecuto la SQL se incrementa porque, como entiendo, se crea un nuevo
> registro donde se copian las modificaciones y luego se borra el original.
>
> Por tanto la pregunta siguiente sería:
> Cómo se puede modificar con SQL un registro con campos autoincrementales sin
> que estos campos se modifiquen???????
>
> Gracias y un saludo.
>
>
>


--
Linux user number 344659

"...Los que no requieren de un dios para ser virtuosos,
son la desesperacion de los creyentes..."

-------------------------------
Eduardo Quiroz Salinas
09-5149349
eduardoquiroz***vtr.net
-------------------------------
Responder Con Cita
  #7 (permalink)  
Antiguo 22-09-2004, 16:15:14
Eduardo Quiroz Salinas
 
Mensajes: n/a
Predeterminado Re: problemas con SQL

si hay autoincremente en un campo, entonces dicho campo es el campo llave. Sòlo tienes que mandar el
numero del campo (el q se autoincrementa) como dato para tupla. Con eso NO se modifica el
autoincrementable. Pero si no lo pones dentro del update, entonces te creará uno nuevo. Tienes que
estar atento a eso.


Joaquin wrote:
> Habia mandado el siguiente código:
>
>
>>Tengo en mi programa esta fracción de código
>>
>>SQL.Add('UPDATE "Personas.db" SET RefCount = RefCount + 1');
>>SQL.Add('WHERE (IdPersona = :ID)');
>>Params[0].AsInteger := IdPersona;
>>ExecSQL();
>>
>>y curiosamente cuando la ejecuto me incrementa el campo IdPersona en la
>>tabla. A qué puede ser debido?.

>
>
> He encontrado el problema: El campo IdPersona es autoincremental y cuando
> ejecuto la SQL se incrementa porque, como entiendo, se crea un nuevo
> registro donde se copian las modificaciones y luego se borra el original.
>
> Por tanto la pregunta siguiente sería:
> Cómo se puede modificar con SQL un registro con campos autoincrementales sin
> que estos campos se modifiquen???????
>
> Gracias y un saludo.
>
>
>


--
Linux user number 344659

"...Los que no requieren de un dios para ser virtuosos,
son la desesperacion de los creyentes..."

-------------------------------
Eduardo Quiroz Salinas
09-5149349
eduardoquiroz***vtr.net
-------------------------------
Responder Con Cita
  #8 (permalink)  
Antiguo 22-09-2004, 16:15:14
Eduardo Quiroz Salinas
 
Mensajes: n/a
Predeterminado Re: problemas con SQL

si hay autoincremente en un campo, entonces dicho campo es el campo llave. Sòlo tienes que mandar el
numero del campo (el q se autoincrementa) como dato para tupla. Con eso NO se modifica el
autoincrementable. Pero si no lo pones dentro del update, entonces te creará uno nuevo. Tienes que
estar atento a eso.


Joaquin wrote:
> Habia mandado el siguiente código:
>
>
>>Tengo en mi programa esta fracción de código
>>
>>SQL.Add('UPDATE "Personas.db" SET RefCount = RefCount + 1');
>>SQL.Add('WHERE (IdPersona = :ID)');
>>Params[0].AsInteger := IdPersona;
>>ExecSQL();
>>
>>y curiosamente cuando la ejecuto me incrementa el campo IdPersona en la
>>tabla. A qué puede ser debido?.

>
>
> He encontrado el problema: El campo IdPersona es autoincremental y cuando
> ejecuto la SQL se incrementa porque, como entiendo, se crea un nuevo
> registro donde se copian las modificaciones y luego se borra el original.
>
> Por tanto la pregunta siguiente sería:
> Cómo se puede modificar con SQL un registro con campos autoincrementales sin
> que estos campos se modifiquen???????
>
> Gracias y un saludo.
>
>
>


--
Linux user number 344659

"...Los que no requieren de un dios para ser virtuosos,
son la desesperacion de los creyentes..."

-------------------------------
Eduardo Quiroz Salinas
09-5149349
eduardoquiroz***vtr.net
-------------------------------
Responder Con Cita
  #9 (permalink)  
Antiguo 23-09-2004, 08:57:39
Joaquin
 
Mensajes: n/a
Predeterminado Re: problemas con SQL

Muchas gracias por la aclaración.

"Eduardo Quiroz Salinas" <eduardoquiroz***vtr.net> escribió en el mensaje
news:cis52a$l8p$1***news1.nivel5.cl...
> si hay autoincremente en un campo, entonces dicho campo es el campo llave.

Sòlo tienes que mandar el
> numero del campo (el q se autoincrementa) como dato para tupla. Con eso

NO se modifica el
> autoincrementable. Pero si no lo pones dentro del update, entonces te

creará uno nuevo. Tienes que
> estar atento a eso.
>
>
> Joaquin wrote:
> > Habia mandado el siguiente código:
> >
> >
> >>Tengo en mi programa esta fracción de código
> >>
> >>SQL.Add('UPDATE "Personas.db" SET RefCount = RefCount + 1');
> >>SQL.Add('WHERE (IdPersona = :ID)');
> >>Params[0].AsInteger := IdPersona;
> >>ExecSQL();
> >>
> >>y curiosamente cuando la ejecuto me incrementa el campo IdPersona en la
> >>tabla. A qué puede ser debido?.

> >
> >
> > He encontrado el problema: El campo IdPersona es autoincremental y

cuando
> > ejecuto la SQL se incrementa porque, como entiendo, se crea un nuevo
> > registro donde se copian las modificaciones y luego se borra el

original.
> >
> > Por tanto la pregunta siguiente sería:
> > Cómo se puede modificar con SQL un registro con campos autoincrementales

sin
> > que estos campos se modifiquen???????
> >
> > Gracias y un saludo.
> >
> >
> >

>
> --
> Linux user number 344659
>
> "...Los que no requieren de un dios para ser virtuosos,
> son la desesperacion de los creyentes..."
>
> -------------------------------
> Eduardo Quiroz Salinas
> 09-5149349
> eduardoquiroz***vtr.net
> -------------------------------



Responder Con Cita
 
  #10 (permalink)  
Antiguo 23-09-2004, 08:57:39
Joaquin
 
Mensajes: n/a
Predeterminado Re: problemas con SQL

Muchas gracias por la aclaración.

"Eduardo Quiroz Salinas" <eduardoquiroz***vtr.net> escribió en el mensaje
news:cis52a$l8p$1***news1.nivel5.cl...
> si hay autoincremente en un campo, entonces dicho campo es el campo llave.

Sòlo tienes que mandar el
> numero del campo (el q se autoincrementa) como dato para tupla. Con eso

NO se modifica el
> autoincrementable. Pero si no lo pones dentro del update, entonces te

creará uno nuevo. Tienes que
> estar atento a eso.
>
>
> Joaquin wrote:
> > Habia mandado el siguiente código:
> >
> >
> >>Tengo en mi programa esta fracción de código
> >>
> >>SQL.Add('UPDATE "Personas.db" SET RefCount = RefCount + 1');
> >>SQL.Add('WHERE (IdPersona = :ID)');
> >>Params[0].AsInteger := IdPersona;
> >>ExecSQL();
> >>
> >>y curiosamente cuando la ejecuto me incrementa el campo IdPersona en la
> >>tabla. A qué puede ser debido?.

> >
> >
> > He encontrado el problema: El campo IdPersona es autoincremental y

cuando
> > ejecuto la SQL se incrementa porque, como entiendo, se crea un nuevo
> > registro donde se copian las modificaciones y luego se borra el

original.
> >
> > Por tanto la pregunta siguiente sería:
> > Cómo se puede modificar con SQL un registro con campos autoincrementales

sin
> > que estos campos se modifiquen???????
> >
> > Gracias y un saludo.
> >
> >
> >

>
> --
> Linux user number 344659
>
> "...Los que no requieren de un dios para ser virtuosos,
> son la desesperacion de los creyentes..."
>
> -------------------------------
> Eduardo Quiroz Salinas
> 09-5149349
> eduardoquiroz***vtr.net
> -------------------------------



Responder Con Cita
Respuesta


Herramientas
Desplegado

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
Trackbacks are habilitado
Pingbacks are habilitado
Refbacks are habilitado


Temas Similares
Tema Autor Foro Respuestas Último mensaje
Problemas con el Informe de Problemas y Soluciones Carlos Ivan Newsgroup microsoft.public.es.windowsvista 0 16-07-2008 04:38:49





Powered by: vBulletin, Versión 3.6.8
Derechos de Autor ©2000 - 2008, Jelsoft Enterprises Ltd.

LinkBacks Enabled by vBSEO 3.1.0 © 2007, Crawlability, Inc.