-2

我在一个名为 Employee 的 Mysql Db 中有 4 个表。表的结构如下:

Edetails( id,name,age )
Edepartment( id,name,dept )
Edesignation( id,name, design )
Esalary( id,name,basic,pf )

id 是所有表中的主键。我的问题是当用户提供员工的 id 时,我如何一次获取id、姓名、年龄、基本、pf?我已经使用 python 创建了所有表并添加了条目。为了获取我使用了下面的代码。

import MySQLdb as mdb  
con = mdb.connect('localhost', 'root', 'root', 'Employee')  
cur=con.cursor()  
x=raw_input("Enter Employee id:")  
cur.execute("Select * from Edepartment,Edesignation,Esalary,Edetails where dept.id=%s",(id))    
res=cur.fetchall()  
print res

提前致谢..

4

1 回答 1

0

fetchall()方法为您提供一组中的所有行。即使结果集包含一条记录,您仍然需要执行以下操作

import MySQLdb as mdb  
con = mdb.connect('localhost', 'root', 'root', 'Employee')  
cur=con.cursor()  
x=raw_input("Enter Employee id:")  
cur.execute("Select table1.id, table2.name from table1,table2 where dept.id=%s",(id))    

results=cur.fetchall()
for result in results:
    print 'id = %s' % result[0]
    print 'name = %s' % result[1]
于 2013-10-22T10:12:21.057 回答