20% OFF para compra e renovaÇÃo »

Autor Tópico: Configurar conexão ao DB em tempo de execução  (Lida 4354 vezes)

snarkhx

  • Novato
  • *
  • Mensagens: 35
Configurar conexão ao DB em tempo de execução
« Online: Janeiro 15, 2007, 01:07:25 pm »
Preciso configurar uma conexão de db para o resto de minha aplicação logo após o Login. Como eu faço isto?

Ambientando melhor pra que alguém responda à minha dúvida:

Eu tenho várias bases de dados disponíveis para meus clientes. (algo em torno de 100 e aumentando...)

A principio não sei o nome de nenhuma delas, pois as mesmas serão criadas pelo clientes em algum momento.
Motivo pelo qual não posso simplesmente adicioná-las no ambiente de produção

Eu tenho um lugar onde é salvo o lugar, o banco de dados, o login e a senha do cliente.
Basta isso para que use a minha aplicação (comum para todos) para individualmente para cada cliente, ja que cada um terá sua base de dados.


Então o que eu quero é:
- Logo após o login, buscar o nome do banco de dados e criar, para as minhas aplicações, uma conexão com o servidor, para que elas o utilizem.




Por um acaso é mexendo com essas variáveis aqui ?
sc_db_master_usr - Informa o login do usuário a ser utilizado.
sc_db_master_pass - Informa a senha a ser utilizada.
sc_db_master_cript

Se sim, qual a forma correta de utilizá-las ? Incluindo a configuração na tela da aplicação!!


Seria muito interessante se tivesse uma macro que criasse uma nova conexão baseada em parametros.
Após a criação desta conexão poderíamos simplesmente utilizar as variáveis de sessão para sua utilização.



Obrigado
« Última modificação: Janeiro 15, 2007, 04:30:19 pm por Snarkhx »

Haroldo

  • Expert
  • *****
  • Mensagens: 8590
  • Conhecimento diminui limitações.△TFA△
    • InfinitusWeb Software de Gestãol/Gestão ITIL/Consultoria Scriptcase
Re: Configurar conexão ao DB em tempo de execução
« Responder #1 Online: Janeiro 19, 2007, 11:54:07 pm »
A principio não sei se tem uma forma de conexão dinamica, talvez se pesquisar todas as variaveis em sesssão(globais) encontre as que são responsaveis pela conexão, mas não entendi uma coisa, o cliente cria a base em tempo de excução? essa base tem que ter sempre a mesma estrutura não?

Pq não usar uma base só, e incluir uma chave em todas as tabelas? O cliente que se logar, tera acesso apenas aos registros cuja a chave é a autenticaçào dele.

snarkhx

  • Novato
  • *
  • Mensagens: 35
Re: Configurar conexão ao DB em tempo de execução
« Responder #2 Online: Janeiro 22, 2007, 07:51:06 am »
Ambientando:

- Na minha aplicação um Cliente (com várias filiais) contrata meus serviçõs.
Cada filial dele no momento de seu registro no meu sistema, terá uma base de dados (com toda estrutura e primeiros dados) criada.

Eu não posso colocar uma chave para identificar qual empresa pertence os dados, pois imagina colocar isso numa base que tem +- 30 tabelas com 200 entidades. Imagina os erros e falhas de segurança a que os meus clientes poderiam ser expostos. Sem contar na hora do backup e do volume de dados. (2Gigas ao ano por filial)

...
O negócio é realmente separar tudo isso por contexto, ou seja, conexão!

marcio.a.oliveira

  • Visitante
Re: Configurar conexão ao DB em tempo de execução
« Responder #3 Online: Janeiro 28, 2007, 02:14:55 am »
Caro Amigo

Acredito que neste seu caso , pelo que vejo voce tera que duplicar todas as aplicações criando uma pasta para cada cliente ou filial, e para cada uma uma conexao diferente, voce mesmo.

Abracos
marcio oliveira

Haroldo

  • Expert
  • *****
  • Mensagens: 8590
  • Conhecimento diminui limitações.△TFA△
    • InfinitusWeb Software de Gestãol/Gestão ITIL/Consultoria Scriptcase
Re: Configurar conexão ao DB em tempo de execução
« Responder #4 Online: Janeiro 28, 2007, 07:43:58 pm »
Você solicitou um suporte a Netmake? O que eles dizem?
Notei que existem variáveis globais que guardam os dados dessa conexão, você pode fazer uma conexão persistente usando o php( na oninit de cada aplicação, ou numa biblioteca, e alterar os valores dessas váriaveis, talvez isso funcione, mas seria preciso testar.

Se resolver, publique aqui como conseguiu.

Haroldo Passos


valmeida

  • Novato
  • *
  • Mensagens: 9
    • Email
Re:Configurar conexão ao DB em tempo de execução
« Responder #5 Online: Maio 18, 2018, 08:59:13 pm »
tb tenho uma estrutura parecida . preciso criar a base em tempo real , copiar a aplicação e editar a conexao de forma automatica..
cada cliente tem um database para separar.

Alexandre Pereira Bühler

  • Expert
  • *****
  • Mensagens: 2244
  • Focalize as oportunidades e não os obstáculos.
    • Simão & Bühler Ltda
    • Email
Re:Configurar conexão ao DB em tempo de execução
« Responder #6 Online: Maio 18, 2018, 09:46:56 pm »
use: sc_connection_new dê o nome da conexão
http://www.scriptcase.com.br/aprendizagem/documentacao/pt_br/v9/manual/14-macros/01-visao-geral/#sc_connection_new
sc_connection_new ("Nome_da_Conexão", $arr_conn) ->    Esta macro permite a criação de novas conexões dinamicamente.
Depois faça o controle com as macros de SQL e não esqueça de colocar o nome da conexão para cada aplicação que entrar.
--
Alexandre Pereira Bühler
https://www.simaoebuhler.com.br
Hospedagem compartilhada. Temos servidores dedicados.
Linux User: 397546 -> https://www.linuxcounter.net
Grupo Telegram -> https://t.me/scriptcasebr