改寫sql的python腳本

# encoding: utf-8

import datetime

num = 10000  #數據庫中已有的數據量,實時更新

today = datetime.now().strftime("%Y%m%d")
filename = 'stock_dynamicinfor'+today+'.sql'  #數據庫備份的最新文件,當天更新數據

with open('D:/XGO/database_backup/%s' % filename, 'r')  as f:
    text = f.readlines()[46:]

with open('D:/XGO/database_backup/update/sql_statement','w') as f:
    for ele in text:
        ele = ele.split('(')
        ele[1]=ele[1].split(',')
        ele[1][0] = str(int(ele[1][0][1:-1])+num)
        ele[1][0] = '\''+ele[1][0]+'\''
        ele[1][1] = ','.join(ele[1][1:])
        ele[1] = ','.join([ele[1][0],ele[1][1]])
        ele = '('.join([ele[0],ele[1]])
        f.writelines(ele)

由於python字符串的是不可變的,因此使用python字符串的split方法和join方法進行操做更改sql語句。除此以外python字符串操做有不少方法,慢慢熟悉。python

關於python文件操做的打開文件的模式。一般文件使用模式爲'r','w'或是'a',分別表明讀取、寫入和追加。還有‘U’模式,表明通用換行符支持。其中'+'表明可讀可寫,'b'表明二進制模式訪問。sql

使用‘r’或‘U’模式必須是文件已經存在。使用'w'模式打開的文件若存在則先狀況,而後從新建立,以‘a’模式打開的文件,則將所有寫入的數據追加到文件的末尾。數據庫

文件對象訪問模式:spa

r                         :  以讀方式打開code

rU或Ua                 :  以讀方式打開,同時提供通用換行符支持對象

w                        : 以寫方式打開blog

a                         :  以追加模式打開utf-8

r+,w+,a+             :  以讀寫模式打開ci

rb                        : 以二進制讀模式打開字符串

wb                        : 以二進制寫模式打開

ab                        : 以二進制追加模式打開

rb+                       : 以二進制讀寫模式打開

wb+                      : 以二進制讀寫模式打開

ab+                       :以二進制讀寫模式打開

相關文章
相關標籤/搜索