#-*- coding: utf-8 -*-
__author__ = 'hero'
importpymssqlimportxml.dom.minidomimportosimportsys
curPath= os.path.abspath(os.path.dirname(__file__))
rootPath=os.path.split(curPath)[0]
sys.path.append(rootPath)classExchangeData(object):globalCONFIGTYPE_RETESTglobalCONFIGTYPE_PINGglobalCONFIGTYPE_AGETESTglobalCONFIGTYPE_IPX
CONFIGTYPE_RETEST= 'RETEST'CONFIGTYPE_PING= 'PING'CONFIGTYPE_AGETEST= 'AGETEST'CONFIGTYPE_IPX= 'IPX'
###加载数据库连接数据
defloadDBConfig(self,dbType):
xmlDoc= xml.dom.minidom.parse(os.getcwd() +'\\conf\\/DBConfig.xml'#此处路径为配置文件的路径root=xmlDoc.documentElement
sql_element=root.getElementsByTagName(dbType)[0]returnsql_elementdef __exchangeDataByDBConnection(self):
sqlInfo= self.loadDBConfig('MSSQL')
db_host= sqlInfo.getElementsByTagName('HOST')[0].firstChild.data
db_database= sqlInfo.getElementsByTagName('DATABASE')[0].firstChild.data
db_user= sqlInfo.getElementsByTagName('USERNAME')[0].firstChild.data
db_pwd= sqlInfo.getElementsByTagName('PASSWORD')[0].firstChild.data
conn= pymssql.connect(user=db_user,password=db_pwd,database=db_database,host=db_host)
conn.autocommit(True)returnconn###读取数据###
defgetDataBySql(self,sqlStr):try:
conn= self.__exchangeDataByDBConnection()if notconn:raise(NameError,'数据库连接失败')else:
cur=conn.cursor()
cur.execute(sqlStr)
resList=cur.fetchall()
conn.close()returnresListexceptException,e:print(e)raise(NameError,'数据库操作失败')###更改数据库###
defsetDataBySql(self,sqlStr):try:
conn= self.__exchangeDataByDBConnection()if notconn:raise(NameError,'数据库连接失败')returnFalseelse:
cur=conn.cursor()
cur.execute(sqlStr)
conn.commit()
conn.close()returnTrueexceptException,e:print(e)raise(NameError,'数据库操作失败')returnFalseif __name__ == '__main__':
pn= 'BYAUX-CTN0003'sqlStr= "select * from producttype where productNo = '"+pn+"'"edata=ExchangeData()
resList= edata.getDataBySql(sqlStr=sqlStr)for dataRow inresList:print(dataRow[0])