溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

asp后段調(diào)用python的方法

發(fā)布時間:2020-08-14 11:30:17 來源:億速云 閱讀:148 作者:小新 欄目:編程語言

小編給大家分享一下asp后段調(diào)用python的方法,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

在ASP中使用Python腳本:

1.首先安裝好Active Python,它自帶了win32擴展,省得自己裝了;

2.按照Active的附帶文檔說明,在%Python_home%/lib/site_packages/win32comext/axscript/client/目錄中找到pyscript.py,雙擊運行之,此步驟在IIS中安裝Python解釋引擎;

3.新建一個asp文件,文件頭用<%@ LANGUAGE = Python %>,告訴IIS此文件采用Python腳本;

4.剩下的就是按python語法編程了。

5.例子:訪問Access:

<%@ LANGUAGE = Python %>
<!--#include file="pyDB4Jet.asp"-->
<%
#創(chuàng)建數(shù)據(jù)訪問類的實例
myax=Cdb4Jet()
調(diào)用數(shù)據(jù)訪問類的查詢方法,返回結(jié)果賦給rs
rs=myax.query('select * from [user]')
#以下這段注掉的代碼用來遍歷打印取回來數(shù)據(jù)的字段
#flds_dict={}
#for x in range(rs.Fields.Count):
# flds_dict[x]=rs.Fields.Item(x).Name
# Response.write(flds_dict[x] + "<br>")
#遍歷取回來的數(shù)據(jù)
while not myax.rs.EOF:
#把每行的第三個字段值輸出(字段序號從0開始)
Response.write(rs.Fields[2].Value+"<BR>")
#移動到下一行
myax.rs.MoveNext()
#重新移回第一行
myax.rs.MoveFirst()
#再次遍歷
while not myax.rs.EOF:
#輸出每行的第二個字段值
Response.write(rs.Fields[1].Value+"<br>")
#移動到下一行
myax.rs.MoveNext()
%>

比較遺憾的是在Python中訪問Recordset時我不知道怎么用字段名,只會用字段序號。

另外一個要注意的是訪問access的表時必須用“[]”括起來。

6.上例中用到的access訪問類:

<%
# -*-coding:UTF-8-*- #這一句告訴python用UTF-8編碼
# COMMENT: Python的ACCESS訪問模塊
#導(dǎo)入win32com模塊
import win32com
#數(shù)據(jù)訪問類定義
class Cdb4Jet:
#構(gòu)造函數(shù),python的構(gòu)造函數(shù)不同于C++/C#或Java的構(gòu)造函數(shù),在執(zhí)行到__init__方法時,實例已經(jīng)存在
def __init__(self):
#win32com.client.Dispatch用于創(chuàng)建COM對象
#創(chuàng)建ADO的Connection數(shù)據(jù)連接對象
self.conn=win32com.client.Dispatch(r'ADODB.Connection')
#DSN保存數(shù)據(jù)庫的訪問連接串
self.DSN='PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=E:\wwwroot\csip\#news.mdb;'
#打開數(shù)據(jù)庫
self.conn.Open(self.DSN)
#創(chuàng)建ADO的Recordset數(shù)據(jù)集對象
self.rs=win32com.client.Dispatch(r'ADODB.Recordset')
#定義查詢方法
def query(self,sql):
#執(zhí)行Recordset對象的Open方法,從數(shù)據(jù)庫取回數(shù)據(jù)集
self.rs.Open(sql,self.conn,1,1)
#返回數(shù)據(jù)集給調(diào)用者
return self.rs
#定義非查詢方法
def execute(self,sql):
#直接調(diào)用Connection對象的execute方法執(zhí)行sql語句,并把執(zhí)行結(jié)果返回給調(diào)用者
return self.conn.execute(sql)
%>

以上是asp后段調(diào)用python的方法的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI