我想在一個MySQL數據庫中創建一個視圖,該數據庫與另一個數據庫中的視圖具有相同的名稱,在php中使用這一行代碼。如何在MySQL中創建一個使用PHP中另一個數據庫視圖名稱的視圖?
mysql_query('CREATE VIEW `' . $targetDB . '`.`' . $row[0] . '` LIKE `' . $sourceDB . '`.`' . $row[0] . '`') or die(mysql_error());
然而,當我運行我的代碼,我得到這個錯誤
您的SQL語法錯誤;檢查與您的MySQL服務器版本相對應的手冊,在'LIKE copyinrdb
'附近使用正確的語法。 abnormal_limit_view
「在1號線
我在做什麼錯了我完整的代碼,如果有幫助:
<?php
set_time_limit(0);
function duplicateTables($sourceDB=NULL, $targetDB=NULL) {
$link = mysql_connect('my_host', 'my_user', 'my_pass') or die(mysql_error()); // connect to database
$results = mysql_query('SHOW FULL TABLES FROM copyinrdb WHERE TABLE_TYPE= "VIEW"') or die(mysql_error());
while($row = mysql_fetch_row($results)) {
mysql_query('CREATE VIEW `' . $targetDB . '`.`' . $row[0] . '` LIKE `' . $sourceDB . '`.`' . $row[0] . '`') or die(mysql_error());
mysql_query('INSERT INTO `' . $targetDB . '`.`' . $row[0] . '` SELECT * FROM `' . $sourceDB . '`.`' . $row[0] . '`') or die(mysql_error());
}
mysql_free_result($results);
mysql_close($link);
} // end duplicateTables()
duplicateTables('copyinrdb', 'copytest1');
?>