kdrug-inventory-system/dev_scripts/test_db.py
시골약사 ad9ac396e2 chore: 개발 파일 정리 및 구조화
- 개발/테스트 스크립트를 dev_scripts/ 폴더로 이동
- 스크린샷을 screenshots/ 폴더로 이동
- 백업 파일 보존 (.backup)
- 처방 관련 추가 스크립트 포함

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-02-18 04:44:48 +00:00

46 lines
1.4 KiB
Python

import sqlite3
import json
conn = sqlite3.connect('database/kdrug.db')
conn.row_factory = sqlite3.Row
cursor = conn.cursor()
cursor.execute("""
SELECT
pr.receipt_id,
pr.receipt_date,
pr.receipt_no,
pr.total_amount,
pr.source_file,
pr.created_at,
s.name as supplier_name,
s.supplier_id,
COUNT(prl.line_id) as line_count,
SUM(prl.quantity_g) as total_quantity
FROM purchase_receipts pr
JOIN suppliers s ON pr.supplier_id = s.supplier_id
LEFT JOIN purchase_receipt_lines prl ON pr.receipt_id = prl.receipt_id
GROUP BY pr.receipt_id
LIMIT 1
""")
row = cursor.fetchone()
if row:
print("Row keys:", row.keys())
receipt = dict(row)
for key, value in receipt.items():
print(f"{key}: {value} (type: {type(value).__name__})")
# 타입 변환 시도
if isinstance(receipt.get('receipt_date'), bytes):
receipt['receipt_date'] = receipt['receipt_date'].decode('utf-8')
elif receipt.get('receipt_date'):
receipt['receipt_date'] = str(receipt['receipt_date'])
if isinstance(receipt.get('created_at'), bytes):
receipt['created_at'] = receipt['created_at'].decode('utf-8')
elif receipt.get('created_at'):
receipt['created_at'] = str(receipt['created_at'])
print("\nAfter conversion:")
print(json.dumps(receipt, indent=2))