PDA

Ver la Versión Completa : Accesar a BD de un servidor


Rubiel
26-06-2003, 22:21:27
Tengo una inquietud... Sé más o menos el procedimiento para accesar a una BD en la misma máquina, pero al parecer requiero poner esa BD en un servidor, como base de datos centralizada, pero no sé como se hace eso.

Me imagino que cambia el procedimiento, pero ¿que tanto cambia?. También sé que cuando es esta la situación se requiere tener cierto control de concurrencia y otras cositas que he oido pero no aplicado. Ojala me puedan decir que hacer para lograr este cambio y también como hacerlo, o al menos en donde puedo encontrar tal información.

Algo me comentaron de que debía direccionar con Ip's y a cierta carpeta... pero fue solo un comentario. ES eso cierto? y si lo es... ¿Cómo se logra?.

:D Gracias por leer esto... y espero me tengan respuesta a esta situación. :D

jachguate
27-06-2003, 00:21:52
De que base de datos estás hablando??????

Rubiel
30-06-2003, 04:42:32
Necesito compartir una BD con varias maquinas y eso no lo he hecho... primeramente esta información era accesada por la misma maquina pero ahora es necesario poner más maquinas por lo que necesito compartir esa BD, el problema es ke no se hacerlo, ¿sabes como hacer eso?. Me preguntas que de que BD hablo, pues es una que tiene tablas Paradox y uso delphi 5 no se si a esa información te referías, pero ojala que sirva de algo para que me des respuesta. De antemano gracias...

__cadetill
30-06-2003, 09:51:17
Para empezar te recomiendo que le eches un vistazo a un articulo que hay en esta misma web en http://www.clubdelphi.com/columnas/1.php

Cabanyaler
01-07-2003, 10:24:55
Esta respuesta no es trivial, es decir, no es que se te pueda decir: haz esto así y esto así.
Creo que deberias documentarte tanto a nivel conceptual como técnico en cuestión de la BBDD q estés utilizando.
Podrás encontrar amplia documentación en las páginas de este foro, así como en la del maestro www.marteens.com, y por supuesto en otras muchas.
Suerte.:cool:

Rubiel
02-07-2003, 19:46:36
Cadetill:
Gracias por la página, me quedaron algunas dudas: ¿que son las normas UNC? ¿Funciona de manera similar el procedimiento para Delphi 5? Oye los archivos con extenaión .lck y .net ¿los creo o sea crean automáticamente?.

Cabanyaler:
Ya conozco lo conceptual de una BDD, pero lo que desconozco es la manera de ponerlo en práctica... Gracias por la página pero no la abre... tienes alguna otra???

Seguiré investigando... ;)

__cadetill
03-07-2003, 12:44:48
Posteado originalmente por Rubiel
¿que son las normas UNC? ¿Funciona de manera similar el procedimiento para Delphi 5?

Bueno, pos la verdad es que aqui me dejas fuera de juego, no tengo ni idea :o (espero que alguien lo sepa ;)), pero el procedimiento es el mismo para cualquier version de Delphi

Posteado originalmente por Rubiel
Oye los archivos con extenaión .lck y .net ¿los creo o sea crean automáticamente?.


Estos archivos se crean automaticamente

Lepe
03-07-2003, 17:27:36
Holas

de las UNC lo único que sé es que significa Universal Naming Convention y que debe ser del tipo:

\\NombreOrdenador\nombrecarpeta

así se DEBE hacer referencia a una carpeta de red donde reside nuestra base de datos, la verdad, como no tengo red, pues no he podido probarlo, pero estoy en el mismo tema. aqui va lo que he podido encontrar:

Universal Naming Convention (UNC)

--------------------------------------------------------------------------------

For file-based applications, how is the Universal Naming Convention obtained for path names?


--------------------------------------------------------------------------------

To get the UNC name of a drive-based path, use the Windows API call WNetGetUniversalName. This function takes a drive-based path (i.e., fully qualified file name) and returns its UNC equivalent.

Be forewarned, though: This call is not supported by Windows 95. Here's something that should work if you're in NT:

function GetUNCName(PathStr : String) : String;
var
bufSize : DWord;
buf : TUniversalNameInfo;
msg : String;
begin
bufSize := SizeOf(TUniversalNameInfo);
if (WNetGetUniversalName(PChar(PathStr), UNIVERSAL_NAME_INFO_LEVEL,
buf, bufSize) > 0) then
case GetLastError of
ERROR_BAD_DEVICE : msg := 'ERROR_BAD_DEVICE';
ERROR_CONNECTION_UNAVAIL: msg := 'ERROR_CONNECTION_UNAVAIL';
ERROR_EXTENDED_ERROR : msg := 'ERROR_EXTENDED_ERROR';
ERROR_MORE_DATA : msg := 'ERROR_MORE_DATA';
ERROR_NOT_SUPPORTED : msg := 'ERROR_NOT_SUPPORTED';
ERROR_NO_NET_OR_BAD_PATH: msg := 'ERROR_NO_NET_OR_BAD_PATH';
ERROR_NO_NETWORK : msg := 'ERROR_NO_NETWORK';
ERROR_NOT_CONNECTED : msg := 'ERROR_NOT_CONNECTED';
end
else
msg := buf.lpUniversalName;

Result := msg;
end;

HE DICHO :D

Rubiel
03-07-2003, 21:19:57
Hola...
Cadetill, :cool: gracias pero... bueno se crean automáticamente pero como saben los archivos ke deben ir en "esa carpeta de red" ke dice en la pagina ke me diste????:confused:

Lepe, :p gracias por tu respuesta... pero con el código me kedé así: :confused: :eek: ... haber osea ke asi debo direccionar todos los archivos ke vaya a compartir o ke onda?? AHh y eso es código Delphi o ke??:( ...

Bueno de cualkier manera... gracias amigos...:D

__cadetill
03-07-2003, 22:20:06
Posteado originalmente por Rubiel
[Cadetill, :cool: gracias pero... bueno se crean automáticamente pero como saben los archivos ke deben ir en "esa carpeta de red" ke dice en la pagina ke me diste????:confused:


por configuracion del BDE. Si no recuerdo mal....

Abres el BDE Administrator
Vas a la pestaña configuración
Expandes el arbol, y vas a Drivers, Native, Paradox
Aqui tienes una variable, el Net Dir
Aqui especificas la ruta

Rubiel
03-07-2003, 22:32:53
Gracias Cadetill, voy a checar eso... y después vemos ok?? pero si tienes más información te agradecería ke me la enviarás...


Lo de enviar información al respecto de este tema, lo agradecería mucho a cualquier persona... Nos leemos.

Lepe
07-07-2003, 19:04:14
pues si, si es codigo delphi :D

antes de seguir leyendo, mira este hilo anterior
creo que te sacará de algunas dudas:
http://www.clubdelphi.com/foros/archivo/viewtopic.php?t=18832&highlight=miserver

y busca en el foro sobre 'paradox en red' verás que hay mucho dicho sobre el tema.

Lo de UNC es simplemente otra forma de llamar a una carpeta.
Solo sirve para windows 2000/ NT/XP, al parecer ese codigo te da el nombre UNC de una carpeta, es decir, tu llamas a esa funcion como :

GetUNCName ('c:\data');

y te devolverá: \\Nombre del Servidor donde se encuentra\unidad\nombre carpeta

(si alguien tiene red y puede compartir una carpeta, me gustaria que contestase con lo que le sale al probar ese codigo, Gracias )

hay que definirlo como :
buf : ^TUniversalNameInfo;
(atención al gorrito ;))

lo de "unidad" no estoy seguro, ya que como dije antes, no tengo red, así que me dice que no está conectada :mad:

Lo que si tienes que poner en la carpeta esa compartida será:
- tus tablas
- los archivos de índices que verás que estan en la misma carpeta pero con extensiones algo raras ... ( .XG0 .XG1 ..... .YG0 .YG1 etc

- el famoso archivo PDOXUSRS.NET que te lo creará solo, haz una busqueda en tu ordenador, seguro que lo tienes en c:\ o en windows....


y en principio nada mas.

Rubiel
09-07-2003, 23:25:32
Buscaré ke esa información me sirva... pero agradezco tu ayuda... si puedo probar eso ke dices.. lo haré y te informaré...

Sale pues... Nos vemos.. Gracias... Tu amigo