python一行sql太長折成多行並且有多個參數

sql語句本身就支持多行, 你可以用兩種方法斷行

注意: 第一種會帶入換行符( ), 第二種只是一行

a='''xxxx
本身也可以作為注釋使用
xxxx
'''
b='aaaa
1
2
3'

❷ 如何用python批量插入數據到mysql資料庫,用list

你要把整個Excel文件數據存到資料庫嗎?如果是,明天給你代碼
首先你要將保存回Excel內容的欄位設置答成image類型,假設表名[file],欄位為file_content
void ImportExcel()
{

}


追問:

嗯,把excel文件中所有數據導入到mysql資料庫中。image類型?

回答:

對,不用考慮Excel裡面有多少行,多少列的,就當成是一個數據流文件。整個文件的內容就是二進制數據流,放到一個image欄位就可以了,讀取的時候,將image轉為[]byte類型,寫到一個新建的Excel文件裡面。明天會公司發我的源碼給你看

追問:

嗯,非常之感謝。

回答:

//***********************************************
代碼放不下,上附件
//我用的是SqlServer,改下資料庫連接字元串,還有SQL語句就能導入資料庫了
//***********************************************

❸ python中sql語句多個 查詢條件的怎麼寫

python中有很多字元串連接方式,今天在寫代碼,順便總結一下:

  1. 最原始的字元串連接方式:str1 + str2

  2. python 新字元串連接語法:str1, str2

  3. 奇怪的字元串方式:str1 str2

  4. % 連接字元串:『name:%s; sex: 』 % ('tom', 'male')

  5. 字元串列表連接:str.join(some_list)

第四種功能比較強大,借鑒了C語言中 printf 函數的功能,如果你有C語言基礎,看下文檔就知道了。這種方式用符號「%」連接一個字元串和一組變數,字元串中的特殊標記會被自動用右邊變數組中的變數替換。


試試這個

results=self.db.query(
'SELECTLP.IdLineProctId,LP.SupplierLineTitle,LP.MainTitle,LP.SubTitle,LP.ShowTitle,LPC.CityIdDestinationCityId,
LPC.CityNameDestinationCityName,LP.Days,LP.DataFlag,LP.IfDel,LP.RecomImage_IdsASLineProctRecomImage
FROM[TCZiZhuYou].dbo.[ZZY_LineProct]LPWITH(NOLOCK)
INNERJOIN[TCZiZhuYou].dbo.[ZZY_LineProctCity]LPCWITH(NOLOCK)ONLPC.LineProct_Id=LP.IdANDLPC.DataFlag=1ANDLPC.IsDestination=1
WHERELP.Id=%dANDLP.LineProctType=%d'%(line_id,line_type))[0]

❹ python tornado 進行大量sql寫入操作 導致其他請求全部阻塞 是我方法有問題還是確實

tornado是單進程單線程的伺服器,如果是同步請求,一個長時間的請求沒結束,就不能去處理其他的請求,可是tornado支持非同步請求,就是當我們在等待結果的時候不阻塞,增加一個回調函數作為參數,在有結果的時候通過回調函數進行通知。這樣,伺服器就可以去接受其他的請求了。

至於php,可以看看php-fpm的配置文件,那個是多進程來出處理請求的

❺ python如何操作SQL語句

這里有個比較清楚的解答:
http://..com/question/262503775.html

但是你的是一個文本的話,就要稍微改一下咯

如果改成cx_Oracle的話,就是這樣的:

import sys
import cx_Oracle
import os

class handleDataBase:
def __init__(self,user,passwd,server,sql):
self.user=user
self.passwd=passwd
self.server=server
self.sql=sql
self.conn = cx_Oracle.connect("%s/%s@%s"%(self.user,self.passwd,self.server))

def selectDB(self):
cursor = self.conn.cursor()
cursor.execute("select count(1) from search_item_08")
ret = cursor.fetchall()
cursor.close()
print ret
return ret

def closeDB(self):
self.conn.close()

if __name__ == "__main__":
if len(sys.argv) < 4:
print "Need Arguments: user passwd server"
sys.exit(1)

user=sys.argv[1]
passwd=sys.argv[2]
server=sys.argv[3]
#sql='select count(1) from search_item_08;' #注意這里要改
sql = open('a.sql','r').read() #改成從文件讀取

#接下來就訪問資料庫了
handleDB = handleDataBase(user,passwd,server,sql)
handleDB.selectDB()
handleDB.closeDB()

❻ python拼接sql動態查詢語句有更好的寫法嗎

可以使用現成的包
python-sql is a library to write SQL queries in a pythonic way.
Nutshell
Import:
>>> from sql import *
>>> from sql.aggregate import *
>>> from sql.conditionals import *

Simple selects:
>>> user = Table('user')
>>> select = user.select()
>>> tuple(select)
('SELECT * FROM "user" AS "a"', ())

>>> select = user.select(user.name)
>>> tuple(select)
('SELECT "a"."name" FROM "user" AS "a"', ())

>>> select = user.select(Count(Literal(1)))
>>> tuple(select)
('SELECT COUNT(%s) FROM "user" AS "a"', (1,))

>>> select = user.select(user.id, user.name)
>>> tuple(select)
('SELECT "a"."id", "a"."name" FROM "user" AS "a"', ())

❼ python批量insert-每1000條插入一次,邏輯怎麼寫

以下實例展示了 insert()函數的使用方法:#!/usr/bin/python aList = [123, 'xyz', 'zara', 'abc'] aList.insert( 3, 2009) print "Final List : ", aList 以上實例輸出結果如下:Final List : [123, 'xyz', 'zara', 2009, 'abc']

❽ python批量執行sql語句並列印結果到一個文件中

推薦使用「Office批量列印精靈」——Office文檔批量列印軟體,支持Word、Excel、Powerpoint、PDF等文檔的批量列印,且可使用虛擬列印機,將多個Office文檔轉換為PDF文件。

下載地址:http://www.yiyunsoftware.com

使用教程:http://jingyan..com/article/f00622280e4dd4fbd3f0c80e.html

❾ 如何批量執行某個文件夾下所有的 sql腳本

1,先把sql腳本名字全部取出來
2,追加到一個文本文件里名字 yy.sql,比如 xx1.sql 就寫
@@xx1.sql
@@xx2.sql
3,在文件目錄下新建一個bat文件內容如下
sqlplus user/pwd@sid @yy.sql >tt.log
4,雙擊bat文件運行,就可以批量執行
注意,每個sql腳本文件裡面的最後一行必須有 /

❿ python中,怎麼將大量數據一次性導入資料庫中。 補充:資料庫是Mysql資料庫

我估計你是問怎麼從文件導入到資料庫。一般每個資料庫都有一個從文件直接load數據回到資料庫的命令答或者工具。
比如SQLServer 有個bcp。 MySql 就是 load。

給你搜了詳細的幫助。看看鏈接吧。以下是精簡的使用方法:
基本用法:
mysql> USE db1;
mysql> LOAD DATA INFILE "./data.txt" INTO TABLE db2.my_table;

指定行,欄位的分隔符:
mysql> LOAD DATA INFILE 'data.txt' INTO TABLE tbl_name

FIELDS TERMINATED BY ',' ENCLOSED BY '"'

LINES TERMINATED BY '\n';