Subject | Re: Determining the Root_Directory |
---|---|
Author | Dan Cooperstock |
Post date | 2007-12-28T00:10:54Z |
--- In firebird-support@yahoogroups.com, Helen Borrie <helebor@...>
wrote:
this is that the Delphi IDE makes its own connection to the database
in design-time. If its connection is via a Windows embedded server
process (which is Superserver) then that process -- owned by the
Delphi IDE -- has the read-write lock on the database file. That
blocks any other server instance from making a connection. It is
designed that way deliberately. When you hit the Run button, the
project executable is compiled and run but the connection to the
database will fail.
an integrated development environment.
That's very interesting, Helen, but PB (PowerBuilder) is different.
PB is more or less a P-Code interpreter, not a real compiler. PB does
connect to the DB (still through ODBC, though), and it allows you to
run queries from within a Database window in the IDE, with no app
being involved. Queries run there have the same problem - they can't
find my UDFs.
When I run the app from within PB, it hasn't been compiled and isn't
a separate executable - it is part of PB. That's why the app can make
its own connection to FB Embedded, even though the PB IDE also has a
connection - they are two connections from the same app, which FB
Embedded does allow.
I do see the problem of only one Embedded FB connection being allowed
when the app goes to do a backup using GBAK, say. To do that, it
disconnects from FB, so that GBAK can get a connection. But if the PB
IDE still has a connection, GBAK's connect always fails, and I get
error messages (as I should). To test that feature in my app, I have
to tell PB to disconnect from FB, and then run the app from within PB.
Anyways, that last paragraph is irrelevant to my UDFs problem. The
problem is that PB itself can't call the UDFs, when it is connected
to FB Embedded via ODBC (the only way it can connect). When it uses
the FB Server, it finds the UDFs fine.
Since the vast majority of my users will always be using FB Embedded,
I prefer to do the majority of my testing with it. So, I'd really
like to find a solution to this, and unfortunately I don't feel any
closer to that solution than when I started this thread.
wrote:
>connects to the embedded server from inside the IDE. The reason for
> At 04:53 AM 28/12/2007, Dan Cooperstock wrote:
>
> If you were using Delphi, you wouldn't be able to run an app that
this is that the Delphi IDE makes its own connection to the database
in design-time. If its connection is via a Windows embedded server
process (which is Superserver) then that process -- owned by the
Delphi IDE -- has the read-write lock on the database file. That
blocks any other server instance from making a connection. It is
designed that way deliberately. When you hit the Run button, the
project executable is compiled and run but the connection to the
database will fail.
>embedded server is a deployment option and is not designed for use in
> That, in short, is why all the documentation warns you that the
an integrated development environment.
That's very interesting, Helen, but PB (PowerBuilder) is different.
PB is more or less a P-Code interpreter, not a real compiler. PB does
connect to the DB (still through ODBC, though), and it allows you to
run queries from within a Database window in the IDE, with no app
being involved. Queries run there have the same problem - they can't
find my UDFs.
When I run the app from within PB, it hasn't been compiled and isn't
a separate executable - it is part of PB. That's why the app can make
its own connection to FB Embedded, even though the PB IDE also has a
connection - they are two connections from the same app, which FB
Embedded does allow.
I do see the problem of only one Embedded FB connection being allowed
when the app goes to do a backup using GBAK, say. To do that, it
disconnects from FB, so that GBAK can get a connection. But if the PB
IDE still has a connection, GBAK's connect always fails, and I get
error messages (as I should). To test that feature in my app, I have
to tell PB to disconnect from FB, and then run the app from within PB.
Anyways, that last paragraph is irrelevant to my UDFs problem. The
problem is that PB itself can't call the UDFs, when it is connected
to FB Embedded via ODBC (the only way it can connect). When it uses
the FB Server, it finds the UDFs fine.
Since the vast majority of my users will always be using FB Embedded,
I prefer to do the majority of my testing with it. So, I'd really
like to find a solution to this, and unfortunately I don't feel any
closer to that solution than when I started this thread.