我正在用Python为老板创建一个库存系统,是否应该将库存信息存储在SQLite数据库中?

时间:2018-12-19 21:33:04

标签: python sqlite class inventory-management

我已经开始用Python为老板创建一个库存系统。我的前端GUI大多数都已完成,并且对后端有疑问。

我应该如何存储信息?

该程序将位于Dropbox文件夹中,多个人可以一次访问该文件夹。我应该使用SQLite数据库,并执行“添加库存”之类的功能时,打开连接,执行更改并关闭连接吗?这会允许多个用户一次打开库存吗?有更好的方法来解决这个问题吗?

库存物品不多。使用python对象和对象方法来存储和操作信息会更好吗?

1 个答案:

答案 0 :(得分:1)

您可以使用Python轻松操作sqlite数据库。

https://docs.python.org/3/library/sqlite3.html

import sqlite3 as sql

class SQLManiuplator:
  def __init__(self, fp=None):
    path = fp
    if not fp:
      path = "example.db"
    self.path = path

  def add_item_to_inventorytable(self, item):
    with sql.connect(self.path) as conn: # close automatically
        c = conn.cursor()
        # Use '?' substitution to sanitize inputs per sqlite3 docs
        c.execute('''
        INSERT INTO inventory VALUES (?)''', item)
        c.commit()

  # More CRUD functions

您可以使用此模式构建漂亮的CRUD api,并将操作映射到GUI。从设计的角度来看,然后由您决定是否愿意对用户公开哪些操作。例如,我不认为您希望向用户提供CREATE TABLE,所以我没有包括在内。 (但这意味着您必须手动创建表并定义其中存在的列。)

您已经说过,这将是一个非常轻量级的库存系统,但毋庸置疑,在企业范围内,此解决方案是输家。