PythonMySQL-テーブルの作成

CREATE TABLEステートメントは、MYSQLデータベースにテーブルを作成するために使用されます。ここでは、テーブルの名前と、各列の定義(名前とデータ型)を指定する必要があります。

構文

以下は、MySQLでテーブルを作成するための構文です。

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

次のクエリは、5つの列(FIRST_NAME、LAST_NAME、AGE、SEX、およびINCOME)を持つMySQLで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() (カーソルオブジェクトで呼び出されます)2つの変数を受け入れます-

  • 実行するクエリを表す文字列値。

  • クエリのパラメーター(プレースホルダーの値)を表す、タプル、リスト、または辞書にすることができるオプションのargsパラメーター。

クエリの影響を受ける行数を表す整数値を返します。

データベース接続が確立されたら、CREATETABLEクエリをに渡すことでテーブルを作成できます。 execute() 方法。

要するに、python7minusを使用してテーブルを作成するには;

  • インポート 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()