Python 커넥터를 사용하여 MySQL의 테이블/데이터베이스가 이미 존재하는지 확인하는 방법은 무엇입니까?
P粉242535777
P粉242535777 2023-08-28 13:31:54
0
1
502
<p>그래서 저는 데이터베이스 이름, 테이블 이름, 테이블 구조(열 이름), 데이터 등 모든 것에 대해 사용자로부터 입력을 받아 다양한 추가, 삭제, 업데이트 및 기타 작업을 수행하는 프로그램을 만들고 싶습니다. 기능. 하지만 사용자가 입력한 테이블/데이터베이스가 이미 존재하는지 확인할 수 없습니다. 다음 코드를 사용해 보았습니다. </p> <pre class="brush:php;toolbar:false;">def create_table(): table_in_database=input('이 테이블을 생성하려는 데이터베이스의 이름을 입력하세요:') x=mysql.connect(호스트=host_name,user=user_name,password=user_password,database=table_in_database) y=x.cursor() y.fetchall()의 table_in_database인 경우: name_table=input('생성할 테이블의 이름을 입력하세요:') y.fetchall()의 name_table인 경우: print('테이블이 이미 존재합니다. 다른 이름을 사용하거나 기존 테이블을 사용하세요.') 또 다른: table_structure=tuple(input('테이블의 구조/행 이름을 입력하세요(쉼표로 구분):')) y.execute('테이블 생성 '+name_table+''+table_structure+'') print('table', name_table, '성공적으로 생성됨') x.커밋() 또 다른: print('데이터베이스', table_in_database, '존재하지 않습니다')</pre> <p>하지만 y.fetchall()을 수행하는 데 실패했기 때문에 y.fetchall()을 사용하는 대신 모든 데이터베이스를 표시하는 다른 함수 show_database()를 사용해 보았지만 NoneType 오류가 발생했습니다. 테이블/데이터베이스가 존재하는지 확인할 수 있는 방법이 있습니까? </p>
P粉242535777
P粉242535777

모든 응답(1)
P粉757432491

데이터베이스에 연결하고 쿼리를 실행하면 SHOW TABLES; 해당 데이터베이스의 모든 테이블 목록이 반환됩니다.
기준을 사용하여 검색을 구체화할 수 있습니다:

으아악

데이터베이스와 일치하도록 열 이름을 수정해야 합니다.

으아악
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿