Página 1 de 1

ODBC y cConnect

Publicado: Mié Ago 17, 2005 6:33 pm
por fredy[1]
Hola,
Estoy probando el acceso a tablas ads a través de odbc.
En el IDE, cuando le indico el dns y la conecto, la propiedad cConnect carga
una cadena del tipo:
DSN=fichas;DataDirectory=C:XailerGremiosdatos;SERVER=NotT heServer;CharSet=ANSI;DefaultType=Advantage;Rows=False;Advan tageLocking=ON;Locking=Record;MemoBlockSize=64;MaxTableClose Cache=5;ServerTypes=1;TrimTrailingSpaces=False
Veo que en ella aparecen los datos que he metido en el dsn así­ como el propio
dsn utilizado.
Me surgen algunas preguntas:
1- ¿Si cambio el directorio de datos en el dsn, qué valor es el bueno, el
del dsn o el de cConnect?
2- Podrí­a cambiar el direcciorio de acceso modificando la cadena cConnect
y dejando el dns tal cual?
3- ¿Puedo dejar cDSN en blanco e indicar los datos de conexión solo en cConnect?
Lo cierto es que entiendo muy bien cómo interactúan estas dos propiedades
entre sí­.
Lo que intento es lo siguiente:
Cuando trabajo con tablas, mediante odbfdataset, tengo un fichero ini dónde
le indico a qué directorio tiene que ir a buscar los datos.
Pero cuando trabajo con odbc, esa información está dentro del dsn del sistema,
con lo cual hay que ir a panel de control, etc.. a cambiarla.
Me gustarí­a poder utilizar los datos de fichero ini para cambiar tambien
el acceso a datos de los odbf y la verdad es que me he liado conectando,
desconectando, abriendo dataset, antes, despues, en fin, que me he perdido.
¿Me podéis indicar los pasos a seguir partiendo de cDirInicial, que es la
variable donde está el directorio de los datos?
Un saludico,
Fredy

ODBC y cConnect

Publicado: Jue Ago 18, 2005 10:24 am
por ignacio
Fredy,
cConnect tiene siempre preferencia sobre cDsn y cUser. Si esta definido
cConnect el resto de propiedades no se usa.
Cuando se hace una conexión ODBC cConnect se inicializa a la salida del
diálogo o conexión directa aportando normalmente mucha más información de la
conexión que la que aportan las propiedades cDsn y cUser. En posteriores
conexiones se utilizará la información de la propiedad cConnect.
> 1- ¿Si cambio el directorio de datos en el dsn, qué valor es el bueno, el
> del dsn o el de cConnect?
Todo depende del driver ODBC que uses. Si dicho driver incluyo dicho
directorio en la cadena cConnect presumiblemente deberás actualizarlo, y lo
más sencillo es que lo dejes en blanco y vuelvas a hacer la conexión.
> 2- Podría cambiar el direcciorio de acceso modificando la cadena cConnect
> y dejando el dns tal cual?
De eso se trata ;-) Debería funcionar, sino lo hace, es por que el driver
ODBC no hace caso a dicho 'token' de la cadena cConnect. Pero no es muy
probable de que eso ocurra.
> 3- ¿Puedo dejar cDSN en blanco e indicar los datos de conexión solo en
> cConnect?
Claro, sin problemas.
> ¿Me podéis indicar los pasos a seguir partiendo de cDirInicial, que es la
> variable donde está el directorio de los datos?
Lo que intentas hacer debería funcionar simplemente cambiando el directorio
en la cadena cConnect (si el driver ODBC tiene en cuenta dicha información),
ya que toma preferencia la información de cConnect sobre la propia del DSN.
Un saludo,
"Fredy" <fredy@airtel.net> escribió en el mensaje
news:[email=a20b86f59b08c771714a005d28@news.xailer.com...]a20b86f59b08c771714a005d28@news.xailer.com...[/email]
> Hola,
>
> Estoy probando el acceso a tablas ads a través de odbc.
>
> En el IDE, cuando le indico el dns y la conecto, la propiedad cConnect
> carga una cadena del tipo:
>
> DSN=fichas;DataDirectory=C:XailerGremiosdatos;SERVER=NotT heServer;CharSet=ANSI;DefaultType=Advantage;Rows=False;Advan tageLocking=ON;Locking=Record;MemoBlockSize=64;MaxTableClose Cache=5;ServerTypes=1;TrimTrailingSpaces=False
>
> Veo que en ella aparecen los datos que he metido en el dsn así como el
> propio dsn utilizado.
>
> Me surgen algunas preguntas:
>
> 1- ¿Si cambio el directorio de datos en el dsn, qué valor es el bueno, el
> del dsn o el de cConnect?
>
> 2- Podría cambiar el direcciorio de acceso modificando la cadena cConnect
> y dejando el dns tal cual?
>
> 3- ¿Puedo dejar cDSN en blanco e indicar los datos de conexión solo en
> cConnect?
>
>
> Lo cierto es que entiendo muy bien cómo interactúan estas dos propiedades
> entre sí.
>
> Lo que intento es lo siguiente:
>
> Cuando trabajo con tablas, mediante odbfdataset, tengo un fichero ini
> dónde le indico a qué directorio tiene que ir a buscar los datos.
> Pero cuando trabajo con odbc, esa información está dentro del dsn del
> sistema, con lo cual hay que ir a panel de control, etc.. a cambiarla.
> Me gustaría poder utilizar los datos de fichero ini para cambiar tambien
> el acceso a datos de los odbf y la verdad es que me he liado conectando,
> desconectando, abriendo dataset, antes, despues, en fin, que me he
> perdido.
>
> ¿Me podéis indicar los pasos a seguir partiendo de cDirInicial, que es la
> variable donde está el directorio de los datos?
>
>
> Un saludico,
> Fredy
>
>