Python SQLite - Criar Tabela

Usando a instrução SQLite CREATE TABLE, você pode criar uma tabela em um banco de dados.

Sintaxe

A seguir está a sintaxe para criar uma tabela no banco de dados SQLite -

CREATE TABLE database_name.table_name(
   column1 datatype PRIMARY KEY(one or more columns),
   column2 datatype,
   column3 datatype,
   .....
   columnN datatype
);

Exemplo

A consulta / instrução SQLite seguinte cria uma tabela com o nome CRICKETERS no banco de dados SQLite -

sqlite> CREATE TABLE CRICKETERS (
   First_Name VARCHAR(255),
   Last_Name VARCHAR(255),
   Age int,
   Place_Of_Birth VARCHAR(255),
   Country VARCHAR(255)
);
sqlite>

Vamos criar mais uma tabela OdiStats descrevendo as estatísticas de críquete de um dia de cada jogador na mesa CRICKETERS.

sqlite> CREATE TABLE ODIStats (
   First_Name VARCHAR(255),
   Matches INT,
   Runs INT,
   AVG FLOAT,
   Centuries INT,
   HalfCenturies INT 
);
sqlite>

Você pode obter a lista de tabelas em um banco de dados no banco de dados SQLite usando o .tablescomando. Depois de criar uma tabela, se você pode verificar a lista de tabelas, você pode observar a tabela recém-criada nela como -

sqlite> . tables
CRICKETERS ODIStats
sqlite>

Criação de uma tabela usando Python

O objeto Cursor contém todos os métodos para executar quires e buscar dados, etc. O método cursor da classe de conexão retorna um objeto cursor.

Portanto, para criar uma tabela no banco de dados SQLite usando python -

  • Estabeleça conexão com um banco de dados usando o método connect ().

  • Crie um objeto cursor invocando o método cursor () no objeto de conexão criado acima.

  • Agora execute a instrução CREATE TABLE usando o método execute () da classe Cursor.

Exemplo

O programa Python a seguir cria uma tabela chamada Employee no SQLite3 -

import sqlite3
#Connecting to sqlite
conn = sqlite3.connect('example.db')

#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........")

#Commit your changes in the database
conn.commit()

#Closing the connection
conn.close()

Resultado

Table created successfully........