If you read a previos post of mine, I am working
on an application, trying to move the back-end part to an SQL Database.
What I am starting from, is a "classic" Access 2003 application splitted in 2 parts:
the front end with the application consisting of "fixed data" tables, queries, forms, reports and modules
and a back-end with just the "core tables" with user data.
Until now things have worked fine, using a central location for the back-end .mdb
and a dozen of users accessing it with their own copy of the front-end .mdb
A copy of the same back-end structure database (but empty) is also stored
on each client, so the users can work also if it is not connected to the network,
just attaching the "local copy" of the database.
This is good also when the client goes out on a job trip.
Due to a growth of the back-end and to the number of concurrent user,
I am considering to move the back-end to an SQL server (actually the 2005 version).
I already used the "Microsoft SQL Server Migration Assistant for Access"
successfully, and transfered the back-end data to an SQL Server 2005.
I then changed the links of the front-end and now I am testing
the goods and the bads of this switch.
I must say that the result is not bad: the application works well
on nearly all the situations, but it's not flawless as I wanted.
As work progress I am facing new problems, some of which
can be solved with a light change of approach about the way
you manage data (change your query style)
and some of them, just make you think there is something wrong from the base....
E.G.: It seems impossible to have a memo field
working through the linked table method, if it has more than 255 chars.
Another thing I am experiencing is that if you do some single operations,
you can get the job done, but if you do them in sequence,
you can get a "concurrent action" error.
I changed and tried a couple of version of the ODBC driver,
but this problem doesn't seem to have a solution.
Searching inside this foum I found that the only way
to have a good and smooth working link with an SQL server,
is to use the Access Project (.adp),
so I begun to read and document about the way to lay down a project of this kind.
I could give it a try by "converting" all the object from the current .mdb front-end,
but some unanswered questions just leave me with doubts.
Now the questions:
Is it possible to maintain a front-end / back-end configuration using .adp?
More precisely: is it possible to manage a connection
that can switch between SQL server AND a .mdb database?
If I completely convert the frontend, I will have to transfer also the "common tables"
and re-create all the queries.
I suppose the queries will be created on the SQL server after this operation.
And after the "conversion", I will have to distribute the .adp instead of the .mdb
But what about the local copy of the back-end database (used to work off-line)?
I am thinking something like installing the SQL server on each client...
please, tell me this is NOT the way!
Any help will be appreciated.
on an application, trying to move the back-end part to an SQL Database.
What I am starting from, is a "classic" Access 2003 application splitted in 2 parts:
the front end with the application consisting of "fixed data" tables, queries, forms, reports and modules
and a back-end with just the "core tables" with user data.
Until now things have worked fine, using a central location for the back-end .mdb
and a dozen of users accessing it with their own copy of the front-end .mdb
A copy of the same back-end structure database (but empty) is also stored
on each client, so the users can work also if it is not connected to the network,
just attaching the "local copy" of the database.
This is good also when the client goes out on a job trip.
Due to a growth of the back-end and to the number of concurrent user,
I am considering to move the back-end to an SQL server (actually the 2005 version).
I already used the "Microsoft SQL Server Migration Assistant for Access"
successfully, and transfered the back-end data to an SQL Server 2005.
I then changed the links of the front-end and now I am testing
the goods and the bads of this switch.
I must say that the result is not bad: the application works well
on nearly all the situations, but it's not flawless as I wanted.
As work progress I am facing new problems, some of which
can be solved with a light change of approach about the way
you manage data (change your query style)
and some of them, just make you think there is something wrong from the base....
E.G.: It seems impossible to have a memo field
working through the linked table method, if it has more than 255 chars.
Another thing I am experiencing is that if you do some single operations,
you can get the job done, but if you do them in sequence,
you can get a "concurrent action" error.
I changed and tried a couple of version of the ODBC driver,
but this problem doesn't seem to have a solution.
Searching inside this foum I found that the only way
to have a good and smooth working link with an SQL server,
is to use the Access Project (.adp),
so I begun to read and document about the way to lay down a project of this kind.
I could give it a try by "converting" all the object from the current .mdb front-end,
but some unanswered questions just leave me with doubts.
Now the questions:
Is it possible to maintain a front-end / back-end configuration using .adp?
More precisely: is it possible to manage a connection
that can switch between SQL server AND a .mdb database?
If I completely convert the frontend, I will have to transfer also the "common tables"
and re-create all the queries.
I suppose the queries will be created on the SQL server after this operation.
And after the "conversion", I will have to distribute the .adp instead of the .mdb
But what about the local copy of the back-end database (used to work off-line)?
I am thinking something like installing the SQL server on each client...
please, tell me this is NOT the way!
Any help will be appreciated.