Preciso inserir em duas tabelas ao mesmo tempo sendo que a chave primaria de uma que vai ser autoincrement vai ser chave estrangeira em outra tabela exemplo
tabela user vou adicionar
(nome,idade) e ao mesmo tempo tem que adicionar na tabela
telefone (id_user,tipo,numero)
como fazer essa instrução em sql?
Inserir Simultaneo Em 2 Tabelas
Started By _zEek_, 05/06/2009, 11:36
2 replies to this topic
#1
Posted 05/06/2009, 11:36
#2
Posted 05/06/2009, 12:19
Já que uma vai precisar do ID da outra, você terá que fazer instruções SQL separadas, além de bloquear o BD pra edição, caso tentem cadastrar outro ID ao mesmo tempo. Ae você faz a primeira instrução SQL pra gravar na primeira tabela, após o update da tabela, faça um segundo SQL pra gravar na outra tabela.
/*DS*/
/*DS*/
#3
Posted 06/06/2009, 09:14
Pessoal seguinte eu consegui, fica gravado para quem precisar
'inserindo no banco de dados
'Pegando a ultima id cadastrada, nesse caso vai pegar a id da seção ou seja pode ter outra pessoa gravando ao mesmo tempo que não vai dar id trocada
^^
'inserindo no banco de dados
conexao.execute("INSERT INTO user (nome,nascimento,sexo,cpf,rg,endereco,cep,uf,email,nome_pai,nome_mae,obser,data_cadastro) VALUES ('"&nome&"','"&nascimento&"','"&sexo&"','"&cpf&"','"&rg&"','"&endereco&"','"&cep&"','"&uf&"','"&email&"','"&pai&"','"&mae&"','"&observacao&"',"&data&")")
'Pegando a ultima id cadastrada, nesse caso vai pegar a id da seção ou seja pode ter outra pessoa gravando ao mesmo tempo que não vai dar id trocada
set rs = conexao.execute("select id_user from user where id_user=LAST_INSERT_ID()") id = rS("id_user") set rs = nothing'gerando numero ra e senha de acesso e cadastrando na tabela alunos (outra tabela)
ra = right(date,4) & id senha = Replace(nascimento,"/", "") conexao.execute("INSERT INTO aluno (id_user,ativo,RA,senha) VALUES ("&id&",1,"&ra&",'"&senha&"')")
^^
1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)