2014-05-18 2 views
0

파이썬 3.4를 사용하여 SQL Server 데이터베이스에 연결하는 방법을 배우고 있습니다. pymssql을 사용하여 데이터베이스에 연결하고 있는데, 테이블에서 데이터를 선택하고 출력을 인쇄 할 때 오류가 발생합니다.왜이 큰 따옴표 오류가 print()에서 발생합니까?

이것은 모든 코드가 아닙니다. 이 코드의 첫 번째 부분은 데이터베이스에 연결하고 테이블이 없으면 데이터베이스에 테이블을 만듭니다. 이것은 성공적이었다. 연결이 설정되고 테이블이 만들어졌으며 테이블을 선택할 수 있습니다.

파이썬이 표시되어 오류가 두 번째 따옴표에
cursor.execute('SELECT id, name FROM persons WHERE salesrep=%s', 'John Doe') 
row = cursor.fetchone() 
while row: 
    print "ID=%d, Name=%s" % (row[0], row[1]) 
    row = cursor.fetchone() 

conn.close() 

:

print "ID=%d, Name=%s" % (row[0], row[1]) 

        ^

나는 SELECT 문을 테스트, 모두가 좋아 보인다 여기

문제의 코드입니다. 내가 말할 수있는 것에서 볼 때 인쇄가 좋아 보인다. 그래서 나는 무엇을 놓치고 있습니까?

답변

0

이것은 python3입니다. print은 python3의 함수입니다. 나는 내 인생을 싫어

print("ID={0}, Name={1}".format(row[0], row[1])) 
+0

: 또한

print("ID=%d, Name=%s" % (row[0], row[1])) 

, 새 문자열 형식의 구문을 사용한다 : 이것은 올바른 구문입니다. 고맙습니다. KeyError 0과 관련하여 새로운 오류가 발생했습니다. KeyError 0은 dict 오류입니다. 동일한 코드 행에서 키 오류 0이 발생하게 된 원인은 무엇입니까? – Fastidious

+0

@Fastidious, 0이라는 키가 있는지 확인하십시오. 행을 인쇄하고 키가있는 키를 확인하십시오. – sshashank124

+0

인쇄물 (행)을 가져 와서 {name ':'John Smith ','id ': 1} – Fastidious