![]() | |
![]() |
| | Thread Tools | Display Modes |
#1
| |||
| |||
|
#2
| |||
| |||
|
|
Using 9.0.2.3274 on win32 Is their a way through code or technique that the client will auto-find the server. Do not want to add a "configuration" file to client pc's. Almost what I would be looking for is the BROWSE feature on the iAnywhere interactive SQL app. If only one found then attempt connection. This will reduce a lot of heartburn of setting up client pc's and making sure client's are connecting to the right server even if the ip address of server changes dhcp. |
#3
| |||
| |||
|
|
What database API are you using, ODBC, ESQL, ADO.Net, ...? Am using Java - JConnect 4 from sybase; The client pcs will be a mix of |
|
To implement the BROWSE functionality, look at the db_locate_servers() function in the documentation - the SC/dbisql tools and dblocate simply call this routine and handle the callbacks appropriatesly. -- As such no sybase isql or sybase will be installed on any of the client pcs |
|
Provided you are using one of the native ASA APIs (ODBC, ESQL, etc), and the server is running within the same subnet as the client computer, then the client application should be able to connect to the server automatically (without any preconfiguration files) as long as you specify LINKS=TCPIP;ENG=<NAME_OF_YOUR_SERVER in your connection string. i.e. the client will use a UDP broadcast to find the location of the server and then connect to it. Hmm.. What if I don't know even the ENGINE NAME ? |
#4
| |||
| |||
|
|
What database API are you using, ODBC, ESQL, ADO.Net, ...? Am using Java - JConnect 4 from sybase; The client pcs will be a mix of windows and linux based operating systems. |
|
To implement the BROWSE functionality, look at the db_locate_servers() function in the documentation - the SC/dbisql tools and dblocate simply call this routine and handle the callbacks appropriatesly. -- As such no sybase isql or sybase will be installed on any of the client pcs hence cannot use the dblocate.exe to enumerate servers on the network. |
|
Provided you are using one of the native ASA APIs (ODBC, ESQL, etc), and the server is running within the same subnet as the client computer, then the client application should be able to connect to the server automatically (without any preconfiguration files) as long as you specify LINKS=TCPIP;ENG=<NAME_OF_YOUR_SERVER in your connection string. i.e. the client will use a UDP broadcast to find the location of the server and then connect to it. Hmm.. What if I don't know even the ENGINE NAME ? |
#5
| |||
| |||
|
|
JConnect does not have a way of discovering where the engine is - you must already know the host and port number. You could switch to using the iAnywhere JDBC driver - it is a "native" ASA driver, and hence it can use the broadcast mechanism to find where the server is. |
|
Provided you are using one of the native ASA APIs (ODBC, ESQL, etc), and the server is running within the same subnet as the client computer, then the client application should be able to connect to the server automatically (without any preconfiguration files) as long as you specify LINKS=TCPIP;ENG=<NAME_OF_YOUR_SERVER in your connection string. i.e. the client will use a UDP broadcast to find the location of the server and then connect to it. Hmm.. What if I don't know even the ENGINE NAME ? If you don't know the engine name, how do you know what you are looking for? And if you do connect to a server, how do you know that you have connected to the right one? -- Well we would know by physical location one server per location. Idea was to |
#6
| |||
| |||
|
|
JConnect does not have a way of discovering where the engine is - you must already know the host and port number. You could switch to using the iAnywhere JDBC driver - it is a "native" ASA driver, and hence it can use the broadcast mechanism to find where the server is. Would any one on the newsgroup have a download link for this ? Provided you are using one of the native ASA APIs (ODBC, ESQL, etc), and the server is running within the same subnet as the client computer, then the client application should be able to connect to the server automatically (without any preconfiguration files) as long as you specify LINKS=TCPIP;ENG=<NAME_OF_YOUR_SERVER in your connection string. i.e. the client will use a UDP broadcast to find the location of the server and then connect to it. Hmm.. What if I don't know even the ENGINE NAME ? If you don't know the engine name, how do you know what you are looking for? And if you do connect to a server, how do you know that you have connected to the right one? -- Well we would know by physical location one server per location. Idea was to basically let the db admins have whatever they want to call the server and whatever port, ip they want to run it under. Then deploy thousands of clients going to different companies and "magically" they find the server .. we show them a userid/password authentication box ... so this is like a one-time setup. Basically saves the heartburn of creating & managing those gazillion configuration files. Thx for your responses. |
#7
| |||
| |||
|
|
The iAnywhere JDBC driver is include in the SQLAnywhere installation package. Look in the 9.0.2 documentation ASA Programming Guide JDBC Programming JDBC overview Choosing a JDBC driver |
![]() |
| Thread Tools | |
| Display Modes | |
| |