Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa tarde Pessoal!
Gostaria de saber como posso fazer um comando insert e edit de forma que seja cadastrado e editado em dois bancos de dados?
Desde já agradeço pela atenção.
:natalwink:
Obrigada Andrey Knupp!
Resolvi de forma mais simples, porque eu não sou expert como você!
Eu só precisava que o Insert e o Update fossem feitos em dois bancos com a tabela quase identica.
<?
// Primeiro BANCO
$banco1 = mysql_connect('localhost', 'USUARIO', 'SENHA') or die(mysql_error());
mysql_select_db('NOME_DO_BANCO', $banco1);
// Segundo BANCO
$banco2 = mysql_connect('localhost', 'USUARIO', 'SENHA') or die(mysql_error());
mysql_select_db('NOME_DO_BANCO', $banco2);
mysql_query("INSERT INTO tabela (dados)
VALUES ('$dados')", $banco1) or die(mysql_error());
mysql_query("INSERT INTO tabela (dados)
VALUES ('$dados')", $banco2) or die(mysql_error());
?>Bom, se resolveu dessa forma .. legal, mas acho que a trigger sairia mais em conta, enfim .. você não disse que tal solução poderia ser em PHP =)
Você pode utilizar uma trigger ..
mysql> create schema db ;
Query OK, 1 row affected (0.01 sec)
mysql> create schema dbase ;
Query OK, 1 row affected (0.00 sec)
mysql> create table db.tbl ( id integer not null ) ;
Query OK, 0 rows affected (0.04 sec)
mysql> create table dbase.tbl ( codigo integer not null ) ;
Query OK, 0 rows affected (0.05 sec)
mysql> use db ;
Database changed
mysql> delimiter $$
mysql> create trigger insertDbase after insert on tbl
-> for each row begin
Query OK, 0 rows affected (0.06 sec)
mysql> insert into tbl values ( 200 ) $$
Query OK, 1 row affected (0.01 sec)
mysql> select * from tbl $$
+-----+
| id |
+-----+
| 200 |
+-----+
1 row in set (0.00 sec)
mysql> select * from dbase.tbl $$
+--------+
| codigo |
+--------+
| 200 |
+--------+
1 row in set (0.00 sec)
mysql>
Voilà !