Desafio !!!

Delphi

06/03/2003

Abaixo eu tenho uma consulta que funciona dentro do access mais se eu tento consultar dentro do delphi usando uma query nao consigo alguem consegue?

SELECT NAME FROM MSysObjects
WHERE TYPE=1 AND FLAGS=0


Anonymous

Anonymous

Curtidas 0

Respostas

Francisco.gamarra

Francisco.gamarra

06/03/2003

SELECT NAME FROM MSysObjects
WHERE (TYPE=1) AND (FLAGS=0)


GOSTEI 0
Anonymous

Anonymous

06/03/2003

SELECT NAME FROM MSysObjects

mais o erro que da é esse -> nao é possil ler registro , sem permissao de leitura MSysObjects


GOSTEI 0
Francisco.gamarra

Francisco.gamarra

06/03/2003

já viu se o usuário tem acesso ao banco?


GOSTEI 0
Anonymous

Anonymous

06/03/2003

Tem acesso so que essa tabela é do banco mesmo é tabela oculta do banco do access nao é uma tabela que vc cria ....


GOSTEI 0
Blackstile

Blackstile

06/03/2003

sei que este topico esta desatualizado, mas ja que nao teve resposta de solucao vou colocar aqui, caso um dia alguem precise como eu precisei hoje e consegui resolver

Para resolver o problema vc dever abrir o arquivo de banco de dados no access ai vc vai no menu

Ferrrametas - > opcoes
quando abrir a janela vai na aba exibir, no groupbox mostrar marque as opçoes
mostrar objeto do sistema
mostrar objeto oculto

e clique em OK

depois va no menu
Segurança -> Permissões para usuario e gurpos

Na janela que se abri vc deve localizar a tabela que vc quer dar permissao de leitura no caso é a tabela MSysObjects
Depois de dada a permissao, na mesma janela va na aba ´ALTERAR PROPRIETARIO´, lá ela deve estar marcado o onwer como Engine, selecione a tabela e na opcao ´NOVO PROPRIETARIO´ escolha administrador ou troque para grupo e escolha o grupo Administradores.
De OK e pronto agora o usuario administrador tem poder de leitura.
Agora no Delphi vc pode chamar um ADOQUERY e colocar a consulta deseja no caso para pegar o nome das tabelas usa-se

SELECT NAME FROM MSysObjects WHERE flag = 0 and type = 1;


William Miranda de Jesus


GOSTEI 0
POSTAR