Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Connessione (BDE - SQL) SENZA usare l'ODBC

64 views
Skip to first unread message

foxtrot_one

unread,
Jan 27, 2011, 8:11:05 AM1/27/11
to
Salve,
ho sviluppato diverse applicazioni con delphi 7 negli ultimi anni, che fanno
uso dei driver BDE mediante un ODBC per raggiungere il server SQL.
Siccome adesso per ragioni di sicurezza hanno modificato le impostazioni di
accesso al server SQL, non � pi� possibile connettersi utilizzando l'ODBC.
Le ultime applicazioni che ho sviluppato con ADO funzionano semplicemente
fornendo la stringa di connessione, quindi senza passare attraverso
l'origine ODBC.

La mia domanda � questa, come faccio a fare la stessa cosa anche col BDE?

Ho fatto diversi tentativi col passaggio dei parametri, ma non sono riuscito
ad arrivare a nulla di buono...

Grazie a chi sapra aiutarmi...

foxtrot_one

Alberto Salvati

unread,
Jan 27, 2011, 9:54:32 AM1/27/11
to
> ho sviluppato diverse applicazioni con delphi 7 negli ultimi anni, che fanno
> uso dei driver BDE mediante un ODBC per raggiungere il server SQL.

SQL e' un linguaggio e non un database.
Tu quale db stai usando? Oracle? Sybase? Db2..?

> La mia domanda questa, come faccio a fare la stessa cosa anche col BDE?

Se non ricordo male bde ha gli SqlLinks che permettono l'accesso
diretto senza passare per ODBC.
Ma non so per quali db e se questa cosa funziona che le ultime
versioni degli eventuali db previsti.

Riguardo ADO, il concetto e' diverso visto che puo' usare sia un oledb
provider generico per ODBC sia oledb provider specifici per database.
Anche dbexpress lavora nello stesso modo...

>
> Ho fatto diversi tentativi col passaggio dei parametri, ma non sono riuscito


Tentativi di che tipo?

A.

foxtrot_one

unread,
Jan 27, 2011, 10:07:04 AM1/27/11
to
Ciao,

> SQL e' un linguaggio e non un database.
> Tu quale db stai usando? Oracle? Sybase? Db2..?

Scusa, non sono stato preciso... SQL Server di Microsoft...

> Se non ricordo male bde ha gli SqlLinks che permettono l'accesso
> diretto senza passare per ODBC.
> Ma non so per quali db e se questa cosa funziona che le ultime
> versioni degli eventuali db previsti.

Mi sai dire come funzionano questi SqlLinks? Non li ho mai usati...

> Tentativi di che tipo?

Tentativi di connessione tramite passaggio dei parametri...
di default fornisce questi:
DATABASE NAME=
SERVER NAME=MSS_SERVER
USER NAME=MYNAME
OPEN MODE=READ/WRITE
SCHEMA CACHE SIZE=8
BLOB EDIT LOGGING=
LANGDRIVER=
SQLQRYMODE=
SQLPASSTHRU MODE=SHARED AUTOCOMMIT
DATE MODE=0
SCHEMA CACHE TIME=-1
MAX QUERY TIME=300
MAX ROWS=-1
BATCH COUNT=200
ENABLE SCHEMA CACHE=FALSE
SCHEMA CACHE DIR=
HOST NAME=
APPLICATION NAME=
NATIONAL LANG NAME=
ENABLE BCD=FALSE
TDS PACKET SIZE=4096
BLOBS TO CACHE=64
BLOB SIZE=32
PASSWORD=

Ho provato a passare i vari parametri, ma nulla...

foxtrot_one


Alberto Salvati

unread,
Jan 27, 2011, 10:40:22 AM1/27/11
to
Parti da qua:


property DriverName: String;
Description

Use DriverName to specify the name of the BDE driver to use for
databases connections that do not specify an AliasName, but that do
specify a DatabaseName. DriverName must be a valid BDE driver (for
instance, STANDARD, ORACLE, SYBASE, or INTERBASE).

Note: If an application sets DriverName, it must also specify
connection parameters in the Params property. Ordinarily the alias
specified in the AliasName property supplies connection parameters,
but when DriverName is set, the AliasName property is automatically
cleared to avoid BDE driver name contention.

Attempting to set DriverName when the Connected property is true
raises an exception.

Tip: At design time double-click a TDatabase component to invoke the
Database editor and set the DriverName.

Giacomo Degli Esposti

unread,
Jan 27, 2011, 10:40:30 AM1/27/11
to
On 27 Gen, 16:07, "foxtrot_one" <foxtrot_...@email.it> wrote:
> Ciao,
>
> > SQL e' un linguaggio e non un database.
> > Tu quale db stai usando? Oracle? Sybase? Db2..?
>
> Scusa, non sono stato preciso... SQL Server di Microsoft...
[...]

> > Se non ricordo male bde ha gli SqlLinks che permettono l'accesso
> > diretto senza passare per ODBC.
> > Ma non so per quali db e se questa cosa funziona che le ultime
> > versioni degli eventuali db previsti.
>
> Mi sai dire come funzionano questi SqlLinks? Non li ho mai usati...

Se non ricordo male, SqlLinks fa uso diretto delle dll client di MS,
che pero' sono in grado di connettersi a MSSQL di versione fino a
2000 e forse non sono nemmeno piu' distribuite nelle versioni
successive.

Se devi connetterti a un MSSQL piu' recente l'unico modo di farlo con
il BDE e' attraverso un ODBC.

Volendo, c'e' una alternativa (a pagamento, ovviamente) : in ditta da
me
usiamo i componenti SDAC che hanno un'interfaccia quasi identica ai
componenti BDE quindi non ti obbligano a riscrivere gran parte dl tuo
codice (qualcosina si, ma davvero poco)

http://www.devart.com/sdac/

ciao
Giacomo


0 new messages