Subject | Re: [firebird-support] How do attach to a remote database server? |
---|---|
Author | Ann W. Harrison |
Post date | 2006-04-27T21:32:54Z |
Jeff Lynn wrote:
they are remote or local. The attach_database call parses the
file name to determine whether the database is local or remote,
including translating logical names and probing for NFS mounts.
If the database is remote, a part of the fbclient.dll packages
the requests for transmission across the network, managing
network protocol issues and translating the data (where necessary)
into a common transfer format - we happen to use Sun's XDR. For
example, a network communication between a Mac PowerPC client
and a Linux Intel server requires that data be converted, while
communication between a Windows Intel client and a Linux Intel
server does not, because client and server use the same data
formats.
That digression aside, the other end of the network is the
Firebird (or InterBase) server, which takes the packets apart,
and translates the communication back into the InterBase API
for local execution.
Although the API is documented and (reasonably) strictly
controlled, the wire protocol is not.
The Firebird JDBC interface (JayBird) uses the underlying wire
protocol directly, as does the Firebird .NET driver.
Regards,
Ann
> I am a bit confused how the client/server model work in the case ofNormal client applications use the InterBase/Firebird API whether
> using the fbclient.dll API.
they are remote or local. The attach_database call parses the
file name to determine whether the database is local or remote,
including translating logical names and probing for NFS mounts.
If the database is remote, a part of the fbclient.dll packages
the requests for transmission across the network, managing
network protocol issues and translating the data (where necessary)
into a common transfer format - we happen to use Sun's XDR. For
example, a network communication between a Mac PowerPC client
and a Linux Intel server requires that data be converted, while
communication between a Windows Intel client and a Linux Intel
server does not, because client and server use the same data
formats.
That digression aside, the other end of the network is the
Firebird (or InterBase) server, which takes the packets apart,
and translates the communication back into the InterBase API
for local execution.
Although the API is documented and (reasonably) strictly
controlled, the wire protocol is not.
The Firebird JDBC interface (JayBird) uses the underlying wire
protocol directly, as does the Firebird .NET driver.
>No. That's a special attachment call for the services API...
> There is a isc_service_attach() API, does this one I should use if I
> want to attach to the remote Firebird database server?
Regards,
Ann