Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Chris Miller on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Delphi and Access as BE

Status
Not open for further replies.

fule12

Programmer
Nov 12, 2001
140
YU
I'm newbie in Delphi and I need some help and advice.
We have application in Access (size of db is 20mb and between 10 -15 users are connected to application, local network).
My dilemma is: If i create front-end(Delphi) and for now leave Access as Back-end maybe later when i learn more move to SQL Server like back end)Will this solution make
any approve?
What if i create smaller Server who will hold all query’s?
will every workstation pulls all data over the network( for every query)?I know that access pulls all data to client and than run query.

Thanks

Fule
 
If you are looking for better performance, then while you are still using Access as a back-end database - you wont see any.

This is because Access is a record-based database (a desktop database really.) The only benefit from creating front-end in Delphi is perhaps better program design and will at least be a step in the right direction. then when you feel more confident with SQL, you only then need to change components etc.

There is a utility that ships with Delphi to convert old database into Interbase. Its called Data Pump.

Hope this helps..

Opp.

 
Hi,
generally speaking you may change database any time you like; if you use an ODBC to connect the data, you may not know if the database is Oracle, MsSql, Access or else.

Speaking specifically to Access, it have a particular SQL dialect (bleach) that may require some translations to run on serious database server, specially when involving date and time fields.

You may write your code to format the data as needed,
for example:
************************************************
Query1.Sql.Add('Where DateField='+YYMMGG(Now));

Function YYMMGG(D:TDateTime);
(...)
If IsAccess
Result := ...
Else
Result:= ...
End;
************************************************
If you don't write the SQL by yourself you probably won't have any problem.

*=*

If you see the properties of an TAdoTable, you may specify CursorLocation, CursorType, MaxRecords etc, to reduce the traffic over the lan.

*=*

More generally speaking you can choose a great variety of methods to get data out of a database: SQL server can publish data via IIS (Ms web server), Soap servers may distribute XML over the net, 3 tier technology may be great if you plan to open your program to internet (see ASTATECH.com), ADO, dbExpress, etc may be also have features that can be usefull to you.

Ciao,
Geppo Darkson.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top