python에서 sqlite3 모듈을 사용하면 열 이름을 제외한 cursor.description의 모든 요소가 없음으로 설정되므로이 튜플을 사용하여 다른 DB와 달리 쿼리 결과의 열 유형을 찾을 수 없습니다 -API 준수 모듈). pragma table_info(table_name).fetchall()
을 사용하여 열의 유형을 가져와 테이블에 대한 설명을 가져 와서 메모리에 저장하고 cursor.description의 열 이름을 해당 전체 테이블 설명과 일치시키는 유일한 방법입니까?sqlite3 및 cursor.description
5
A
답변
5
아니요, 유일한 방법은 아닙니다. 또는 하나의 행을 가져 와서 반복 실행하고 개별 열 Python 객체 및 유형을 검사 할 수도 있습니다. 값이 None (SQL 필드가 NULL 인 경우)이 아닌 한, 이는 데이터베이스 열 유형이 무엇인지에 대한 정확한 표시를 제공합니다.
sqlite3은 sqlite3_column_decltype
과 sqlite3_column_type
을 각각 한 곳에서 사용하며 어느 쪽도 파이썬 응용 프로그램에서 액세스 할 수 없으므로 사용자가 찾고있는 "직접적인"방법이 아닙니다.
1
내가 파이썬이 시도하지 않은,하지만 당신은 DDL 테이블을 만드는 데 사용하는 CREATE 포함
SELECT *
FROM sqlite_master
WHERE type = 'table';
처럼 뭔가를 시도 할 수 있습니다. DDL을 구문 분석하면 열 유형 정보를 얻을 수 있습니다. SQLITE는 열 데이터 유형의 경우 다소 모호하고 제한되지 않습니다.
관련 문제
- 1. Sqlite3 및 Xcode
- 2. SQLite3 및 System.currentTimeMillis()
- 3. Apache 및 Sqlite3 문제
- 4. 레일 및 SQLITE3 문제
- 5. SQLite3 및 "cascade"SELECTion
- 6. uitextview 및 sqlite3
- 7. sqlite3?
- 8. SQLite3 및 Ruby - 초기화되지 않은 상수 SQLite3 ... API
- 9. 레일 응용 프로그램 용 sqlite3-ruby 컴파일 및 sqlite3 패키지
- 10. SQLite3 및 결과 개수 제한
- 11. SQLite3 및 Alter table .. 이후
- 12. SQLite3 FTS4, MATCH 및 Android
- 13. SQLite3 및 암시 적 rowid의
- 14. SQLite3, FTS3 및 stop-word
- 15. sqlite3 날짜 및 간격 함수
- 16. sqlite3.OperationalError
- 17. 루프 및 문자열 in Ruby/SQLite3
- 18. Sqlite3, 아파치 사용자 및 쉬운 설치
- 19. Sqlite3 및 Apt-get 설치시 문제
- 20. 레일 및 SQLite3 : 날짜 일치하지 않음
- 21. SQLite3 도우미?
- 22. 데이터베이스는 -sqlite3
- 23. iPhone 용 Sqlite3 대안
- 24. sqlite3 파일 가져 오기
- 25. NSUserDefaults 대 sqlite3
- 26. SQLite3 구문을 어떻게 확인합니까?
- 27. 레일즈 - .sqlite3-databases 생성
- 28. qt sqlite3 전제 조건
- 29. SQLite3 열린 파일 문제
- 30. sqlite3 - stringWithUTF8String이 누수입니다!