2013-07-08 1 views
0

"sina2013"이라는 데이터베이스가 있고 columus는 제목, 내용입니다 이제 pymssql 모듈을 사용하여 데이터를 가져오고 싶습니다. 동시에 제목을 사용합니다. txt 파일의 파일 이름으로 Content를 txt 파일의 내용으로 사용합니다. 이상한 점은 데이터베이스의 항목보다 파일 수가 적다는 것입니다. 어디서 오류가 있습니까? 내가 시도 코드는 다음과 같습니다 txt 파일의데이터를 가져올 때 pymssql (파이썬 모듈) 잃는 항목

import pymssql 
conn = pymssql.connect(...) 
cur = conn.cursor() 
cur.execute('SELECT Title,Content FROM sina2013') 
count=len(cur.fetchall()) #Will return the right number :5913 
for Title,Content in cur: 
    filename=file(str(Title)+r'.txt',r'w') 
    filename.write(Content) 
    filename.close() 
cur.close() 

수는 그것이 있어야보다 작습니다. 이유가 무엇입니까?

+0

나는 알고있다. 그러나 'Title'값은 유일하다? – iruvar

+0

중요합니까? 동일한 제목이 한 번 인출됩니까? Tommrow 나는 그것을 시험 할 것이다. – mjc

+0

은 관계형 데이터베이스의 작동 방식이 아닙니다. 동일한 'Title'값을 가진 레코드가 여러 개있는 경우 각 레코드가 처리되고 매번 같은 파일을 덮어 쓰게됩니다. – iruvar

답변

0

아마도이로 루프에 대한 귀하의 변경 :

# cursor fetchall() method returns all rows from a query 
for Title,Content in cur.fetchall(): 

는 ... 문제를 해결할 것인가?

+0

당신과 같은 코드를 시도했지만 작동하지 않습니다. 출력 번호는 여전히 있습니다. 그것보다 작아야한다. – mjc

관련 문제