Python MySQL-테이블 생성

CREATE TABLE 문은 MYSQL 데이터베이스에 테이블을 생성하는 데 사용됩니다. 여기에서 테이블의 이름과 각 열의 정의 (이름 및 데이터 유형)를 지정해야합니다.

통사론

다음은 MySQL에서 테이블을 생성하는 구문입니다-

CREATE TABLE table_name(
   column1 datatype,
   column2 datatype,
   column3 datatype,
   .....
   columnN datatype,
);

다음 쿼리는 MySQL에서 FIRST_NAME, LAST_NAME, AGE, SEX 및 INCOME의 5 개 열이있는 EMPLOYEE라는 테이블을 만듭니다.

mysql> CREATE TABLE EMPLOYEE(
   FIRST_NAME CHAR(20) NOT NULL,
   LAST_NAME CHAR(20),
   AGE INT,
   SEX CHAR(1),
   INCOME FLOAT);
Query OK, 0 rows affected (0.42 sec)

DESC 문은 지정된 테이블에 대한 설명을 제공합니다. 이것을 사용하여 아래 표시된 것처럼 테이블이 생성되었는지 여부를 확인할 수 있습니다.

mysql> Desc Employee;
+------------+----------+------+-----+---------+-------+
| Field      | Type     | Null | Key | Default | Extra |
+------------+----------+------+-----+---------+-------+
| FIRST_NAME | char(20) | NO   |     | NULL    |       |
| LAST_NAME  | char(20) | YES  |     | NULL    |       |
| AGE        | int(11)  | YES  |     | NULL    |       |
| SEX        | char(1)  | YES  |     | NULL    |       |  
| INCOME     | float    | YES  |     | NULL    |       |
+------------+----------+------+-----+---------+-------+
5 rows in set (0.07 sec)

Python을 사용하여 MySQL에서 테이블 생성

execute () (커서 객체에서 호출 됨)라는 메서드는 두 개의 변수를받습니다.

  • 실행할 쿼리를 나타내는 문자열 값입니다.

  • 쿼리의 매개 변수 (플레이스 홀더의 값)를 나타내는 튜플, 목록 또는 사전 일 수있는 선택적 args 매개 변수입니다.

쿼리의 영향을받는 행 수를 나타내는 정수 값을 반환합니다.

데이터베이스 연결이 설정되면 CREATE TABLE 쿼리를 execute() 방법.

간단히 말해서, 파이썬을 사용하여 테이블을 생성하려면-

  • 수입 mysql.connector 꾸러미.

  • 다음을 사용하여 연결 개체를 만듭니다. mysql.connector.connect() 사용자 이름, 암호, 호스트 (선택적 기본값 : localhost) 및 데이터베이스 (선택적)를 매개 변수로 전달합니다.

  • 다음을 호출하여 커서 개체를 만듭니다. cursor() 위에서 만든 연결 개체에 대한 메서드.

  • 그런 다음 CREATE TABLE 문을 매개 변수로 전달하여execute() 방법.

다음 예제는 Employee mydb 데이터베이스에서.

import mysql.connector

#establishing the connection
conn = mysql.connector.connect(
   user='root', password='password', host='127.0.0.1', database='mydb'
)

#Creating a cursor object using the cursor() method
cursor = conn.cursor()

#Dropping EMPLOYEE table if already exists.
cursor.execute("DROP TABLE IF EXISTS EMPLOYEE")

#Creating table as per requirement
sql ='''CREATE TABLE EMPLOYEE(
   FIRST_NAME CHAR(20) NOT NULL,
   LAST_NAME CHAR(20),
   AGE INT,
   SEX CHAR(1),
   INCOME FLOAT
)'''
cursor.execute(sql)

#Closing the connection
conn.close()