Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Tablas planas
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 09-09-2008
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
Como ya dijo hecospina, la base de datos debe estar compartida, de otra forma los "clientes" no tendrán acceso a la Base de datos.

Si necesitas "esa protección", entonces no puedes usar paradox (al menos que yo sepa), puedes migrar a Firebird que un SGBBDD en el que no tienes que compartir la BBDD, sino que un programa en memoria en el servidor se encarga de aceptar las solicitudes (por SQL) de las consultas y devuelven los datos.

Ahora, si en el servidor han compartido la unidad raiz o bien, tiene acceso cualquiera que pueda compartir la carpeta donde reside la BBDD... poco podrás hacer.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #2  
Antiguo 09-09-2008
hecospina hecospina is offline
Miembro
 
Registrado: oct 2007
Posts: 202
Poder: 19
hecospina Va por buen camino
Como ya lo comente
La carpeta "red" no debe estar en el servidor de datos, solo debe existir en un equipo, cualquiera de los de la red, incluso no tendria que tener tu aplicacion instalada, la unica condicion es que permanezca encendido cuando desees trabajar en tu aplicacion
Responder Con Cita
  #3  
Antiguo 10-09-2008
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
Me parece que en lugar de aclarar cosas, estoy liando más al personal.

Yo entiendo por carpeta "red" aquella que guardará el archivo ".net", todos los clientes deben acceder a él, por tanto debe estar compartida. Hecospina dice que "no debe estar en el servidor", creo que la frase correcta es: "no tiene por qué estar en el servidor".

Ahora vamos con otro tema, la Base de datos, es decir tus archivos .db: esa carpeta sí debe estar compartida, para que obviamente todos los ordenadores puedan acceder a él y debe estar compartida con acceso global (permiso de escritura), (ya que un ordenador modificará los archivos al crear una nueva factura, etc). Paradox es una base de datos de escritorio, aunque permite que se ejecute en red y de modo compartido, pero no tiene un esquema de seguridad definido, por tanto, cualquiera que ponga \\server\< nombre carpeta base de datos> tiene acceso a la base de datos.
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #4  
Antiguo 10-09-2008
Avatar de Faust
Faust Faust is offline
Miembro
 
Registrado: abr 2006
Ubicación: México D.F.
Posts: 930
Poder: 21
Faust Va por buen camino
Creo que es mucho rollo usar paradox en red...

Recomendaría migrar a Interbase 6, Firebird o MySQL... gratuitos por cierto.
__________________
Herr Heins Faust
Responder Con Cita
  #5  
Antiguo 11-09-2008
Avatar de jeremiselxi
jeremiselxi jeremiselxi is offline
Miembro
 
Registrado: ago 2008
Posts: 199
Poder: 18
jeremiselxi Va por buen camino
Este tema se pone mas interesante

Bueno yo buscando y buscando encontre dos formas de como se puede guardar informacion poniendo las .db en una pc servidor y la aplicacion en otra pc cliente.
la primera esta yendo donde dice FTP luego CPPBuilderWin32 y luego en tutoriales el unico que esta ahi es un manual que hice de la primera forma.

el unico inconveniente de esta es que tendremos que crear un alias para ello, aunque se puede usar sin el alias. leanlo por favor y luego diganme que les parecio. la otra la baje de la pagina ajpdsoft.com
tambien subi el ejemplo en FTP luego CPPBuilderWin32 luego elige ejemplos y luego paradoxnet

en el ejemplo esta el manual en español pero hay cosas que no entendiendo, aunque ahi esta el ejemplo aqui esta la parte del codigo que no entiendo


aqui se usa un tSession, un tdatabase,un ttable y un datasource ademas de un modulo.

Código Delphi [-]

procedure TMDatos.DataModuleCreate(Sender: TObject);
var
  ruta, servidor, rutaprivate, rutanet : string;
begin
  with tinifile.create (changefileext(paramstr(0),'.INI')) do
  try
    ruta := readstring ('Datos', 'Ruta', '');
    rutanet := readstring ('Datos', 'Ruta net', '');
    rutaprivate := readstring ('Datos', 'Ruta PrivateDir', '');
    servidor := readstring ('Datos', 'Servidor', '');
    if ruta = '' then
    begin
      while not (ruta <> '') do
        ruta := InputBox ('Ruta de los datos...',
            'Introduzca la ruta de los ficheros *.db',
            'c:\p\datos ó \\a\PRed\datos');
      writestring ('Datos', 'Ruta', ruta);
    end;
    if rutaprivate = '' then
    begin
      while not (rutaprivate <> '') do
        rutaprivate := InputBox ('Ruta de los *.lck...',
            'Introduzca el PrivateDir (ruta de los ficheros *.lck)',
            'c:\p\temp');
      try
        CreateDir(rutaprivate)
      except
      end;
      writestring ('Datos', 'Ruta PrivateDir', rutaprivate);
    end;
    if rutanet = '' then
    begin
      while not (rutanet <> '') do
        rutanet := InputBox ('Ruta del fichero NET...',
            'Introduzca la ruta del fichero NET',
            '\\a\PRed\datos\net');
     writestring ('Datos', 'Ruta net', rutanet);
    END; 
    if servidor = '' then
    begin
      while not (servidor <> '') do
        servidor := InputBox ('Servidor...',
            '¿Es este equipo el servidor?',
            'si/no');
     writestring ('Datos', 'Servidor', servidor);
    end;
  finally
  end;

  With mdatos.Session1 do
  begin
    NetFileDir := RUTANET;
    PrivateDir := rutaprivate;
  End;
  With db do
  begin
    Params.Clear;
    Params.Add('PATH=' + RUTA);
    Params.Add('DEFAULT DRIVER=PARADOX');
    Params.Add('ENABLE BCD=FALSE');

    //NO HE PROBADO SI ESTO FUNCIONA
    //SI NO FUNCIONA SE DEBERÁ CONFIGURAR MANUALMENTE
    //COMO SE INDICA EN EL PASO 2
    if uppercase (servidor) <> 'NO' then
      Params.Add('LOCAL SHARE=TRUE')
    else
      Params.Add('LOCAL SHARE=FALSE');

    Connected := true;
  End;
  table1.active := true;
end;

end.






Todo ese codigo lo pone el autor pero no entiendo si es en cada pc cliente k tengo k poner todos esos datos, o es en una pc cliente nada mas y luego se comparte la carpeta? o si tambien hay que ponerlo en la pc servidor o algo. chequen el ejmplo por favor. Si pudieran ponerle comentarios a estos codigos por favor:-) ademas creo k no necesitamos tantos codigos como lo dice el autor de ese tutorial.

Ahora bien mi pregunta es para k sirve el archivo PDOXUSRS.net?
Y por ultimo para k sirve donde dice LOCAL CHARE =true /false?





CPPBuilderWin32 luego elige ejemplos y luego paradoxnet.

Última edición por marcoszorrilla fecha: 11-09-2008 a las 05:52:19.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 20:44:16.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi