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()