Como evitar exclusão de arquivo se estiver sendo usado?
Olá amigos do forum, boa tarde.
Estou com uma idéia, de criar um método que evite excluir um registro que esteja sendo usado por uma tabela, como igual ao firebird, e o interbase, se o dado estiver sendo usado ele impede a exclusão, estou tendo problemas como este no Mysql, então tive a ideia, por exemplo.
No form onde cadastro cidade - id - cidade
se o usuario estiver com o form aberto, se ele selecionar uma cidade e clicar no botao excluir ele ira pegar essa id e irá verificar na tabela clientes, se estiver sendo usada, ele ira mandar uma mensagem, se nao estiver sendo usada, ele excluirá.
então, como fazer para que pegue esse id?
como eu colocaria no código
tipo se id_tbcidade estiver sendo usada na tbcliente
mensagem - nao excluir.
cancela.
agradeceria a força.
Obrigado.
Estou com uma idéia, de criar um método que evite excluir um registro que esteja sendo usado por uma tabela, como igual ao firebird, e o interbase, se o dado estiver sendo usado ele impede a exclusão, estou tendo problemas como este no Mysql, então tive a ideia, por exemplo.
No form onde cadastro cidade - id - cidade
se o usuario estiver com o form aberto, se ele selecionar uma cidade e clicar no botao excluir ele ira pegar essa id e irá verificar na tabela clientes, se estiver sendo usada, ele ira mandar uma mensagem, se nao estiver sendo usada, ele excluirá.
então, como fazer para que pegue esse id?
como eu colocaria no código
tipo se id_tbcidade estiver sendo usada na tbcliente
mensagem - nao excluir.
cancela.
agradeceria a força.
Obrigado.
Junior-programador
Curtidas 0
Respostas
Lab
27/11/2007
Se entendi direito, vc esta usando MySql, um SGDB, então vc poderia usar integridade referencial para evitar que registros que sejam usados ou referenciados por outras tabelas possam ser excluidos.
Por exemplo, se estiver usando ou referenciando uma cidade, através de seu codigo, na tabela de clientes, esta cidade não poderá ser excluida, mas para isso deve usar integridade referencial.
O codigo sql que garante a integridade poderia ser:
alter table clientes add constraint FK_Clientes_Cidade Foreign Key (Id_Cidade) references cidade (Id_cidade)
supondo que a tabela clientes tenha um campo chamado id_cidade
Por exemplo, se estiver usando ou referenciando uma cidade, através de seu codigo, na tabela de clientes, esta cidade não poderá ser excluida, mas para isso deve usar integridade referencial.
O codigo sql que garante a integridade poderia ser:
alter table clientes add constraint FK_Clientes_Cidade Foreign Key (Id_Cidade) references cidade (Id_cidade)
supondo que a tabela clientes tenha um campo chamado id_cidade
GOSTEI 0
Junior-programador
27/11/2007
blz lab, obrigado pela força, mas onde eu usaria esse código, eu colocaria ele onde, estou usando o mysql 3.23, para terminar o software, depois atualizaria ele, pois estou desenvolvendo um software que tem poucos no mercado, esse script que vc me passou, eu colocaria ele direto no mysql, por exemplo da tabela clientes.
ou tem como fazer um codigo via delphi
obrigado amigo.
ou tem como fazer um codigo via delphi
obrigado amigo.
GOSTEI 0
Lab
27/11/2007
Vc usa esse tipo de codigo apenas uma vez, na hora de criar a tabela no bando de dados.
Eu não uso MySql, mas tem ferramentas de administração do banco e através dela vc pode criar, alterar tabelas, inserir registros, etc.
Eu não uso MySql, mas tem ferramentas de administração do banco e através dela vc pode criar, alterar tabelas, inserir registros, etc.
GOSTEI 0