请不要使用mysql_*新代码中的函数 https://stackoverflow.com/q/12859942/。它们不再被维护并已被正式弃用 https://wiki.php.net/rfc/mysql_deprecation。请参阅red box https://www.php.net/manual/en/function.mysql-connect.php?学习关于准备好的陈述 https://en.wikipedia.org/wiki/Prepared_statement相反,并使用PDO http://php.net/pdo or MySQLi http://php.net/mysqli - 本文 https://php.net/manual/en/mysqlinfo.api.choosing.php将帮助您决定哪个。如果您选择PDO,这是一个很好的教程 http://wiki.hashphp.org/PDO_Tutorial_for_MySQL_Developers.
这段代码应该可以工作:
<?php
$maketemp = "
CREATE TEMPORARY TABLE temp_table_1 (
`itineraryId` int NOT NULL,
`live` varchar(1),
`shipCode` varchar(10),
`description` text,
`duration` varchar(10),
PRIMARY KEY(itineraryId)
)
";
mysql_query($maketemp, $connection) or die ("Sql error : ".mysql_error());
$inserttemp = "
INSERT INTO temp_table_1
(`itineraryId`, `live`, `shipCode`, `description`, `duration`)
SELECT `id`, `live`, `ship`, `description`, `duration`
FROM `cruises`
WHERE `live` = 'Y'
";
mysql_query($inserttemp, $connection) or die ("Sql error : ".mysql_error());
$select = "
SELECT `itineraryId`, `shipCode`, `description`, `duration`
FROM temp_table_1
";
$export = mysql_query($select, $connection) or die ("Sql error : ".mysql_error());
我猜你会用临时表做更多的事情,或者只是玩弄它,但如果不知道整个代码可以总结为:
<?php
$query = "
SELECT `id` AS 'itineraryId', `ship`, `description`, `duration`
FROM `cruises`
WHERE `live` = 'Y'
";
$export = mysql_query($query, $connection) or die ("Sql error : ".mysql_error());