database coding (XML, CSV, TXT) - newbie needs help...

hi experts,

i am right into coding a program, which i need to store some data in a database. since its only a little amount i dont want to use the BDE. i already did some experiments with a component for comma-separatet-text database from torry as well as using tclientdataset and its xml features. the huge problem i have is, that both solutions only provide for a pretty flat style database (like a phonebook). the data i have is laid out in the following way, and i want to store it in a single file (XML? or INI?)

system (one string)
coordinateX,coordinateY (two integers)
faction (one string)
connectsto (one ore more strings (would be values from sytem^) !)

station (one string)
system (from system ^)
coordinateX,coordinateY (two integers, other then the ones in system)
belongs (one string)
connectsto (one or more strings from station^)

its pretty hard for me to figure out, because im just beginning db-programming. i need a real good solution for this. the whole db has to be stored in only one file and i dont want additional dll's or stuff to ship with the executable.

i hope i made myself clear enough to undestand ?
Much thanks in advance,

g_
g_BonEAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

ARWCommented:
If your data is that simple, you can probably stream out the XML to a text file yourself.
<ROW>
  <SYSTEM>one string
  </SYSTEM>
  <COORDINATE>
    <X-AXIS>one integer </X-AXIS>
    <Y-AXIS>one integer </Y-AXIS>
  </COORDINATE>
 
  <FACTION>one string
  </FACTION>
   
</ROW>


Another solution is Interbase, which is open source and/or Access which is not.  Also, the MSDE is an option.  What version of Delphi are you using?  Delphi 5 and higher supports ADO for sure, not sure about older versions.

Thanks
ARW
0
ARWCommented:
I forgot to say that by using ADO you can completely bypass the BDE.

ARW
0
g_BonEAuthor Commented:
im using d6 pro. i just had a look into a few freeware dbf components. the problem is that i eventually need to add pictures to this database too. i will post a more accurate structure of the databas as i build it up, hope you guys can help ?!

Thanks for the first few comments ARW.

oh.. gonna look into ADO. are there additional files to the compiled exe if i use ADO ?
0
Upgrade your Question Security!

Your question, your audience. Choose who sees your identity—and your question—with question security.

g_BonEAuthor Commented:
okay, i got a first prototype layout ready. bad thing is, that it is not as easy as i thought first. hope you can help me ?

*first part:

system-name - string (42 entries)
coordX,coordY - both integer
faction - string (8 entries)
connects - one ore more of the system-name's
one picture (galaxy-map)


*second part (would have none or one or more sets):
 sub-level of system-name

station-count - integer (# of station-name's)
station-name - string (0-? entries)
coordX,ccordY - both integer
belongs - string (approx. 30 entries)
connects - one or more of the station-name's
pic - picture (system-map)
{trades - 0-? of the ships/weapons/other below


*third part (would have one or more sets):    everything in {} is optional
 sub level of station-name                    for now, but will be included.

ships -  string (approx. 30 entries, needs to have name,details, price, etc.)
weapons - string (approx. 80 entries, needs to have name,details, price, etc.)
other - string (approx. 100 entries, needs to have name,details, price, etc.)}

layout
system-name -> station-name's->trades

the coordx,coordy are there to draw a point at the canvas of a timage (???)
connects would be used to draw lines between systems and stations.
0
ARWCommented:
I am not sure I understand teh hierarchy of your data.  When you say first part, is that the first data packet?

Are there master/detail relationships in each part?


like

each system entry has an x and a y entry?


ARW
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
g_BonEAuthor Commented:
uhm... i went on and have it working pretty well now using a tdbf data set. since im pretty new to db-coding i really had some hard days trying to nut this one out. thanks for the help anyway.
0
g_BonEAuthor Commented:
oh and... here ya go with the points ;)
0
ARWCommented:
Thanks,

BTW:

If you are using ADO in Delphi 5.0 there is a patch you should get from Borland.  You have to apply the first service pack and then you can apply this mini-Ado patch.

Good Luck

0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Delphi

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.