Ver Mensaje Individual
  #1  
Antiguo 01-07-2006
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Reputación: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Interbase y el disco D:

El BDE utiliza el parámetro SERVER NAME de los alias de InterBase para determinar, además de cuál base de datos queremos abrir, el protocolo mediante el cual queremos comunicarnos con el servidor. Por ejemplo, si deseamos abrir una base de datos local, es necesario que indiquemos la ruta completa al fichero principal de la base de datos:

Código:
C:\Datos\1999\Empresas.GDB
Si la base de datos reside en un servidor remoto, al cual llamaremos SERV, y queremos conectarnos mediante NetBEUI, la sintaxis es la siguiente:

Código:
\\SERV\Datos\1999\Empresas.GDB
Observe que estamos refiriéndonos a una ruta de directorios, no a un recurso compartido. Es muy posible y deseable que el usuario de red no tenga acceso al directorio C:\Datos\1999 mediante el servicio de compartir archivos del servidor; deseable porque, de este modo, no puede realizar copias sin autorización del fichero, que pondrían en peligro la seguridad de los datos.

Por último, si queremos utilizar TCP/IP con un servidor remoto, ésta es la sintaxis correcta:

Código:
SERV:/Datos/1999/Empresas.GDB
Los dos ejemplos anteriores de conexiones remotas asumen que el fichero principal de la base de datos reside en el disco C: del servidor (pueden existir ficheros secundarios en otros discos). ¿Qué pasaría si nos vemos obligados a situar este fichero en un disco alternativo? Si utilizamos NetBEUI es muy sencillo indicar en qué disco está el fichero:

Código:
\\SERV\D:\Datos\1999\Empresas.GDB
Lamentablemente, la sintaxis para TCP/IP no permite incluir, por algún motivo que se me escapa, la indicación del disco. Pero no se preocupe, porque existe un truco bastante probado. En primer lugar, debe eliminar el protocolo NetBEUI de su sistema. Esto es una buena idea en general, sobre todo si quiere una red que vaya a una buena velocidad. Si entonces pasa al BDE una cadena con la sintaxis de NetBEUI, se verá obligado a utilizar TCP/IP de todos modos, pero colateralmente podrá indicar también el disco donde se encuentra la base de datos.

ACLARACION

Varias personas me han escrito para comunicarme que pueden conectarse a una base de datos remota situada en el disco D: utilizando directamente la sintaxis de TCP/IP. Lo he comprobado y, efectivamente, funciona. Bien: juro por lo que haya que jurar, que hasta determinada versión del cliente de InterBase, este problema existía; tenía una base de datos de consultas precisamente un segundo disco de un servidor, y no había forma de conectarse utilizando dicho protocolo. En algún momento se arregló el problema, pero yo no me enteré. Voy a intentar realizar un par de pruebas con versiones anteriores, y después corregiré esta página, o la sustituiré con algún otro truco.
Responder Con Cita