0

OurSQL 是 Python 的 MySQL 驱动程序,更多信息请点击此处。我连接失败,我怀疑问题出在端口或主机上——这里有更多关于环境变量的详细信息,我正在使用 Ubuntu。

$ cat t.py 
import oursql
conn=oursql.connect(db='test', user='root', passwd='hello')
#, port=3306)
#, host='127.0.0.1')
conn=oursql.connect(db='test')
curs = conn.cursor(oursql.DictCursor)
curs = conn.cursor(try_plain_query=False)
a=curs.execute('SELECT * from test.pic')

print(a)
$ cat test.sql 
select * from test.pic;

$ python t.py |wc
      1       1       5    
$ mysql test < test.sql |wc
      9      78     610

WHY DIFFERENT LENGTHS??

THIS LINE WRONG (above)????
conn=oursql.connect(db='test', user='root', passwd='hello')
4

1 回答 1

3

您不能curs.execute(...)以这种方式简单地打印结果。您应该使用游标对象的fetchone(...)or fetchmany(...)orfetchall(...)方法来检索其结果。

此外,正如API 文档指出的那样,遍历游标等同于重复调用fetchone(). 因此,您的脚本可能以以下内容结尾:

curs.execute('SELECT * from test.pic')

for row in curs:
    print(row)
于 2012-05-17T00:19:54.287 回答