php 导入数据库

php 导入数据库,第1张

<

/省略连接数据库部分,请自行添加/

$sql = "DROP TABLE IF EXISTS config";

mysql_query($sql) ;//执行命令

$sql = "CREATE TABLE config (

db_name varchar(30) character set utf8 NOT NULL default '',

db_value text character set utf8 NOT NULL ,

PRIMARY KEY (db_name)

) TYPE=MyISAM CHARACTER SET utf8 COLLATE utf8_general_ci";

if (mysql_query($sql))

echo '创建表config成功';

else

echo '创建表config失败';

>

进入docker的mysql容器。

进入容器导出数据,首先执行dockerps,找到mysql容器的name,然后执行dockerexec-itmysql/bin/bash,进入容器,执行命令whereismysql,找到mysql的运行路径,我这里是:/usr/local/mysql/bin,用cd进入cd/usr/local/mysql/bin。请注意,这里的路径是指docker容器内的路径,跟您的宿主机路径没有关系,执行导出命令mysqldump-u用户名-p数据库名>保存文件sql,输入密码后基本导出成功,请注意,保存文件的路径要设置在volumes下面,即/var/lib/mysql/下,随后输入exit退出容器内部,回到宿主机上,我们就能够找到导出的数据文件了,如果您要导出csv格式的话,将mysqldump的那句命令改为:mysql-u用户名--password=密码--database=数据库名--execute='SELECT`FIELD`,`FIELD`FROM`TABLE`LIMIT0,10000'-X>保存文件sql即可。

docker的作用是:1、更好地利用资源,2、为微服务定制,3、在云服务提供商之间方便移植,4、方便利用API端,5、便于技术的创新。

表单应该使用名字,例如:

<form action=xxxphp method=post>

<select name="select1">

<option value="1" selected="selected">男</option>

<option value="0">女</option>

</select>

</form>

这样,在xxxphp里面使用$_POST['select1']获取结果。

1,在excel表每一行后加上=CONCATENATE("insert into table(字段1,字段2,字段n)values('",字段1坐标,"','",字段2坐标,"','",字段n坐标,"');")

2,将这一列复制到文本文档,以方便浏览和调试错误

3,使用运行sql的工具(我将他们都放到Navicat中创建查询 再运行就ok了) 4,浏览数据库,修改不合理的字段及值

你把下面的这段粘到excel 里面对应的位置

=CONCATENATE("insert into keywords(id,name,pwd)values('",坐标,"','",坐标,"','",坐标,"');")

按照你表格的排列对好,比如

最后把这一列复制到文本文档,你会看到全是sql的插入语句;

最后用Navicat之类的工具执行这些语句就Ok了。

思路:

读取csv文件,每读取一行数据,就插入数据库

示例

文件夹结构

/

 filecsv    //csv大文件,这里只模拟三行数据,不考虑运行效率(PS:csv文件格式很简单,文件一般较小,解析很快,运行效率的瓶颈主要在写入数据库 *** 作)

 indexphp    //php文件

filecsv

singi,20

lily,19

daming,23

indexphp

/

  读取csv文件,每读取一行数据,就插入数据库

 /

//获取数据库实例

$dsn = 'mysql:dbname=test;host=127001';

$user = 'root';

$password = '';

try {

    $db = new PDO($dsn, $user, $password);

} catch (PDOException $e) {

    echo 'Connection failed: '  $e->getMessage();

}

//读取filecsv文件

if (($handle = fopen("filecsv", "r")) !== FALSE) {

    while (($row = fgetcsv($handle, 1000, ",")) !== FALSE) {

        //写入数据库

        $sth = $db->prepare('insert into test set name=:name,age=:age');

        $sth->bindParam(':name',$row[0],PDO::PARAM_STR,255);

        $sth->bindParam(':age',$row[1],PDO::PARAM_INT);

        $sth->execute();

    }

    fclose($handle);

}

数据表

CREATE TABLE `test` (

`id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,

`name` VARCHAR(255) NULL DEFAULT '' COLLATE 'utf8mb4_bin',

`age` INT(10) NULL DEFAULT '0',

PRIMARY KEY (`id`)

)

COLLATE='utf8mb4_bin'

ENGINE=InnoDB;

运行结束后,数据库中会插入csv中的三行数据

首先你要建立一个表,例如是注册的用户表user

,里面的结构有字段

id,

name,nickname,email等。

然后在你的表单处<form

action="aphp"

method="post"

name="regform">(如果有上传,还要加上enctype="multipart/form-data")

,那么点击表单提交按纽后,此表单将会交给处理页aphp来作处理。

如果简单点,你就直接可以将表单传递过来的数据$_POST,直接用sql插入语句,insert

into来插入到数据库,表user中。例如insert

into

user

set

name='"$_POST['name']"'

以上就是关于php 导入数据库全部的内容,包括:php 导入数据库、dockerphp导入文件到数据库、php插入数据到数据库表单等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9653249.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存