Erso Postado Dezembro 27, 2006 Denunciar Share Postado Dezembro 27, 2006 ola pessoal!!!é o seguinte. em firebird X interbase, eu tenho os generator que armazenam um numero para que eu possausar como codigo. toda vez que eu vou gravar uso o numero desse generator mais 1 . para que meu banco não corrompa.estou fazendo um cadastro com subitens, o usuario faz o cadastro e depois vai add sub itens.ao add esses subitens eu preciso saber qual codigo foi gravado (Chave Primária autoIncrmento) para que eu possa relacionar no sub item.eu presisava de algo parecido do firebird , um generator, mas qualquer solução é valida.Obrigado....-----Vária pessoas vao fazer esse cadastro simultaneamente, por isso quando o usuario der um insert eu preciso do código para usar como chave primaria.como é feito no firebird (dando um select no generation e add + 1) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Kikonanet Postado Dezembro 28, 2006 Denunciar Share Postado Dezembro 28, 2006 Olá,Faz um select na tabela trazendo o max código.ex: select max(id) from tabelaA;abs. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Erso Postado Dezembro 29, 2006 Autor Denunciar Share Postado Dezembro 29, 2006 ola Kikonanet!!Eu poderia fazer dessa maneira mas, o sistema vai rodar em rede, então varias pessoas vão cadastrarao mesmo tempo, e dando um "select max" vaios usuarios irao acabar pegando o mesmo código, causando erro ao gravar, pois irao gravar com o mesmo código, :( . Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Kikonanet Postado Dezembro 29, 2006 Denunciar Share Postado Dezembro 29, 2006 Erso,Se eu não me engano, no MySQL, você consegue criar um campo auto incremento. Não seria isso que você queria??abs. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Erso Postado Dezembro 29, 2006 Autor Denunciar Share Postado Dezembro 29, 2006 +/- Se eu tiver umcampo auto incremento eu consigo gravar os item tudo certo, mas, na hora degravar os sub-itens que acoisa complica. ex:Tabela Pedido Tabela Produto_pedidos Tabela ProdutoCodigo_pedido Codigo_produto_pedido CodigoProdutovalor Codigo_produto nomeetc... Codigo_pedido_________________________________________________________________________Quando eu vou gravar na tabela "Produto_pedidos", preciso do código que gravei na tabela Pedido (o "Codigo_pedido") , para poder usar na inserção dos "Produto_pedidos ".No fireBird e Interbase, eu uso um "GENERATION", Faço um select nesse "GENERATION" adicionando mais um, então uso esse código tanto pata pedidos quanto para Produto_pedidos,Gostaria de algo parecido, ou algo que resulvesse meu problema.Obrigado!!!!!! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Progr'amador Postado Dezembro 29, 2006 Denunciar Share Postado Dezembro 29, 2006 Quando eu vou gravar na tabela "Produto_pedidos", preciso do código que gravei na tabela Pedido (o "Codigo_pedido") , para poder usar na inserção dos "Produto_pedidos ".No fireBird e Interbase, eu uso um "GENERATION", Faço um select nesse "GENERATION" adicionando mais um, então uso esse código tanto pata pedidos quanto para Produto_pedidos,Gostaria de algo parecido, ou algo que resulvesse meu problema.Olá Erso,num precisa não, é você relacionar, tipo atravez de duas Query's, por exemplo:* QryPedido >> SQL = 'SELECT * FROM PEDIDO'* QryProdutoPedido >> SQL = 'SELECT * FROM PRODUTO_PEDIDO WHERE Codigo_pedido = :Codigo_pedido'no Object Inspector dessa QryProdutoPedido vai em Params... e defina o tipo desse paramentro (Codigo_pedido), que acredito que seja Integer. (isso de acordo com tipo que realmente está na sua tabela)aí é só setar no DataSource da QryProdutoPedido o dataSource ligada a QryPedido.Espero que tenha entendido, estou explicando tudo assim por cima, é que deu pau na minha máquina e tou sem o delphi por enquanto.Abs. Progr'amador. B) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest --felipee -- Postado Setembro 3, 2008 Denunciar Share Postado Setembro 3, 2008 amigo,a amarracao com o where acredito que ele saiba fazer.mas como ele vai fazer esta amarracao se ele não sabe o codigo que acabou de ser gravado?acho que é este o problema que ele está relatando.um abraco e aguardo ajuda sobre o assunto tb.felipee. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Erso
ola pessoal!!!
é o seguinte. em firebird X interbase, eu tenho os generator que armazenam um numero para que eu possa
usar como codigo. toda vez que eu vou gravar uso o numero desse generator mais 1 . para que meu banco não corrompa.
estou fazendo um cadastro com subitens, o usuario faz o cadastro e depois vai add sub itens.
ao add esses subitens eu preciso saber qual codigo foi gravado (Chave Primária autoIncrmento) para que eu possa relacionar no sub item.
eu presisava de algo parecido do firebird , um generator, mas qualquer solução é valida.
Obrigado....
-----
Vária pessoas vao fazer esse cadastro simultaneamente, por isso quando o usuario der um insert
eu preciso do código para usar como chave primaria.
como é feito no firebird (dando um select no generation e add + 1)
Link para o comentário
Compartilhar em outros sites
6 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.