| import sqlite3 |
| import sys |
|
|
| |
| conn = sqlite3.connect('data.db') |
| c = conn.cursor() |
|
|
| |
| c.execute(''' |
| CREATE TABLE IF NOT EXISTS records ( |
| id INTEGER PRIMARY KEY AUTOINCREMENT, |
| name TEXT NOT NULL, |
| age INTEGER, |
| phone TEXT |
| ) |
| ''') |
| conn.commit() |
|
|
| |
| def add_data(): |
| name = input("Enter Name: ") |
| age = input("Enter Age: ") |
| phone = input("Enter Phone Number: ") |
| |
| c.execute("INSERT INTO records (name, age, phone) VALUES (?, ?, ?)", (name, age, phone)) |
| conn.commit() |
| print("[β] Data added successfully.") |
|
|
| def view_data(): |
| c.execute("SELECT * FROM records") |
| rows = c.fetchall() |
| if not rows: |
| print("No data found.") |
| for row in rows: |
| print(f"ID: {row[0]}, Name: {row[1]}, Age: {row[2]}, Phone: {row[3]}") |
|
|
| def search_data(): |
| search_term = input("Enter name to search: ") |
| c.execute("SELECT * FROM records WHERE name LIKE ?", ('%' + search_term + '%',)) |
| rows = c.fetchall() |
| if rows: |
| for row in rows: |
| print(f"ID: {row[0]}, Name: {row[1]}, Age: {row[2]}, Phone: {row[3]}") |
| else: |
| print("No match found.") |
|
|
| def help_menu(): |
| print("\nOffline Data Entry Tool (CMD-based)") |
| print("Commands:") |
| print(" python main.py add β Add new record") |
| print(" python main.py view β View all records") |
| print(" python main.py search β Search by name") |
| print(" python main.py help β Show this help\n") |
|
|
| |
| if len(sys.argv) < 2: |
| help_menu() |
| elif sys.argv[1] == "add": |
| add_data() |
| elif sys.argv[1] == "view": |
| view_data() |
| elif sys.argv[1] == "search": |
| search_data() |
| else: |
| help_menu() |
|
|
| conn.close() |
|
|