Python PostgreSQL - Crear tabla
Puede crear una nueva tabla en una base de datos en PostgreSQL usando la declaración CREATE TABLE. Al ejecutar esto, debe especificar el nombre de la tabla, los nombres de las columnas y sus tipos de datos.
Sintaxis
A continuación se muestra la sintaxis de la declaración CREATE TABLE en PostgreSQL.
CREATE TABLE table_name(
column1 datatype,
column2 datatype,
column3 datatype,
.....
columnN datatype,
);
Ejemplo
El siguiente ejemplo crea una tabla con el nombre CRICKETERS en 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=#
Puede obtener la lista de tablas en una base de datos en PostgreSQL usando el comando \ dt. Después de crear una tabla, si puede verificar la lista de tablas, puede observar la tabla recién creada en ella de la siguiente manera:
postgres=# \dt
List of relations
Schema | Name | Type | Owner
--------+------------+-------+----------
public | cricketers | table | postgres
(1 row)
postgres=#
De la misma manera, puede obtener la descripción de la tabla creada usando \ d como se muestra a continuación:
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=#
Creando una tabla usando Python
Para crear una tabla usando Python, necesita ejecutar la instrucción CREATE TABLE usando el método execute () del Cursor de pyscopg2 .
Ejemplo
El siguiente ejemplo de Python crea una tabla con el nombre empleado.
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()
Salida
Table created successfully........