Uso del metodo all'utente di trovare le informazioni in un database MySQL
-
23-08-2019 - |
Domanda
Ho bisogno di progettare un programma utilizzando python che chiederà all'utente un codice a barre. Quindi, utilizzando questo codice a barre, cercherà un mysql per trovare il suo prodotto corrispondente.
Sono un po 'bloccato su come iniziare. Qualcuno ha qualche consiglio per me?
Soluzione
python-mysql . Si tratta di una modulo compatibile con dbapi che permette di parlare al database.
import MySQLdb
user_input = raw_input("Please enter barcode and press Enter button: ")
db = MySQLdb.connect(passwd="moonpie",db="thangs")
mycursor = db.cursor()
mycursor.execute("""SELECT name, price FROM Product
WHERE barcode = %s""", (user_input,))
# calls fetchone until None is returned (no more rows)
for row in iter(mycursor.fetchone, None):
print row
Se volete qualcosa di più alto livello, è consigliabile utilizzare SQLAlchemy come strato. Si potrebbe consentire di fare:
product = session.query(Product).filter(Product.barcode == user_input).scalar()
print product.name, product.price
Altri suggerimenti
Un codice a barre è semplicemente una rappresentazione grafica di una serie di caratteri (alfanumerici)
Quindi, se si dispone di un metodo per gli utenti di inserire questo codice (uno scanner di codici a barre), poi il suo solo una questione di interrogare il database mysql per la stringa di caratteri.
Questa è una domanda molto ambiguo. Che cosa si vuole si può fare in molti modi a seconda di cosa si vuole realmente fare.
Come sono i tuoi utenti andando a digitare il codice a barre? Stanno andando a utilizzare uno scanner di codici a barre? Stanno entrando manualmente i numeri di codice a barre?
È questo che va eseguito su un computer desktop / laptop o sta andando a correre su un dispositivo portatile?
E 'il codice a barre scanner di memorizzare i codici a barre per il successivo recupero o è di inviarli direttamente al computer. Sarà inviargli il presente attraverso un cavo USB o wireless?
Per cominciare, trattare l'ingresso di codici a barre, come vecchio testo normale.
E 'stato un po' di tempo da quando ho lavorato con gli scanner di codici a barre, ma dubito che hanno cambiato più di tanto, i più vecchi impiegati di spalle proprio sul input da tastiera, in modo da una prospettiva di programmazione, il risultato netto è stato un flusso di caratteri nel buffer di tastiera, sia digitati o digitalizzati fatto alcuna differenza.
Se il dispositivo si prendono di mira differisce da quello, sarà necessario scrivere qualcosa a che fare con che prima di arrivare alla query di database.
Se si dispone di uno dei dispositivi con cui giocare, la messa in funzione, avviare Blocco note, avviare la scansione alcuni codici a barre e vedere cosa succede.