Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

DouglasP

Access + ini

Recommended Posts

Boa noite,

gostaria de pedir uma ajudinha,

queria saber como faço para que eu defina no meu arquivo .ini o lugar e nome do banco de dados,

to fazendo uma conexão, um sistema de login e quando vou ativar o adoquery ele da uma msg: "MISSING SQL PROPERTY"

oque poderia ser ?

sendo que ontem estava funcionando e hj deu isso.

 

mas oque preciso mesmo é sobre o .ini + a conexao.

Grato.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Douglas

 

a menssagem: "MISSING SQL PROPERTY" aparece quando você não setou a propriedade SQL do query!

por exemplo, no seu código deve ter um pedaço como:

 

with form1.ADOQuery1 do begin
close;
SQL.clear;
SQL.add('SELECT * FROM sua_tabela') //apenas exemplo!
open; //ou active := true
end;

ja a parte do ini+access, eu faço da seguinte forma:

 

eu crio uma conexão, o delphi vai gerar uma connectionstring, certo?

copie essa string, tem um lugar nela que vai ter o local do banco de dados, você transforma isso numa variável, e guarda essa variavel no ini!

=D

 

por exemplo:

procedure carregar_banco;
var
ini : Tinifile;
dbpath: string;
begin
ADOconnection1.active := false;
ini := Tinifile.create() //aqui você espqcifica do seu jeito  =D

dbpath := ini.readstring('banco', 'local', 'C:\meubanco.mdb'); {no valor padrão, aconselho você colocar um local onde haja uma cópia do banco, evitando erros de bios (bicho ignorante operando o sistema, ou AKA usuário...aeuiaheauehaue}

ADOConnection1.connectionstring := 'sua_conection_string'+dbpath+'o_resto_da_connection_string';
ADOConnection.active := true;
ini.free;
end;

Compartilhar este post


Link para o post
Compartilhar em outros sites

mas quando você tenta ativar esse query, você tem certeza de que você escreveu alguam coisa na SQL ????

Compartilhar este post


Link para o post
Compartilhar em outros sites

não escrevi nada manin.

tava usando assim e funcionava beleza apos 1 dia deu isso,

e agora não consigo mas logar no sistema por causa disso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Douglas...

se funcionava normal até pouco tempo atrás, eu não sei o que possa ser.

todas as vezes que eu tive esse erro, foi por deixar a propriedade SQL em branco

posso ser chato??

=P

 

se não tem uma instrução SQL no seu query, pq você está usando um query?

 

faz assim, digita na SQL: SELECT * FROM nome_da_sua_tabela

=D

 

viva a POG (programação orientada a gambiarra!)

aehuaeuhuaehhuaehuae

 

abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Arrumei XD,

agora manin sabe me informar como eu declaro um privilegio a cada usuario? é so fazer uma pesquisa e declarar as opcao de cada ?

 

grato.

Compartilhar este post


Link para o post
Compartilhar em outros sites

antes de fazer o conntect no banco de dados, faça um

if not(fileExists(pathParaDB)) then
  begin
	MessageDLG('PQP! Banco de dados não encontrado!' + chr(13) + 'Apaga a luz porque eu já vazei!', mtError, [mbok], 0);
	Application.Terminate;
  end;

Assim, você verá se o arquivo existe no local configurado...

Compartilhar este post


Link para o post
Compartilhar em outros sites

vlws kra :D

 

agora manin sabe me informar como eu declaro um privilegio a cada usuario? é so fazer uma pesquisa e declarar as opcao de cada ?

 

grato.

Compartilhar este post


Link para o post
Compartilhar em outros sites

bom, teoricamente sim, você teria uma tabela de permissões que seriam ajustadas quai janelas cada usuário (ou grupo de usuários) poderia acessar

ao tentar abrir uma janela, você verifica se o usuário tem permissão de abrir de acordo com as configurações da tabela...

Compartilhar este post


Link para o post
Compartilhar em outros sites

e como eu faria essa consulta no delphi ?

pelo adoquery ?

tpw seria que nem no sql server?

ficaria como?

adoquery. xxx := 'select privilegio from login where user='xxx''; ?

 

grato.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Seria algo como

 

adoquery. xxx := 'select JanelaX from privilegios where user='xxx'';

 

Mas isto é lógica de programação, você pode fazer de n formas, eu faria assim.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.