1

我需要使用 python 设计一个程序,它会要求用户输入条形码。然后,使用这个条形码,它将搜索一个 mysql 以找到其对应的产品。

我对如何开始有点困惑。有人对我有什么建议吗?

4

4 回答 4

5

使用python-mysql。它是一个兼容 dbapi 的模块,可让您与数据库通信。

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

如果您想要更高级的东西,请考虑使用SQLAlchemy作为层。它可以让你做:

product = session.query(Product).filter(Product.barcode == user_input).scalar()
print product.name, product.price
于 2008-12-26T01:07:53.753 回答
1

条形码只是一系列字符(字母数字)的图形表示

因此,如果您有一种方法让用户输入此代码(条形码扫描仪),那么它只是查询 mysql 数据库以获取字符串的问题。

于 2008-12-22T22:40:49.107 回答
0

这是一个非常模棱两可的问题。根据您实际想要做的事情,您可以通过多种方式完成您想要做的事情。

您的用户将如何输入条形码?他们会使用条形码扫描仪吗?他们是否手动输入条形码编号?

这是要在台式机/笔记本电脑上运行还是要在手持设备上运行?

条形码扫描仪是存储条形码以供以后检索,还是将它们直接发送到计算机。它会通过 USB 电缆还是无线发送它们?

于 2008-12-22T23:01:49.313 回答
0

首先,将条形码输入视为普通的旧文本。

自从我使用条形码扫描仪以来已经有一段时间了,但我怀疑它们已经发生了很大的变化,旧的那些过去只是搭载键盘输入,所以从编程的角度来看,最终结果是一个字符流键盘缓冲区,无论是键入还是扫描都没有区别。

如果您的目标设备与此不同,您将需要编写一些东西来处理它,然后再进行数据库查询。

如果您有其中一种设备可以玩,请将其插入,启动记事本,开始扫描一些条形码,看看会发生什么。

于 2008-12-22T23:47:58.033 回答