2017-11-03 9 views
0
cur.execute("SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE 
    TABLE_NAME LIKE [{}]".format(tableName)) 

이것은 내 코드이지만 테이블 이름이 표시되지 않습니다. 여기에 문제가있는 형식 일 수 있습니다.Python에서 cursor.execute의 sql 쿼리에 테이블 이름을 동적으로 전달하는 방법은 무엇입니까?

+0

테이블 이름이나 열 이름을 찾으십니까? TABLE을 사용할 수 있습니다. INFORMATION_SCHEMA.TABLES where TABLE_NAME LIKE % s "' – PRMoureu

+0

이미 변수에 저장되어있는 테이블의 열 이름을 원합니다. y :'SELECT column_name FROM INFORMATION_SCHEMA.columns WHERE TABLE_NAME LIKE % s ' –

+0

그래서 아래의 해답은 해결책이지만 다른 코드 부분에 오류가 발생하면 추가하거나 다른 질문을 게시하십시오 – PRMoureu

답변

1

매개 변수를 사용하십시오! 일부 데이터베이스는 %s보다는 ? 선호 할 수 있습니다

cur.execute(""" 
SELECT COLUMN_NAME 
FROM INFORMATION_SCHEMA.COLUMNS 
WHERE TABLE_NAME LIKE ?""", (tableName)) 

처럼 파이썬에서,이 보인다.

+0

일단이 구문을 사용하면 나머지 코드는 작동하지 않습니다. code'cur.execute ("" " SELECT COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS)'코드' –