欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Linux中將txt導(dǎo)入到mysql的方法教程

 更新時(shí)間:2018年11月07日 14:19:15   作者:Cassie1492949236626  
這篇文章主要給大家介紹了關(guān)于在Linux中將txt導(dǎo)入到mysql的方法教程,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

前言

昨天寫小項(xiàng)目的時(shí)候遇到了一個(gè)需求:把txt文檔的數(shù)據(jù)導(dǎo)入到mysql數(shù)據(jù)庫中,開始本來想直接用Mysql Workbench導(dǎo)入TXT文件,但是最后發(fā)現(xiàn)不支持TXT導(dǎo)入,結(jié)果我吧嗒吧嗒的去把TXT轉(zhuǎn)了Excel,拿到Linux上導(dǎo)入的時(shí)候又發(fā)現(xiàn)了各種亂碼問題。

抱著沒有什么是程序員干不了的原則,我手寫了一個(gè)Python代碼直接操作文件進(jìn)行導(dǎo)入了。結(jié)果大概一萬多條的文件,導(dǎo)入時(shí)間大概兩分鐘。

下面是具體的代碼:

  • mysqlpython.py文件:  自定義的連接mysql數(shù)據(jù)庫的類
  • importtxt.py文件: 讀TXT文件并進(jìn)行插入操作
  • dict.txt文件: 要操作的TXT文件

mysqlpython.py文件

from pymysql import *

class Mysqlpython:
 def __init__(self,database,host="localhost",
     user="root",password="123456",
     charset="utf8",port=3306):
  self.database = database
  self.host = host
  self.user = user
  self.password = password
  self.charset = charset
  self.port = port
  

 # 創(chuàng)建數(shù)據(jù)連接和游標(biāo)對象
 def open(self):
  self.db = connect(host=self.host,
     user=self.user,
     password=self.password,
     port=self.port,
     database=self.database,
     charset=self.charset)
  self.cur = self.db.cursor()

 # 關(guān)閉游標(biāo)對象和數(shù)據(jù)庫連接對象
 def close(self):
  self.cur.close()
  self.db.close()

 # 執(zhí)行sql命令
 def zhixing(self,sql,L=[]):
  self.open()

  self.cur.execute(sql,L)
  self.db.commit()

  self.close()

 # 查詢功能
 def all(self,sql,L=[]):
  self.open()
  self.cur.execute(sql,L)
  result = self.cur.fetchall()
  return result


if __name__ == "__main__":
 sqlh = Mysqlpython("dictionary") 
 sel = "select * from user"
 r = sqlh.all(sel)
 print(r)

importtxt.py文件

import re
import sys
from mysqlpython import Mysqlpython
sqlh = Mysqlpython("dictionary")

def insert(data):
 arr = data.split()
 name = arr[0]
 description = " ".join(arr[1:])
 ins = "insert into words(name,description) values(%s,%s)"
 sqlh.zhixing(ins,[name,description])

def get_addr():
 f = open('./dict.txt')
 lines=f.readlines()
 for line in lines:
  insert(line)
 f.close()
 return ''


if __name__ =='__main__':
 print(get_addr())

dict.py文件(我復(fù)制了幾條文件)

a    indef art one
abacus   n.frame with beads that slide along parallel rods, used for teaching numbers to children, and (in some countries) for counting
abandon   v. go away from (a person or thing or place) not intending to return; forsake; desert
abandonment  n. abandoning
abase   v. ~ oneself/sb lower oneself/sb in dignity; degrade oneself/sb ;
abash   to destroy the self-possession or self-confidence of:disconcert
abashed   adj. ~ embarrassed; ashamed
abate   v. make or become less
abattoir   n. = slaughterhouse (slaughter)

針對不同的分隔符修改一下正則表達(dá)式即可。全部代碼都貼上去了,直接復(fù)制修改下數(shù)據(jù)庫的配置就可以運(yùn)行了。

總結(jié):

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關(guān)文章

  • Apache NameVirtualHost *:80 has no VirtualHosts問題解決辦法

    Apache NameVirtualHost *:80 has no VirtualHosts問題解決辦法

    這篇文章主要介紹了Apache NameVirtualHost *:80 has no VirtualHosts問題解決辦法,一個(gè)很簡單的配置性錯(cuò)誤,需要的朋友可以參考下
    2014-08-08
  • 詳解CentOS設(shè)置程序開機(jī)自啟動(dòng)的方法

    詳解CentOS設(shè)置程序開機(jī)自啟動(dòng)的方法

    本篇文章主要介紹CentOS設(shè)置程序開機(jī)自啟動(dòng)的方法 ,在CentOS系統(tǒng)下,主要有兩種方法設(shè)置自己安裝的程序開機(jī)啟動(dòng)。有興趣的可以了解一下,
    2016-12-12
  • Centos7的apache網(wǎng)站環(huán)境搭建wordpress

    Centos7的apache網(wǎng)站環(huán)境搭建wordpress

    本篇文章給大家詳細(xì)分析了在Centos7的apache網(wǎng)站環(huán)境搭建wordpress的詳細(xì)操作方法,有興趣的朋友參考下。
    2018-02-02
  • Linux解決Unknown filesystem問題

    Linux解決Unknown filesystem問題

    當(dāng)Linux系統(tǒng)出現(xiàn)「Unknown filesystem」錯(cuò)誤,通常是GRUB引導(dǎo)問題,首先在GRUB命令行輸入ls查看信息,記錄返回的分區(qū)信息,使用PE系統(tǒng),如「微PE」,并利用「顯示隱藏分區(qū)」工具查看所有分區(qū),在文件資源管理器中找到「boot」文件夾所在的分區(qū)
    2024-10-10
  • 詳解Linux系統(tǒng)中虛擬設(shè)備文件的各種實(shí)用用法

    詳解Linux系統(tǒng)中虛擬設(shè)備文件的各種實(shí)用用法

    這篇文章主要介紹了Linux系統(tǒng)中虛擬設(shè)備文件的各種實(shí)用用法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-07-07
  • Linux配置遠(yuǎn)程SSH無密碼登錄

    Linux配置遠(yuǎn)程SSH無密碼登錄

    這篇文章主要為大家詳細(xì)介紹了Linux配置遠(yuǎn)程SSH無密碼登錄的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • Linux使用cd命令之實(shí)現(xiàn)切換目錄的完全指南

    Linux使用cd命令之實(shí)現(xiàn)切換目錄的完全指南

    這篇文章主要介紹了Linux使用cd命令之實(shí)現(xiàn)切換目錄的完全指南,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • centos配置mutt和msmtp實(shí)現(xiàn)郵件發(fā)送

    centos配置mutt和msmtp實(shí)現(xiàn)郵件發(fā)送

    這篇文章主要為大家詳細(xì)介紹了centos配置mutt和msmtp實(shí)現(xiàn)郵件發(fā)送,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • 解決Linux system v 共享內(nèi)存問題

    解決Linux system v 共享內(nèi)存問題

    這篇文章主要介紹了Linux system v 共享內(nèi)存問題,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-07-07
  • Ubuntu18.04通過源碼安裝Odoo14的教程

    Ubuntu18.04通過源碼安裝Odoo14的教程

    本系列文章針對Odoo 14版,從系統(tǒng)安裝,開發(fā)環(huán)境配置,代碼結(jié)構(gòu),主要功能升級,源碼賞析,Anodoo對Odoo的關(guān)鍵擴(kuò)展等角度,預(yù)先給大家介紹即將在2020年發(fā)布的這一最新版本
    2020-02-02

最新評論