1. 選擇編程語言和數(shù)據(jù)庫
- 編程語言:Python(易于學習,適合初學者)
- 數(shù)據(jù)庫:SQLite(輕量級,內(nèi)嵌在Python標準庫中,無需額外安裝)
2. 設計數(shù)據(jù)庫
你需要一個數(shù)據(jù)庫來存儲記賬信息,例如:
- 表名:
transacti*
- 列:
id
(自增主鍵)、date
(日期)、description
(描述)、amount
(金額)、type
(收入/支出)
3. 編寫Python腳本
3.1 導入必要的庫
import sqlite3 from datetime import datetime
3.2 創(chuàng)建或連接數(shù)據(jù)庫
def create_connection(db_file): """ 創(chuàng)建一個數(shù)據(jù)庫連接 """ conn = None try: conn = sqlite3.connect(db_file) return conn except sqlite3.Error as e: print(e) return conn def create_table(conn): """ 創(chuàng)建一個表 """ try: sql_create_transacti*_table = """CREATE TABLE IF NOT EXISTS transacti* ( id integer PRIMARY KEY, date text, description text, amount real, type text );""" cursor = conn.cursor() cursor.execute(sql_create_transacti*_table) except sqlite3.Error as e: print(e)
3.3 添加記賬條目
def add_transaction(conn, date, description, amount, type): """ 添加一條交易記錄 """ sql = ''' INSERT INTO transacti*(date,description,amount,type) VALUES(?,?,?,?) ''' cur = conn.cursor() cur.execute(sql, (date, description, amount, type)) conn.commit() return cur.lastrowid
3.4 查詢記賬條目def query_transacti*(conn): """ 查詢所有交易記錄 """ cur = conn.cursor() cur.execute("SELECT * FROM transacti*") rows = cur.fe*hall() return rows
3.5 主程序
def query_transacti*(conn): """ 查詢所有交易記錄 """ cur = conn.cursor() cur.execute("SELECT * FROM transacti*") rows = cur.fe*hall() return rows
4. 運行腳本
將上述代碼保存為一個Python文件(例如
accounting.py
),然后在命令行中運行它:python accounting.py