PythonPostgreSQL-テーブルの作成
CREATE TABLEステートメントを使用して、PostgreSQLのデータベースに新しいテーブルを作成できます。これを実行するときに、テーブルの名前、列名、およびそれらのデータ型を指定する必要があります。
構文
以下は、PostgreSQLのCREATETABLEステートメントの構文です。
CREATE TABLE table_name(
column1 datatype,
column2 datatype,
column3 datatype,
.....
columnN datatype,
);
例
次の例では、PostgreSQLでCRICKETERSという名前のテーブルを作成します。
postgres=# CREATE TABLE CRICKETERS (
First_Name VARCHAR(255),
Last_Name VARCHAR(255),
Age INT,
Place_Of_Birth VARCHAR(255),
Country VARCHAR(255)
);
CREATE TABLE
postgres=#
\ dtコマンドを使用して、PostgreSQLのデータベース内のテーブルのリストを取得できます。テーブルを作成した後、テーブルのリストを確認できれば、次のように新しく作成されたテーブルを確認できます。
postgres=# \dt
List of relations
Schema | Name | Type | Owner
--------+------------+-------+----------
public | cricketers | table | postgres
(1 row)
postgres=#
同様に、以下に示すように、\ dを使用して作成されたテーブルの説明を取得できます。
postgres=# \d cricketers
Table "public.cricketers"
Column | Type | Collation | Nullable | Default
----------------+------------------------+-----------+----------+---------
first_name | character varying(255) | | |
last_name | character varying(255) | | |
age | integer | | |
place_of_birth | character varying(255) | | |
country | character varying(255) | | |
postgres=#
Pythonを使用してテーブルを作成する
Pythonを使用してテーブルを作成するには、pyscopg2のカーソルのexecute()メソッドを使用してCREATETABLEステートメントを実行する必要があります。
例
次のPythonの例では、employeeという名前のテーブルを作成します。
import psycopg2
#Establishing the connection
conn = psycopg2.connect(
database="mydb", user='postgres', password='password', host='127.0.0.1', port= '5432'
)
#Creating a cursor object using the cursor() method
cursor = conn.cursor()
#Doping 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)
print("Table created successfully........")
#Closing the connection
conn.close()
出力
Table created successfully........