Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python을 사용하여 존재하지 않는 테이블을 삭제하는 경우 오류가 발생하지 않도록 하려면 어떻게 해야 합니까?

<시간/>

데이터베이스에 실제로 존재하지 않는 테이블을 삭제하는 시나리오가 있을 수 있습니다. 데이터베이스에서 테이블을 삭제하는 명령을 실행하는 동안 데이터베이스에 존재하지 않는 잘못된 테이블 이름을 제공할 수 있습니다. 또 다른 가능성은 데이터베이스에 액세스할 수 있는 다른 사람이 이미 삭제한 테이블을 삭제하는 것입니다. 이 시나리오에서는 삭제하려는 테이블이 없기 때문에 명령을 실행하는 동안 오류가 발생합니다.

이 오류는 테이블이 있는지 확인한 다음 삭제하면 피할 수 있습니다. 테이블이 없으면 해당 테이블을 삭제하라는 명령이 오류 없이 실행되지 않습니다.

IF EXISTS 문은 삭제하려는 테이블이 있는지 여부를 확인하는 데 사용됩니다.

구문

DROP TABLE IF EXISTS table_name

위의 문장은 테이블이 존재하는 경우에만 테이블 삭제 작업을 수행하고, 그렇지 않은 경우 아무런 조치를 취하지 않으므로 오류 발생을 방지합니다.

python에서 MySQL을 사용하여 데이터베이스에 존재하는지 확인 후 테이블을 삭제하는 단계

  • MySQL 커넥터 가져오기

  • connect()를 사용하여 커넥터와 연결 설정

  • cursor() 메소드를 사용하여 커서 객체 생성

  • 적절한 mysql 문을 사용하여 쿼리 생성

  • execute() 메서드를 사용하여 SQL 쿼리 실행

  • 연결을 끊다

예시

데이터베이스에서 테이블을 삭제해야 하지만 그 전에 테이블이 존재하는지 여부를 확인해야 한다고 가정합니다.

import mysql.connector
db=mysql.connector.connect(host="your host", user="your username", password="your
password",database="database_name")

cursor=db.cursor()

query="DROP TABLE IF EXISTS Employees "
cursor.execute(query)
print("TABLE DROPED..")

db.close()

위의 코드는 데이터베이스에서 "Employees" 테이블이 존재하는 경우 이를 삭제합니다. 그렇지 않고 테이블이 존재하지 않으면 오류가 발생하지 않습니다.

출력

TABLE DROPED..