首頁 資料庫 mysql教程 将sqlite查询结果导入到文本文件

将sqlite查询结果导入到文本文件

Jun 07, 2016 pm 02:53 PM
sqlite 導入 文件 文字 查詢 結果

将sqlite查询结果导入到文本文件 下班前接到一个需求,要将sqlite数据库中的某个字段导出保存到一个文本中,数据大概有1000w左右,于是我就写了一个python脚本,来做这个事情。 www.2cto.com 01 #!/usr/xxx/bin/python 02 03 import os,sys 04 import sqlite


将sqlite查询结果导入到文本文件

 

下班前接到一个需求,要将sqlite数据库中的某个字段导出保存到一个文本中,数据大概有1000w左右,于是我就写了一个python脚本,来做这个事情。

  www.2cto.com  

01

#!/usr/xxx/bin/python

02

 

03

import os,sys

04

import sqlite3

05

import logging

06

 

07

sys.path.append('.')

08

# logger configure

09

logger = logging.getLogger()

10

handler = logging.FileHandler('/home/admin/tmp/xxx.txt')

11

logger.addHandler(handler)

12

logger.setLevel(logging.NOTSET)

13

 

14

sqlfile_path = '/home/admin/tmp/user.sql'

15

 

16

def write_to_file(guid):

17

    total_count = get_total_count(guid)

18

    page_size = 10000

19

    offset_num = 0

20

    op_num = 0

21

    while op_num

22

        array_list = get_data([guid,page_size,op_num])

23

        offset_num = offset_num + 1

24

        op_num = offset_num * page_size

25

    for n in array_list:

26

            logger.info(n)

27

 

28

def get_total_count(guid):

29

    conn = sqlite3.connect(sqlfile_path)

30

    cur = conn.cursor()

31

    cur.execute('select count(*) from table_name where id = \'' + guid + '\'')

32

    try:

33

        count = cur.fetchone()[0]

34

    except:

35

        count = 0

36

    cur.close()

37

    conn.close()

38

    return count

39

 

40

def get_data(item):

41

    conn = sqlite3.connect(sqlfile_path)

42

    cur = conn.cursor()

43

    cur.execute('select name from table_name where id = \'' + item[0] + '\' limit ' + item[1] + ' offset ' + item[2])

44

    array_list = []

45

    for r in cur.fetchall():

46

        array_list.append(r[0])

47

    cur.close()

48

    conn.close()

49

    return array_list

50

     

51

if '__maiin__' == __name__:

52

    for guid in ['123456789','987654321']:

53

        write_to_file(guid)

考虑到数据还是有一点大的,所以就每次查询10000条操作,写完后运行起来,然后我就下班走人了,第二天上班发现这个脚本居然还在跑着,一晚上还没有结束。那叫一个头疼啊。。。 这不是 GC 。

 

既然这么慢,那我就慢慢等吧,然后开始做其他事情去了,GC来了,兄弟我在测试其他程序的时候,一个不小心,在运行脚本的时候,把python脚本跑出来的文本给删了,连python脚本也一起全删了,当我意识过来的时候,泪流满面啊。。。

 

就在我沮丧的时候,旁边一同学问了我情况,然后默默的给了我一行代码:

 

1 sqlite3 user.sql "select name from table_name where id = '123456789'" >> xxx.txt

之后十分钟,数据全导出来了,效率真TM高。

 

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

出現0x80004005錯誤代碼怎麼辦 小編教你0x80004005錯誤代碼解決方法 出現0x80004005錯誤代碼怎麼辦 小編教你0x80004005錯誤代碼解決方法 Mar 21, 2024 pm 09:17 PM

在電腦中刪除或解壓縮資料夾,時有時會彈出提示對話框“錯誤0x80004005:未指定錯誤”,如果遇到這中情況應該怎麼解決呢?提示錯誤碼0x80004005的原因其實很多,但大部分因為病毒導致,我們可以重新註冊dll來解決問題,下面,小編給大夥講解0x80004005錯誤代碼處理經驗。有使用者在使用電腦時出現錯誤代碼0X80004005的提示,0x80004005錯誤主要是由於電腦沒有正確註冊某些動態連結庫文件,或電腦與Internet之間存在不允許的HTTPS連接防火牆所引起。那麼如何

網易雲音樂本地歌曲怎麼導入 本地歌曲導入方法 網易雲音樂本地歌曲怎麼導入 本地歌曲導入方法 Mar 13, 2024 am 11:19 AM

我們在使用這款平台來聽歌的時候,應該大部分都是有著你們所想聽的一些歌曲的,當然有些事可能因為沒有版權而聽不見了,當然我們也可以直接的使用導入本地的一些歌曲到上面,這樣就可以聽了。我們可以下載一些歌曲直接的轉換為mp3類型的一些格式,這樣在手機上面就可以掃描來進行一些導入等情況了。不過對於大多數的用戶來說,導入本地的一些歌曲內容等方面都是不太了解的,所以為了能夠很好的解決這些問題,今日小編也會給大家們來好好的講解一下其中的內容方法,讓大家可以更好的對其進行一些選擇都是沒問的,有興趣的話,

夸克網盤的檔案怎麼轉移到百度網盤? 夸克網盤的檔案怎麼轉移到百度網盤? Mar 14, 2024 pm 02:07 PM

  夸克網盤和百度網盤都是現在最常用的儲存文件的網盤軟體,如果想要將夸克網盤內的文件保存到百度網盤,要怎麼操作呢?本期小編整理了夸克網盤電腦端的檔案轉移到百度網盤的教學步驟,一起來看看是怎麼操作吧。  夸克網盤的檔案怎麼存到百度網盤?要將夸克網盤的文件轉移到百度網盤,首先需在夸克網盤下載所需文件,然後在百度網盤用戶端中選擇目標資料夾並開啟。接著,將夸克網盤中下載的檔案拖放到百度網盤用戶端開啟的資料夾中,或使用上傳功能將檔案新增至百度網盤。確保上傳完成後在百度網盤中查看檔案是否已成功轉移。這樣就

12306怎麼查詢歷史購票紀錄 查看歷史購票紀錄的方法 12306怎麼查詢歷史購票紀錄 查看歷史購票紀錄的方法 Mar 28, 2024 pm 03:11 PM

12306訂票app下載最新版是一款大家非常滿意的出行購票軟體,想去哪裡就去那裡非常方便,軟體內提供的票源非常多,只需要通過實名認證就能在線購票,所有用戶的出行車票機票都可以輕鬆買到,享受不同的優惠折扣。還能提前開啟預約搶票,預約飯店、專車接送都是可以的,有了它想去哪裡就去那裡一鍵購票,出行更加簡單方便,讓大家的出行體驗更舒服,現在小編在線詳細為12306用戶帶來查看歷史購票記錄的方法。  1.打開鐵路12306,點擊右下角我的,點擊我的訂單  2.在訂單頁面點擊已支付。  3.在已支付頁

學信網如何查詢自己的學歷 學信網如何查詢自己的學歷 Mar 28, 2024 pm 04:31 PM

學信網如何查詢自己的學歷?在學信網中是可以查詢到自己的學歷,很多用戶都不知道如何在學信網中查詢到自己的學歷,接下來就是小編為用戶帶來的學信網查詢自己學歷方法圖文教程,感興趣的用戶快來一起看看吧!學信網使用教程學信網如何查詢自己的學歷一、學信網入口:https://www.chsi.com.cn/二、網站查詢:第一步:點選上方學信網位址,進入首頁點選【學歷查詢】;第二步:在最新的網頁中點選如下圖箭頭所示的【查詢】;第三步:之後在新頁面點選【的登陸學信檔案】;第四步:在登陸頁面輸入資料點選【登陸】;

hiberfil.sys是什麼檔案? hiberfil.sys可以刪除嗎? hiberfil.sys是什麼檔案? hiberfil.sys可以刪除嗎? Mar 15, 2024 am 09:49 AM

  最近有很多網友問小編,hiberfil.sys是什麼文件? hiberfil.sys佔用了大量的C碟空間可以刪除嗎?小編可以告訴大家hiberfil.sys檔是可以刪除的。下面就來看看詳細的內容。 hiberfil.sys是Windows系統中的隱藏文件,也是系統休眠文件。通常儲存在C盤根目錄下,其大小與系統安裝記憶體大小相當。這個檔案在電腦休眠時被使用,其中包含了當前系統的記憶體數據,以便在恢復時快速恢復到先前的狀態。由於其大小與記憶體容量相等,因此它可能會佔用較大的硬碟空間。  hiber

MySQL中.ibd檔的作用詳解及相關注意事項 MySQL中.ibd檔的作用詳解及相關注意事項 Mar 15, 2024 am 08:00 AM

MySQL中.ibd檔案的作用詳解及相關注意事項MySQL是一種流行的關聯式資料庫管理系統,資料庫中的資料儲存在不同的檔案中。其中,.ibd檔案是InnoDB儲存引擎中的資料文件,用於儲存表格中的資料和索引。本文將對MySQL中.ibd檔案的作用進行詳細解析,並提供相關程式碼範例以幫助讀者更好地理解。一、.ibd檔的作用:儲存資料:.ibd檔是InnoDB存

MySQL與PL/SQL的異同比較 MySQL與PL/SQL的異同比較 Mar 16, 2024 am 11:15 AM

MySQL與PL/SQL是兩種不同的資料庫管理系統,分別代表了關係型資料庫和過程化語言的特性。本文將比較MySQL和PL/SQL的異同點,並附帶具體的程式碼範例進行說明。 MySQL是一種流行的關聯式資料庫管理系統,採用結構化查詢語言(SQL)來管理和操作資料庫。而PL/SQL是Oracle資料庫特有的過程化語言,用於編寫預存程序、觸發器和函數等資料庫物件。相同

See all articles