使用python,我试图从数据库中访问文本,但当我只打印与foreach循环时,得到的结果不同
使用python,我尝试使用pyodbc连接从数据库FileMaker Pro访问文本。当我使用foreach循环时,出于某种原因,文本会打印出来。但是,当我直接打印它的时候,我想它会打印位置或其他东西。下面的代码对此进行了更好的解释:使用python,我试图从数据库中访问文本,但当我只打印与foreach循环时,得到的结果不同,python,database,pyodbc,filemaker,Python,Database,Pyodbc,Filemaker,使用python,我尝试使用pyodbc连接从数据库FileMaker Pro访问文本。当我使用foreach循环时,出于某种原因,文本会打印出来。但是,当我直接打印它的时候,我想它会打印位置或其他东西。下面的代码对此进行了更好的解释: import pyodbc connectString = "DSN=FMODBC32;UID=...;PWD=..." connection = pyodbc.connect(connectString) cursor = connection.cu
import pyodbc
connectString = "DSN=FMODBC32;UID=...;PWD=..."
connection = pyodbc.connect(connectString)
cursor = connection.cursor()
param = cursor.execute("select Parameters from Info")
## Parameters = fieldName in the database, Info = tableName in database
print(param)
## This prints: <pyodbc.Cursor object at 0x08930C20> (Is this the location?)
for info in param:
print(info)
## This prints the actual text I need, not the location
我只想执行printparam,而不是整个foreach循环来获取所需的文本。有什么建议吗
print(param)
仅打印参数对象
你应该加上
cursor = connection.cursor()
cursor.execute("select Parameters from Info")
param = cursor.fetchall()
和printparam应该是正常的。请参阅您的第一次打印仅打印光标对象。它似乎没有实现_repr _;,所以您只需要获取类名及其在内存中的位置。然后,for循环将游标迭代执行结果,这些打印显示返回的结果。简而言之,您正在打印不同的内容。