Tag: pyodbc

Python:将Excel文件添加到访问数据库

我正在使用pyodbc来访问一个访问(accdb)文件。 我想以编程方式将Excel工作簿添加到访问数据库中,但找不到API来执行此操作。 这是我目前的代码: import pyodbc DBFile = r'C:\Documents and Settings\IA.accdb' conn = pyodbc.connect('DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};DBQ='+DBFile) exFile = r'C:\Documents and Settings\IA_2006.xls' conn1 = pyodbc.connect('DRIVER={Microsoft Excel Driver \ (*.xls)};DBQ='+exFile,autocommit=True) cursor = conn.cursor() ####IA_1 is a table within IA.accdb cursor.execute('select * from IA_1') row = cursor.fetchone() ####For debugging, print a line if row: print row 我应该如何将Excel文件(IA_2006.xls)中的数据导入到IA.accdb中? […]

SQL循环与python和pyodbc

我想创build一个查询循环,从一个实例到下一个实例进行交互。 获取正确的数据后,我会做一些计算,并将具有特定关系的新信息写回数据库。 Example Set up Firt loop = [Aggregation Level](1, 2, 3) Second loop = Product(A, B, C) Time = (2001,2002,2003) 1. First loop Aggregation level "1", Product "A", Fetch all years (2001, 2002, 2003) Output = [ (2001,'10 pc','20 €') (2002,'8 pc','18 €') (2003,'82 pc','5000 €')] 2. Second loop Aggregation level "1", Product "B", […]

我们是否必须打开excel文件,每次我们用Python编写它?

我必须用Python编写一个Excel文件。 我使用win32com来做到这一点。 我想先打开它做一些东西,然后写在我的文件做更多的东西,再次写在文件中。 但是如果我在写入之前每次都不打开文件,我有这个错误消息: pywintypes.com_error:(-2146827864,'OLE error 0x800a01a8',None,None) 在这里我的代码: connection = pypyodbc.connect('Driver={SQL Server};' 'Server=SRVAKTCT-SQL\TCTSQL;' 'Database=K;' 'uid=Y;pwd=x') cursor = connection.cursor() for log, TA in zip(listeID,ListeTA): NomTA=TA[0] Equipe=TA[1] if log: #doing stuff results = something temps_log=results[0] print(temps_log) if temps_log is not None: temps_log=str(datetime.timedelta(seconds=int(temps_log))) excel = win32.gencache.EnsureDispatch('Excel.Application') wb = excel.Workbooks.Open('//Srvaktct-bur02/Copie de vide.xlsx') ws=wb.Worksheets(date_onglet) ws.Cells(ligne_cumul,10).Value=temps_log #wb.Close(True) #wb = excel.Workbooks.Open('//Srvaktct-bur02/Copie de […]

使用pyodbc将数据从excel导入python中的postgres

我使用pyodbc将数据从MS-Excel导入到python(2.6) PostgreSQL 。 面临的问题是: 在excel源文件中有left single quotation mark(ANSI hex code : 0x91)等字符。 现在,当它使用pyodbc导入到PostgreSQL中时,它会终止并给出错误DatabaseError: invalid byte sequence for encoding "UTF8": 0x91 。 我试过的:我decode('unicode_escape')使用了decode('unicode_escape') 。 但是,这不能完成,因为这只是删除/逃避有关人物。 备用试用:最初解码,到处都是Unicode,然后在数据库需要时进行编码。 由于手头项目的扩张,这也无法完成。 请给我build议一些方法/程序/内置函数来完成任务。

使用从Excel电子表格中提取的数据更新Pyodbc的SQL表时出错

当运行下面的Python 2.7脚本时,我得到一个pyodbc.Error 。 我使用的Excel电子表格中有4行。 import pyodbc from mmap import mmap,ACCESS_READ import xlrd import os #for row_index in range(1,sheet0.nrows): cnxn = pyodbc.connect('driver={DB};NetworkAddress=DB_Address,Port;Db=DB;uid=login;pwd=password') cursor = cnxn.cursor() book=xlrd.open_workbook("I:\\CNLD.xlsx") sheet=book.sheet_by_index(0) cell=sheet.cell(1,1) for rownum in range(sheet.nrows): print sheet.row_values(rownum) print sheet.nrows update_dyna = "insert into tempdb..cm_dyna(secsym,pvsym,min_bid_off,min_bid_offpt,min_ask_off,min_ask_offpt,max_bid_off,max_bid_offpt,max_ask_off,max_ask_offpt) values(?,?,?,?,?,?,?,?,?,?)" for row_index in range(1, sheet.nrows): row_num = row_index secsym = sheet.cell(row_index,0).value pvsym = sheet.cell(row_index,1).value […]

将Unicodestring写入Excel 2007

我正在使用pyodbc连接到MS SQL服务器。 此外,我正在尝试使用openpyxl写入Excel 2007/10 .xlsx文件。 这是我的代码(Python 2.7): import pyodbc from openpyxl import Workbook cnxn = pyodbc.connect(host = 'xxx',database='yyy',user='zzz',password='ppp') cursor = cnxn.cursor() sql = "SELECT TOP 10 [customer clientcode] AS Customer, \ [customer dchl] AS DChl, \ [customer name] AS Name, \ … [name3] AS [name 3] \ FROM mydb \ WHERE [customer dchl] = '03' […]