導航:首頁 > 編程語言 > python寫sql語句

python寫sql語句

發布時間:2022-12-29 02:57:50

『壹』 python往sqlite3中更新數據,數值型欄位更新一個None, sql語句該如何寫

///sqlite數據表建立唯一限制就行了么///sql代碼如下:CREATE TABLE "main"."film" ("filmno" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,"filmname" TEXT(100),"language" TEXT(10),"type" TEXT(10),CONSTRAINT "不重復規則" UNIQUE ("filmnam...

『貳』 python 執行sql語句,在for循環裡面 寫sql語句,出錯了

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page language="java" import="java.io.*,com.jspsmart.upload.*"%>
<HTML><HEAD>
<meta http-equiv="Content-Type" content="text/html";charset=UFT-8>
<TITLE>Save upload </TITLE>
</HEAD>
<BODY>
<%
// 將上傳文件全部保存到指定目錄創建文件夾使用絕對路徑
String uploadPath =request.getRealPath("/")+"/images/";
java.io.File fdir = new java.io.File(uploadPath);
if(!fdir.exists()){
fdir.mkdirs();
}

SmartUpload su = new SmartUpload();
su.initialize(pageContext);
// 設定上傳限制
// 1.限制每個上傳文件的最大長度。
//su.setMaxFileSize(5120000); //5M
// 2.限制總上傳數據的長度。
//su.setTotalMaxFileSize(25600000);//5M*5
// 3.設定允許上傳的文件(通過擴展名限制)。
//su.setAllowedFilesList("gif,jpg,png,bmp,GIF,JPG,PNG,BMP");
// 4.設定禁止上傳的文件(通過擴展名限制),禁止上傳帶有exe,bat,
//jsp,htm,html擴展名的文件和沒有擴展名的文件。
//su.setDeniedFilesList("exe,bat,jsp,htm,html,,");
// 上傳文件
su.upload();

String x = su.getRequest().getParameter("x") ;

out.println("<table border='1' width='560'>");

String ext="."+file.getFileExt();
String strtemp=uploadPath+"/"+x+ext;

file.saveAs(strtemp);
}
out.println("</table>");
%>
</body>
</html>

『叄』 如何用python寫sql

python可以利用pymysql模塊操作資料庫。

什麼是 PyMySQL?

PyMySQL 是在 Python3.x 版本中用於連接 MySQL 伺服器的一個庫,Python2中則使用mysqldb。

PyMySQL 遵循 Python 資料庫 API v2.0 規范,並包含了 pure-Python MySQL 客戶端庫。

PyMySQL 安裝

在使用 PyMySQL 之前,我們需要確保 PyMySQL 已安裝。

PyMySQL 下載地址:https://github.com/PyMySQL/PyMySQL。

如果還未安裝,我們可以使用以下命令安裝最新版的 PyMySQL:

$ pip3 install PyMySQL

如果你的系統不支持 pip 命令,可以使用以下方式安裝:

1、使用 git 命令下載安裝包安裝(你也可以手動下載):

$ git clone https://github.com/PyMySQL/PyMySQL$ cd PyMySQL/$ python3 setup.py install

2、如果需要制定版本號,可以使用 curl 命令來安裝:

$ # X.X 為 PyMySQL 的版本號$ curl -L https://github.com/PyMySQL/PyMySQL/tarball/pymysql-X.X | tar xz$ cd PyMySQL*$ python3 setup.py install
$ # 現在你可以刪除 PyMySQL* 目錄

注意:請確保您有root許可權來安裝上述模塊。

安裝的過程中可能會出現"ImportError: No mole named setuptools"的錯誤提示,意思是你沒有安裝setuptools,你可以訪問https://pypi.python.org/pypi/setuptools找到各個系統的安裝方法。

Linux 系統安裝實例:

$ wget https://bootstrap.pypa.io/ez_setup.py$ python3 ez_setup.py

資料庫連接

連接資料庫前,請先確認以下事項:

『肆』 python 字元串處理 SQL查詢語句

>>> base = """("%(k)s" = '%(v)s')"""
>>> print ' and '.join([base % dict(k=k, v=v) for k,v in dict(name='tim', email='[email protected]').items()])

("email" = '[email protected]') and ("name" = 'tim')
>>>

另外: 強烈建議不採用拼接字元串的方式定義SQL,而是採用參數

『伍』 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中有很多字元串連接方式,今天在寫代碼,順便總結一下:

  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寫有沒有動態sql的方法

python封裝的sql驅動是最接近這玩意的東西。如果說只是想把語句分離出去,自己寫個單獨的.py然後import就好。這樣做唯一的缺點在於,原本的佔位符是不帶名字的,有些影響可讀性。如果使用各種模板、格式化合成,又有防注入上的缺失。

mybatis提供的兩個主要功能,一是參數填入,而是良好的防注入。這兩樣在python這種動態語言里只是個單純的sql驅動所做的事情。

到這份上,正解是自己寫個小函數,以實現從keyword到佔位符替換。或者直接用python-sql這種包去生成SQL語句。

閱讀全文

與python寫sql語句相關的資料

熱點內容
dvd光碟存儲漢子演算法 瀏覽:757
蘋果郵件無法連接伺服器地址 瀏覽:962
phpffmpeg轉碼 瀏覽:671
長沙好玩的解壓項目 瀏覽:144
專屬學情分析報告是什麼app 瀏覽:564
php工程部署 瀏覽:833
android全屏透明 瀏覽:736
阿里雲伺服器已開通怎麼辦 瀏覽:803
光遇為什麼登錄時伺服器已滿 瀏覽:302
PDF分析 瀏覽:484
h3c光纖全工半全工設置命令 瀏覽:143
公司法pdf下載 瀏覽:381
linuxmarkdown 瀏覽:350
華為手機怎麼多選文件夾 瀏覽:683
如何取消命令方塊指令 瀏覽:349
風翼app為什麼進不去了 瀏覽:778
im4java壓縮圖片 瀏覽:362
數據查詢網站源碼 瀏覽:150
伊克塞爾文檔怎麼進行加密 瀏覽:892
app轉賬是什麼 瀏覽:163