VIEW no FireBird
Pessoal,
Estou criando um programinha simples onde aprox 20 pessoas acessarão um banco de dados central onde todos os usuários deverão visualizar os dados atualizados on-line:
» 1 máquina (Celeron D 256RAM 60HD) servidora
» 20 máquinas cliente;
» FireBird 2 // Turbo Delphi Ex // Acredito que deverei usar DBX, certo?
Ponto1: Sei que tenho que instalar o Client do FireBird em todas essas 20 máquinas (algumas com Win2K outras Com WinXP) e apontar o banco para o IP da máquina servidora, certo?
Ponto2: na tela principal que será utilizada pela maioria dos usuário existem 15 ComboBox com itens que devem ser selecionaddos pelos usuários que são carregados, e possivelmente atualizados (on-line) de tabelas específicas dentro da base de dados... Pergunta: Uso uma SELECT normal que carregue o campo que eu quero nessa combo ou crio um VIEW (não sei direito o que é ainda, mas comentaram que seria aconselhável para melhorar a performance) ?
Ponto3: Preciso me preocupar com o tamanho do banco e quantidade de registros, pois mensalmente acrescentarei aprox 4000 reg na tabela mestre e fico preocupado com a lentidão depois de uns 6 meses. Vou precisar fazer um banco por mês como fazia em Access ? :(
Ponto4: É aconselhável quando for ler/grava dados do/no banco, criar uma instância, fazer os SQL necessários e fechar a instância ? (fazia isso em Access para melhorar o tráfego de rede e não me preocupar com o limite de usuários)
Desculpem pelo pergaminho e desde já OBRIGADO.
Estou criando um programinha simples onde aprox 20 pessoas acessarão um banco de dados central onde todos os usuários deverão visualizar os dados atualizados on-line:
» 1 máquina (Celeron D 256RAM 60HD) servidora
» 20 máquinas cliente;
» FireBird 2 // Turbo Delphi Ex // Acredito que deverei usar DBX, certo?
Ponto1: Sei que tenho que instalar o Client do FireBird em todas essas 20 máquinas (algumas com Win2K outras Com WinXP) e apontar o banco para o IP da máquina servidora, certo?
Ponto2: na tela principal que será utilizada pela maioria dos usuário existem 15 ComboBox com itens que devem ser selecionaddos pelos usuários que são carregados, e possivelmente atualizados (on-line) de tabelas específicas dentro da base de dados... Pergunta: Uso uma SELECT normal que carregue o campo que eu quero nessa combo ou crio um VIEW (não sei direito o que é ainda, mas comentaram que seria aconselhável para melhorar a performance) ?
Ponto3: Preciso me preocupar com o tamanho do banco e quantidade de registros, pois mensalmente acrescentarei aprox 4000 reg na tabela mestre e fico preocupado com a lentidão depois de uns 6 meses. Vou precisar fazer um banco por mês como fazia em Access ? :(
Ponto4: É aconselhável quando for ler/grava dados do/no banco, criar uma instância, fazer os SQL necessários e fechar a instância ? (fazia isso em Access para melhorar o tráfego de rede e não me preocupar com o limite de usuários)
Desculpem pelo pergaminho e desde já OBRIGADO.
Paulocesar1301
Curtidas 0
Respostas
Sremulador
15/01/2007
Ponto1: Sei que tenho que instalar o Client do FireBird em todas essas 20 máquinas (algumas com Win2K outras Com WinXP) e apontar o banco para o IP da máquina servidora, certo?
SIM, de preferencia um servidor com o win 2000
Ponto2: na tela principal que será utilizada pela maioria dos usuário existem 15 ComboBox com itens que devem ser selecionaddos pelos usuários que são carregados, e possivelmente atualizados (on-line) de tabelas específicas dentro da base de dados... Pergunta: Uso uma SELECT normal que carregue o campo que eu quero nessa combo ou crio um VIEW (não sei direito o que é ainda, mas comentaram que seria aconselhável para melhorar a performance) ?
R: Realmente, sendo que view com union não e muito bom para performance
Ponto3: Preciso me preocupar com o tamanho do banco e quantidade de registros, pois mensalmente acrescentarei aprox 4000 reg na tabela mestre e fico preocupado com a lentidão depois de uns 6 meses. Vou precisar fazer um banco por mês como fazia em Access ?
R: Não se preocupe, aqui tenho uns 20.000.000, e roda blz
Ponto4: É aconselhável quando for ler/grava dados do/no banco, criar uma instância, fazer os SQL necessários e fechar a instância ? (fazia isso em Access para melhorar o tráfego de rede e não me preocupar com o limite de usuários)
R: Commitar os dados...
GOSTEI 0
Paulocesar1301
15/01/2007
Obrigado pelas respostas caríssimo,
Infelizmente meu servidor (nama mais que uma máquina que não está sendo utilizada, mas muuuuuuuuuito melhor que o nosso servidor real) tem instalado um WinXP SP2 mesmo, fazer o quê ! :(
Quer dizer que posso abrir a tabela e deixá-la aberta sem problemas e minha única preocupação é commitar sempre que possível os dados ? OK! :)
Meu VIEW não terá UNION... pelo menos à princípio, sendo assim acredito então que conseguirei uma performance razoável.
Vou ver se acho aqui algo sobre VIEW: como e onde criar.
Infelizmente meu servidor (nama mais que uma máquina que não está sendo utilizada, mas muuuuuuuuuito melhor que o nosso servidor real) tem instalado um WinXP SP2 mesmo, fazer o quê ! :(
Quer dizer que posso abrir a tabela e deixá-la aberta sem problemas e minha única preocupação é commitar sempre que possível os dados ? OK! :)
Meu VIEW não terá UNION... pelo menos à princípio, sendo assim acredito então que conseguirei uma performance razoável.
Vou ver se acho aqui algo sobre VIEW: como e onde criar.
GOSTEI 0
Gandalf.nho
15/01/2007
Não mantenha toda a tabela aberta, procure trabalhar com pesquisas e limitar sempre a quantidade de registros no lado da aplicação, para melhorar a performance.
E você pode trabalhar com VIEWs sem problemas, é assim que eu faço para evitar o uso de ComboBox.
E você pode trabalhar com VIEWs sem problemas, é assim que eu faço para evitar o uso de ComboBox.
GOSTEI 0