In [10]:
#importando o sqlite
import sqlite3
import random
import datetime
import time
import matplotlib.pyplot as plt
%matplotlib notebook
#criando uma conexão
conn = sqlite3.connect('dsa.db')
#criando um cursor
c = conn.cursor()
#Função para criar tabela
def create_table():
c.execute('CREATE TABLE IF NOT EXISTS produtos (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, date TEXT,'\
'prod_name TEXT,valor REAL )')
#Função para inserir uma linha
def data_insert():
c.execute("INSERT INTO produtos VALUES(10,'2017-09-21 09:32:11','Teclado',90)")
print("Dados inseridos")
conn.commit()
c.close()
conn.close()
#função para inserir no banco com variável
def data_insert_var():
new_date= datetime.datetime.now()
new_prod_name = "monitor"
new_valor = random.randrange(50,100)
c.execute("INSERT INTO produtos (date, prod_name, valor ) VALUES(?,?,?)",(new_date,new_prod_name, new_valor))
print("Dados inseridos com sucesso")
conn.commit()
#função para leitura
def leitura_todos_dados():
c.execute("SELECT * FROM produtos")
for linha in c.fetchall():
print(linha)
#leitura de registro específicos
def leitura_registros():
c.execute("SELECT * FROM produtos WHERE valor > 80.0")
for linha in c.fetchall():
print(linha)
#leitura de coluna específica
def leitura_colunas():
c.execute("SELECT * FROM produtos")
for linha in c.fetchall():
print(linha[3])
#update
def atualiza_dados():
c.execute("UPDATE produtos SET valor = 70.0 WHERE valor > 80.0")
conn.commit()
#delete
def remove_dados():
c.execute("DELETE FROM produtos WHERE valor < 70.0")
conn.commit()
#função para criação de gráficos
def dados_grafico():
c.execute("SELECT id, valor FROM produtos")
ids=[]
valores=[]
dados= c.fetchall()
for linha in dados:
ids.append(linha[0])
valores.append(linha[1])
plt.bar(ids,valores)
plt.show()
In [3]:
#criando a tabela
create_table()
In [5]:
#inserindo dados
data_insert()
In [3]:
#gerando valores e inserindo na tabela
for i in range(10):
data_insert_var()
time.sleep(1)
In [12]:
leitura_todos_dados()
In [6]:
leitura_registros()
In [17]:
leitura_colunas()
In [16]:
atualiza_dados()
In [18]:
remove_dados()
In [19]:
leitura_colunas()
In [11]:
dados_grafico()
In [ ]:
#Encerrando a conexão
c.close()
conn.close()