-3

php程序读取.sql文件并自动生成表并在MySQL数据库中插入数据?(我导出所有数据库表..sql 我想要一个读取 .sql 文件并自动生成所有表并将数据插入其中的 php 程序..)

提前致谢..

4

3 回答 3

2

试试下面的库,它将帮助您上传 .sql 文件并执行它的内容

http://www.ozerov.de/bigdump/

于 2013-04-06T08:13:23.197 回答
0

尝试

<?php
    if(isset($_FILE["file"])){ 
        $dshost = "";
        $dsdatabase = "";
        $dsusername = "";
        $dspassword = "";
        $connection1 = mysql_connect($dshost,$dsusername,$dspassword);
        $seldb = mysql_select_db($dsdatabase, $connection1) or die( "Unable to select database");
        $sql = file_get_contents($_FILE['file']);
        $q=mysql_query($sql) or die(mysql_error());
        if($q){
            echo "Success!";
        }else{
            echo "Fail.";
        }
    }else{
        ?>
        <form action="upload_file.php" method="post"
        enctype="multipart/form-data">
        <label for="file">Filename:</label>
        <input type="file" name="file" id="file"><br>
        <input type="submit" name="submit" value="Submit">
        </form>
        <?php 
    }
?>

我认为我做对了。除非我不告诉你改用 PDO 或 mysqli,否则人们会对我大喊大叫。显然您需要在顶部添加自己的 sql 凭据。

于 2013-04-06T06:07:31.803 回答
0

好的,就是这样,如果你对编程有一点了解,你就会明白,否则你需要上学。这是制作表格的命令和数据

 CREATE TABLE IF NOT EXISTS `wp_options` (
  `option_id` bigint(20) unsigned NOT NULL auto_increment,
  `option_name` varchar(64) NOT NULL default '',
  `option_value` longtext NOT NULL,
  `autoload` varchar(20) NOT NULL default 'yes',
  PRIMARY KEY  (`option_id`),
  UNIQUE KEY `option_name` (`option_name`)
) ENGINE=MyISAM AUTO_INCREMENT=151 DEFAULT CHARSET=utf8;

以下是数据,请注意,这只是示例,我们不会完全按照您的意愿去做,但我们可以帮助您入门。

INSERT INTO `wp_options` VALUES (1, 'siteurl', 'http://www.lostknowledge.org', 'yes');
INSERT INTO `wp_options` VALUES (2, 'blogname', 'Lost Knowledge', 'yes');
INSERT INTO `wp_options` VALUES (3, 'blogdescription', 'Just another WordPress site', 'yes');
INSERT INTO `wp_options` VALUES (4, 'users_can_register', '0', 'yes');
INSERT INTO `wp_options` VALUES (5, 'admin_email', '8156345@gmail.com', 'yes');
INSERT INTO `wp_options` VALUES (6, 'start_of_week', '1', 'yes');
INSERT INTO `wp_options` VALUES (7, 'use_balanceTags', '0', 'yes');
INSERT INTO `wp_options` VALUES (8, 'use_smilies', '1', 'yes');
INSERT INTO `wp_options` VALUES (9, 'require_name_email', '1', 'yes');
INSERT INTO `wp_options` VALUES (10, 'comments_notify', '1', 'yes');
INSERT INTO `wp_options` VALUES (11, 'posts_per_rss', '10', 'yes');
INSERT INTO `wp_options` VALUES (12, 'rss_use_excerpt', '0', 'yes');
INSERT INTO `wp_options` VALUES (13, 'mailserver_url', 'mail.example.com', 'yes');

给出你想从文件中使用它的问题,你可以使用 &sql = file_get_contents(filename.sql) 和 harki krishnan 告诉然后在命令创建表后插入 $sql 如果不存在

于 2013-04-06T06:08:23.520 回答