Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Updateable views and autoinc
Message
 
 
À
11/12/2006 16:38:07
Information générale
Forum:
Visual FoxPro
Catégorie:
Base de données, Tables, Vues, Index et syntaxe SQL
Versions des environnements
Visual FoxPro:
VFP 9 SP1
OS:
Windows XP SP2
Network:
Windows 2003 Server
Database:
Visual FoxPro
Divers
Thread ID:
01176384
Message ID:
01188646
Vues:
20
>>Fabio
>>What happens if i add a record in the view?
>
>The record is added to the view's buffer.
>
>>Will it look for the next number in the underlying table's autoinc field?
>
>not
>
>> If yes, i hope the autoinc number gets updated in the table. In this case, what happens then if i do a TableRevert?
>
>disregard.
>
>> If not, i then have to start numbering those id's in the view manually, and i will have collisions if people enter records directly in other screens in the underlying table while somebody is working on the view.
>
>This is, but any collision can happen.
>
>You have 3 cases:
>- first : at the client side the id is not necessary because none foreign key exists on the interface.
>you can set id = NULL
>
>- second : at the client side the id is necessary because some ( not implicit ) foreign key exists,
>but only once an id is used;
>on this case a id is necessary to maintain the interface's data structure.
>You can define a temporary id ( into the buffer ), this can to be a id that exists
>
>- third : at the client side the id is necessary because some ( not implicit ) foreign key exists,
>but others id are used;
>on this case a id is necessary to maintain the interface's data structure,
>but temporary id cannot to be an admissible id.
>You can define a temporary id ( into the buffer ), but this id has to be a not admissible value
>( for example a negative number, the solution chosen by the VFP Team for buffered recno() )
>
>At the end,
>TABLEUPDATE() disregard the temporary id and get the true ID from the autoinc field,
>TABLEREVERT() doesn't touch the table.
>
>Fabio

I was thinking about something like that, e.g. put, for example, a parent record negative recno() (since new records are added with negative recno if table buffering is in effect) into the child table and wait for the table update to replace child with the actual key, but it sounds quite complex.

Do you have better ideas?

Thanks in advance.
If it's not broken, fix it until it is.


My Blog
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform