나는 상대적으로 간단한 작업을하려고하는데, 열 이름과 해당 열 값을 뱉어 내고 일부 열을 필터링하여 표시되지 않도록 할 수 있습니다. 이것은 (물론 초기 연결 후) 내가 시도 할 것입니다SQLAlchemy : 결과에서 조작
는:
metadata = MetaData(engine)
users_table = Table('fusion_users', metadata, autoload=True)
s = users_table.select(users_table.c.user_name == username)
results = s.execute()
if results.rowcount != 1:
return 'Sorry, user not found.'
else:
for result in results:
for x, y in result.items()
print x, y
내가 SQLAlchemy의 (5 절)에 API 보았다 오히려 혼란스러워했다. 결과에서 '결과'는 RowProxy이지만, .items() 호출에 대한 올바른 객체를 반환하지는 않는다고 생각합니다.
의 내 테이블 구조가 너무입니다 가정 해 봅시다 :
내가 필터링하고 표시하기 위해 열 이름을 지정하려면user_id user_name user_password user_country
0 john a9fu93f39uf usa
(내가 분명히 user_password을 보여주고 싶은 그나마) -이 어떻게 달성 할 수 있습니까?
첫 번째 발췌 문장은 처음에 생각해 내고 모든 것을 반환했습니다. 두 번째 스 니펫의 경우 "ValueError : 압축 할 값이 너무 많습니다."- hrm? –
아, 여분의 열을 지정하지 않았습니다. 다시 시도해보십시오. –
TypeError : select()는 최대 2 개의 인수를 사용합니다 (주어진 4 개) >> s = users_table.select (users_table.c.user_name, users_table.c.user_location, users_table.c.user_name == username) –