请教一个问题,如何把txt导入数据库

WBOY
Libérer: 2016-06-23 14:14:49
original
921 Les gens l'ont consulté

假[i]设现在拿到一个CSDN所有用户和密码的txt,里面有30W的数据,第一列是用户名,第二列是密码,第三列是邮箱。

然后再拿到一个天涯的txt,但是第一列是邮箱,第二列是用户名,第三列密码。
还有更多排列不一致的txt。

我想做一个通用的导入程序,如何能使不同的txt文件都能按照 “用户名-密码-邮箱”这样的方式存入数据库相应的字段呢,这样就能方便的在数据库查询,谢谢!


回复讨论(解决方案)

那么大的数据量,建议用mysql临时表来做。

你可以使用 LOAD DATA INFILE 指令高速导入数据
但如果数据文件的编码与 character_set_database 不同的话,那就只有逐行导入了

导入前都需有一个用户交互页面来人工确认导入的次序

你可以使用 LOAD DATA INFILE 指令高速导入数据
但如果数据文件的编码与 character_set_database 不同的话,那就只有逐行导入了

导入前都需有一个用户交互页面来人工确认导入的次序

导入前都需有一个用户交互页面来人工确认导入的次序
按照您的意思,是否意味着当我选择上传一个文件的时候,让php读取文件的第一行(通常第一行和下面的格式是一样的,只是长度不同),选择后让php自动读取并匹配?

是的,表的哪一字段对应数据的哪一列,这是必须要核对清楚的

是的,表的哪一字段对应数据的哪一列,这是必须要核对清楚的

感谢您的回复

php循环应该可以,不知效率如何了。

这个很简单啊,就是取数据和存数据两个过程,取得时候判断下第一列是否是邮箱,如果是邮箱那么第二列是用户名,第三列密码。如果不是则第一列是用户名,第二列是密码,第三列是邮箱。然后拼成你想要的字符串,再存进数据库就可以了啊。

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!