Python PostgreSQL - Utwórz tabelę
Możesz utworzyć nową tabelę w bazie danych w PostgreSQL za pomocą instrukcji CREATE TABLE. Wykonując to musisz podać nazwę tabeli, nazwy kolumn i ich typy danych.
Składnia
Poniżej znajduje się składnia instrukcji CREATE TABLE w PostgreSQL.
CREATE TABLE table_name(
column1 datatype,
column2 datatype,
column3 datatype,
.....
columnN datatype,
);
Przykład
Poniższy przykład tworzy tabelę o nazwie CRICKETERS w PostgreSQL.
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=#
Możesz pobrać listę tabel w bazie danych w PostgreSQL za pomocą polecenia \ dt. Po utworzeniu tabeli, jeśli możesz zweryfikować listę tabel, możesz obserwować nowo utworzoną tabelę w następujący sposób -
postgres=# \dt
List of relations
Schema | Name | Type | Owner
--------+------------+-------+----------
public | cricketers | table | postgres
(1 row)
postgres=#
W ten sam sposób możesz uzyskać opis utworzonej tabeli za pomocą \ d, jak pokazano poniżej -
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=#
Tworzenie tabeli za pomocą języka Python
Aby utworzyć tabelę za pomocą języka Python, należy wykonać instrukcję CREATE TABLE przy użyciu metody execute () obiektu Cursor z pyscopg2 .
Przykład
Poniższy przykład w języku Python tworzy tabelę z nazwiskiem pracownik.
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()
Wynik
Table created successfully........