Autor Zpráva
juraa
Profil *
Ahoj potřebuji vybrat data z jedné DB a vložit je do druhé.
Dělám to takto:

<?php

  define("SQL_HOST","mysql5-2");
  define("SQL_DBNAME","databaze1");
  define("SQL_USERNAME","databaze1");
  define("SQL_PASSWORD","****");
  
$link = mysql_connect(SQL_HOST, SQL_USERNAME, SQL_PASSWORD) or die("Nelze se připojit k MySQL: " . mysql_error());
mysql_select_db(SQL_DBNAME) or die("Nelze vybrat databázi: ". mysql_error()); 

mysql_query ("SET NAMES 'utf8'");
  
  $vypis = mysql_fetch_array(mysql_query("SELECT * FROM vtipy ORDER BY rand() LIMIT 1"));
   $text = $vypis["vtip"];
  
mysql_close($link);
  
  define("SQL_HOST","mysql5-2");
  define("SQL_DBNAME","databaze2");
  define("SQL_USERNAME","databaze2");
  define("SQL_PASSWORD","****");

mysql_connect(SQL_HOST, SQL_USERNAME, SQL_PASSWORD) or die("Nelze se připojit k MySQL: " . mysql_error());
mysql_select_db(SQL_DBNAME) or die("Nelze vybrat databázi: ". mysql_error()); 
mysql_query ("SET NAMES 'utf8'");
  
  mysql_query("INSERT INTO vzkaz VALUES ('juraa','$text');");
  
echo mysql_error();
?>


Ale vypisuje mi to chybu Table 'databaze1.chat' doesn't exist.

Co mám špatně?

Pokud to dobře chápu, tak to píše, že v databazi1 nemám tabulku chat. No ale tu tam přece nepotřebuji.
Z DB1 to má vytáhnout vtip a vložit do db2 do vzkazu, tak proč to chce v DB1 tabulku chat?

Děkuji za vaše rady.
TomášK
Profil
Chápeš to dobře - stěžuje si na neexistenci tabulky chat. Ta chyba zřejmě nepochází z tohoto kusu zdrojáku - buď máš na serveru jiný kód, než si myslíš, nebo se před tímhle ještě něco vykoná. Vkládání z jedné databáze do druhé by mohlo fungovat i jednodušším způsobem:
INSERT INTO databaze2.vzkaz(text) SELECT vtip FROM databaze1.vtipy;

Jsou potřeba určité předpoklady - aby databáze běžely na stejném serveru a aby uživatel měl právo přístupu pro obě dvě databáze, možná ještě něco dalšího, nevím.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: