<
/省略连接数据库部分,请自行添加/
$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,20lily,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插入数据到数据库表单等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)