Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

TadoTable and Primary Key with Multi fields : Edatabase Error : Duplication in TIndexDefs

Posted on 2010-08-30
12
Medium Priority
?
1,379 Views
Last Modified: 2012-05-10
Hello,

I have a MSAccess DataBase
And in this DataBase a Table with a Primary Key based on 2 fields (NumField1 and NumField2). This table is in fact linked with 2 mothers tables (one with NumField1 Field and the other with Numfield2 Field)
In delphi i use a TadoConnection  to connect my database (witj odbc driver)
I use too a TadoTable to connect my table and i don't add or specify Index

At compilation no pb.
When i execute my application i have a Edatabase error : my <Primary Key Name > is duplicate in TIndexDefs.

I tried many things and i am sure it's because i have a multi fields in my primary index in access but i don't understand why it's no walk with Tadotable in Delphi.

Thanks for your help

0
Comment
Question by:fprovin
  • 5
  • 4
  • 3
12 Comments
 
LVL 14

Expert Comment

by:systan
ID: 33560121
Reset or Reindex or Redefine TIndexDefs

If error persist after that? Remove your primary keys in your Primary Key based Table, but do not remove the primary keys in the 2 mother tables.
0
 
LVL 38

Expert Comment

by:Geert Gruwez
ID: 33560571
are you selecting from 2 tables with identical column names ?

select *
from tableA A, tableB B
where a.numfield1 = b.numfield1

table A:
numfield1
numfield2

table B:
numfield1
numfield2

change query to

select a.numfield1, a.numfield2, b.numfield1 numfield1_b, b.numfield1 numfield2_B
from tableA A, tableB B
where a.numfield1 = b.numfield1


does that work ?
0
 

Author Comment

by:fprovin
ID: 33563371
Hi,

for Geert : no i don't do this. My Tadotable component is based only on one table.
for Systan :
Reset or Reindex : in access ?
Redefine TIndexDefs : ou meen in Delphi ?

Regards
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 14

Expert Comment

by:systan
ID: 33563901
If TIndexDefs is a component,  remove your TIndexDefs, save delphi code, open delphi code, then drop it back again.
0
 
LVL 38

Expert Comment

by:Geert Gruwez
ID: 33564635
can you post a sample .mdb with this behaviour ?

you better add access to the zones, not just delphi
you'll get a lot more access experts to look at this Q
0
 

Author Comment

by:fprovin
ID: 33564711
Hi,

For Systran : in conception i don't have any TindexDefs component i suppose that this component is cretaed  at the execution by TadoTable Component. One fact is sure : i have nothing in my code to create this component.
In Delphi help they said that TindexDef is present in TTable andTClientDataSet  but i am not using these components. (TTable is perhaps used by TadoTable).

For reindex in access, i will do it this morning.

For Geert : ok i post a simple mdb this morning too.
0
 

Author Comment

by:fprovin
ID: 33565768
Hi,

I tried to redefine Index in Access. I still have the same problem.
Here may mdb

Regards
Tests.mdb
0
 
LVL 14

Expert Comment

by:systan
ID: 33566728
Please show your code snippet accessing this database
0
 

Accepted Solution

by:
fprovin earned 0 total points
ID: 33571834
Hi,

I found the solution. If i use a client for curseur location with the tadoconnection i don't have this error. It's a little bit stupid but it means that i am obliged to use the client value for cursor location where i would prefer server but that's like that.

Thanks for all
0
 
LVL 38

Expert Comment

by:Geert Gruwez
ID: 33573649
this actually means that you are using local (memory) resources instead of the ones on the server
it's better like this if you have a lot of clients
0
 
LVL 38

Expert Comment

by:Geert Gruwez
ID: 33573652
posting code would help in finding your problem a lot faster
now it was just blind guessing
0
 

Author Comment

by:fprovin
ID: 33574367
Yeah,
you're right next time i will post the form and unit. At the beginning i was thinking it s not necessary because without code i had the problem. But i forgot parameters of the component

Best Regards
0

Featured Post

Hire Technology Freelancers with Gigs

Work with freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely, and get projects done right.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Programmer's Notepad is, one of the best free text editing tools available, simply because the developers appear to have second-guessed every weird problem or issue a programmer is likely to run into. One of these problems is selecting and deleti…
How to install Selenium IDE and loops for quick automated testing. Get Selenium IDE from http://seleniumhq.org Go to that link and select download selenium in the right hand column That will then direct you to their download page. From that p…
This tutorial covers a step-by-step guide to install VisualVM launcher in eclipse.
The viewer will learn how to use and create keystrokes in Netbeans IDE 8.0 for Windows.

972 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question