jjzjj

python - 使用 pyodbc 连接到 MS Access 2007 (.accdb) 数据库

我在Win7x64上,使用Python2.7.1x64。我正在将我在VC++中创建的应用程序移植到Python以用于教育目的。原始应用程序使用以下连接字符串连接到MSAccess2007格式的DB文件没有问题:OleDbConnection^conn=gcnewOleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;DataSource=|DataDirectory|DB.accdb");现在,当我尝试使用pyodbc和以下连接字符串在Python中连接到同一个数据库文件(这次放在C:\中)时:conn=pyodbc.connect("DR

python - 使用 pyodbc 和 SQL Server 的 SQL IN 运算符

我正在使用pyodbc查询SQLServer数据库importdatetimeimportpyodbcconn=pyodbc.connect("Driver={SQLServer};Server='dbserver',Database='db',TrustedConnection=Yes")cursor=conn.cursor()ratings=("PG-13","PG","G")st_dt=datetime(2010,1,1)end_dt=datetime(2010,12,31)cursor.execute("""Selecttitle,director,producerFrommo

python - 在 Python/Pyodbc 中查询 Teradata 的问题

我正在尝试使用PyODBC在Python中查询Teradata数据库。数据库连接正常;然而,当我尝试获取结果时,我遇到了这个错误“十进制的无效文字:u''”。请帮忙。我在RHEL6上,Python2.7.3这是代码和结果:importpyodbcsql="select*fromtable"pyodbc.pooling=Falsecnx=pyodbc.connect("DRIVER={Teradata};DBCNAME=host;DATABASE=database;AUTHENTICATION=LDAP;UID=user;PWD=password",autocommit=True,ANS

python - 在 PyOdbc 中获取表名和列名

我想从PyOdbc游标中检索完全引用的列名。例如,假设我有2个简单的表:Table_1(Id,)Table_2(Id,)我想检索连接的数据select*fromTable_1t1,Table2t2wheret1.Id=t2.Id使用pyodbc,像这样:query='select*fromTable_1t1,Table2t2wheret1.Id=t2.Id'importpyodbcconn_string=''connection=pyodbc.connect(conn_string)cursor=connection.cursor()cursor.execute(query)然后我想获

python - 如何使用 pyodbc 将 MS Access 连接到 Python

我在使用pyodbc连接Access数据库时遇到问题。我已经看到其他示例代码看起来与我的工作几乎相同:importpyodbccnxn=pyodbc.connect('DRIVER={SQLServer};SERVER=localhost;DATABASE=PYODBC.accdb;UID=me;PWD=pass')cursor=cnxn.cursor()cursor.execute("SELECTForenameFROMStudent")row=cursor.fetchone()ifrow:print(row)我的机器运行的是Windows7家庭高级版64位。我有MicrosoftO

Python 在遍历大型列表时速度很慢

我目前正在使用pyodbc从数据库中选择大量行。然后将结果复制到一个大列表,然后我试图遍历该列表。在我放弃python并尝试在C#中创建它之前,我想知道我是否做错了什么。clientItems.execute("Selectidsfromlargetablewhereyear=?",year);allIDRows=clientItemsCursor.fetchall()#takesmaybe8seconds.forclientItemrowinallIDRows:aID=str(clientItemRow[0])#Dosomethingwithstr--RemovedbecauseIw

python - PYODBC 中的函数序列错误

我正在使用pyodbc连接到数据库并从中提取某些数据。这是我的代码:con=pyodbc.connect("driver={SQLServer};server=MyServer;database=MyDatabase;trusted_connection=true")cursor=con.cursor()SQL_command="""SELECTRowID=ISNULL((SELECTTOP1RowIDFROM[MyDatabase].[admin].[MyTable]WHERE[queue]=?andprocessedISNULL),-1)"""cursor.execute(SQL_

python pyodbc : how to connect to a specific instance

我正在尝试连接到SQLServer的特定实例并从系统表中获取一些数据。正在使用此代码片段进行连接:connSqlServer=pyodbc.connect('DRIVER={SQLServerNativeClient10.0};SERVER=192.106.0.102;DATABASE=master;INSTANCE=instance1;UID=sql2008;PWD=password123;Trusted_Connection=yes')...cursorObj.execute("select*fromsys.dm_os_sys_info")row=cursorObj.fetchon

python - 如何从 pyodbc 结果行创建逗号分隔的字符串?

我有一个存储在cursor.rows中的行结果集,这些行是从pyodbc.cursor.execute命令返回的。解压缩此数据并将其放入逗号分隔字符串列表(或解压缩到自定义对象中)的最快方法是什么?目前我正在做以下事情:cursor.execute(query_str)f=open(out_file,'w')forrowincursor:f.write(','.join([str(s)forsinrow]))f.write('\n')每行需要130毫秒,这似乎是一个非常昂贵的操作。我怎样才能加快速度? 最佳答案 我会使用csv模块:

python - pyodbc 比 pypyodbc 有什么设计优势吗?

我知道pyodbc是一个较旧的项目,可能更具特色和健壮性,但它的设计(基于编译的C代码的组件)是否有任何东西使其优于纯Python实现,例如pypyodbc?我做了很多ETL工作,并且正在考虑从Linux/Jython/JDBC方法切换到Windows/Cygwin/Python/ODBC方法。 最佳答案 pyodbc相对于pypyodbc的潜在优势是:速度-参见thepypyodbcwikicomparison更保守的内存使用用Python编写的pypyodbc相对于pyodbc的潜在优势是:不太可能包含C指针问题不太可能包含内存