
Transaction + Mysql + Php
#1
Posted 28/11/2006, 15:42
Se puderem me ajudar fico agradecido!
Obrigado
ps: se o topico estiver no local errado peço desculpas!
#2
Posted 28/11/2006, 16:22
Ela tem suporte à transaction,e creio eu, dá suporte ao mysql.
PS: MySql nao trabalha muito bem com transaction. Até onde eu estava informado, rs.
#3
Posted 28/11/2006, 17:44
http://www.php.net/m...-autocommit.php
http://www.php.net/mysqli-commit
http://www.php.net/m...li-rollback.php
Já pela antiga extensão MySQL você deve executar as instruções na mysql_query() mesmo.
Exemplo: http://www.php.net/m...query.php#37870
Edição feita por: Eclesiastes, 28/11/2006, 17:45.
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29
#4
Posted 29/11/2006, 12:37
O meu problema e o seguinte: preciso fazer um insert no banco de dados e logo depois peciso fazer um select pegando para pegar o codigo (auto increment) referente ao registro que acabou de ser cadastrado.
e para que nao aconteça do select me trazer o codigo errado preciso inciciar a transacao.
ja tentei fazer da seguinte maneira:
mysql_query("START TRANSACTION",$con);
mysql_query("insert....",$con);
mysql_query("select max(codigo) as codigo from tabela");
mysql_query("COMMIT",$con);
mais ou menos isso. Mas aparentemente nao esta funcionando!
o que estou fazendo de errado!?
obrigado!
#5
Posted 14/09/2009, 21:02
Estou olhando esses links mas nao consegui intender muito bem como funcionaria!
O meu problema e o seguinte: preciso fazer um insert no banco de dados e logo depois peciso fazer um select pegando para pegar o codigo (auto increment) referente ao registro que acabou de ser cadastrado.
e para que nao aconteça do select me trazer o codigo errado preciso inciciar a transacao.
ja tentei fazer da seguinte maneira:
mysql_query("START TRANSACTION",$con);
mysql_query("insert....",$con);
mysql_query("select max(codigo) as codigo from tabela");
mysql_query("COMMIT",$con);
mais ou menos isso. Mas aparentemente nao esta funcionando!
o que estou fazendo de errado!?
obrigado!
use o comando mysql_insert_id();
exemplo: $cod_gravada = mysql_insert_id();
esse comando o campo indice (no seu caso codigo) da consulta realizada.
Espero que ajude.
Abracos
1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)