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