Insert,Update,Delete

he operations are:

  1. Insert Department 60: (60, 'vlrtraining', 'kphb')
  2. Update Department 40 location: Change BOSTON to 'attava'
  3. Delete Department 20

Python

import sqlite3
import os

# --- Configuration ---
DB_FILE = 'company.db'

# --- Initial Data (for setup) ---
dept_data = [
    (10, 'ACCOUNTING', 'NEW YORK'), (20, 'RESEARCH', 'DALLAS'),
    (30, 'SALES', 'CHICAGO'), (40, 'OPERATIONS', 'BOSTON'),
    (50, 'MARKETING', 'SAN FRANCISCO')
]
emp_data = [
    # Initial 20 employee records (necessary to keep the script runnable)
    (7369, 'SMITH', 'CLERK', 7902, '1980-12-17', 800.00, None, 20), (7499, 'ALLEN', 'SALESMAN', 7698, '1981-02-20', 1600.00, 300.00, 30),
    (7521, 'WARD', 'SALESMAN', 7698, '1981-02-22', 1250.00, 500.00, 30), (7566, 'JONES', 'MANAGER', 7839, '1981-04-02', 2975.00, None, 20),
    (7654, 'MARTIN', 'SALESMAN', 7698, '1981-09-28', 1250.00, 1400.00, 30), (7698, 'BLAKE', 'MANAGER', 7839, '1981-05-01', 2850.00, None, 30),
    (7782, 'CLARK', 'MANAGER', 7839, '1981-06-09', 2450.00, None, 10), (7788, 'SCOTT', 'ANALYST', 7566, '1987-04-19', 3000.00, None, 20),
    (7839, 'KING', 'PRESIDENT', None, '1981-11-17', 5000.00, None, 10), (7844, 'TURNER', 'SALESMAN', 7698, '1981-09-08', 1500.00, 0.00, 30),
    (7876, 'ADAMS', 'CLERK', 7788, '1987-05-23', 1100.00, None, 20), (7900, 'JAMES', 'CLERK', 7698, '1981-12-03', 950.00, None, 30),
    (7902, 'FORD', 'ANALYST', 7566, '1981-12-03', 3000.00, None, 20), (7934, 'MILLER', 'CLERK', 7782, '1982-01-23', 1300.00, None, 10),
    (8001, 'JAYNE', 'SALESMAN', 7698, '1982-03-01', 1400.00, 200.00, 30), (8002, 'KELLY', 'ANALYST', 7902, '1982-03-05', 3200.00, None, 20),
    (8101, 'BROWN', 'ENGINEER', 7566, '1983-01-10', 4000.00, None, 40), (8102, 'DAVIS', 'TECHNICIAN', 7788, '1983-02-15', 3500.00, None, 40),
    (8201, 'GARCIA', 'MARKETER', 7839, '1984-06-20', 2000.00, None, 50), (8202, 'EVANS', 'SPECIALIST', 7782, '1984-07-01', 2100.00, None, 50)
]
# -----------------------------------------------------------

# Clean up previous file for a fresh start
if os.path.exists(DB_FILE):
    os.remove(DB_FILE)

# Connect to the database and get a cursor
conn = sqlite3.connect(DB_FILE)
cursor = conn.cursor()
print(f"Successfully connected to the database: {DB_FILE}")

# --- Setup: Create Tables and Insert Initial Data ---
cursor.execute('CREATE TABLE dept (deptno INTEGER PRIMARY KEY, dname TEXT NOT NULL, loc TEXT);')
cursor.execute('CREATE TABLE emp (empno INTEGER PRIMARY KEY, ename TEXT NOT NULL, job TEXT, mgr INTEGER, hiredate TEXT, sal REAL, comm REAL, deptno INTEGER, FOREIGN KEY (deptno) REFERENCES dept (deptno));')
cursor.executemany("INSERT INTO dept VALUES (?, ?, ?)", dept_data)
cursor.executemany("INSERT INTO emp VALUES (?, ?, ?, ?, ?, ?, ?, ?)", emp_data)
print("Initial tables and data inserted for setup.")

# ==========================================================
#                      DATABASE OPERATIONS
# ==========================================================

print("\nExecuting requested operations:")

# 1. Insert new record into dept table: 60, vlrtraining, kphb
NEW_DEPT_RECORD = (60, 'vlrtraining', 'kphb')
cursor.execute(
    "INSERT INTO dept VALUES (?, ?, ?)",
    NEW_DEPT_RECORD
)
print(f" -> INSERTED: Department {NEW_DEPT_RECORD[0]}")

# 2. Change dept no 40 location to attava
cursor.execute(
    "UPDATE dept SET loc = 'attava' WHERE deptno = 40"
)
print(" -> UPDATED: Department 40 location changed to 'attava'")

# 3. Delete deptno 20
cursor.execute(
    "DELETE FROM dept WHERE deptno = 20"
)
print(" -> DELETED: Department 20 removed")

# Commit all changes permanently
conn.commit()
print("All changes committed successfully.")

# ==========================================================
#                      FINAL QUERY
# ==========================================================

print("\n" + "="*50)
print("     FINAL STATE OF DEPARTMENT (dept) TABLE")
print("="*50)

# Query and display final data from the 'dept' table
cursor.execute("SELECT deptno, dname, loc FROM dept ORDER BY deptno")
dept_records = cursor.fetchall() 

Similar Posts

  • Object: Methods and properties

    đźš— Car Properties ⚙️ Car Methods đźš— Car Properties Properties are the nouns that describe a car. They are the characteristics or attributes that define a specific car’s state. Think of them as the data associated with a car object. Examples: ⚙️ Car Methods Methods are the verbs that describe what a car can do….

  • How to Use Python’s Print Function and Avoid Syntax and Indentation Errors

    1. Print Output to Console and String Manipulation Tips for the print() Function What is the print() Function? The print() function in Python is used to display output to the console. It is one of the most commonly used functions, especially for debugging and displaying results. Basic Usage Output: String Manipulation Tips for print() 1….

  • Python timedelta Explained

    Python timedelta Explained timedelta is a class in Python’s datetime module that represents a duration – the difference between two dates or times. It’s incredibly useful for date and time arithmetic. Importing timedelta python from datetime import timedelta, datetime, date Basic Syntax python timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0) Examples 1. Basic timedelta Creation python from datetime…

  • Alternation and Grouping

    Complete List of Alternation and Grouping in Python Regular Expressions Grouping Constructs Capturing Groups Pattern Description Example (…) Capturing group (abc) (?P<name>…) Named capturing group (?P<word>\w+) \1, \2, etc. Backreferences to groups (a)\1 matches “aa” (?P=name) Named backreference (?P<word>\w+) (?P=word) Non-Capturing Groups Pattern Description Example (?:…) Non-capturing group (?:abc)+ (?i:…) Case-insensitive group (?i:hello) (?s:…) DOTALL group (. matches…

  • binary files

    # Read the original image and write to a new file original_file = open(‘image.jpg’, ‘rb’) # ‘rb’ = read binary copy_file = open(‘image_copy.jpg’, ‘wb’) # ‘wb’ = write binary # Read and write in chunks to handle large files while True: chunk = original_file.read(4096) # Read 4KB at a time if not chunk: break copy_file.write(chunk)…

  • String Alignment and Padding in Python

    String Alignment and Padding in Python In Python, you can align and pad strings to make them visually consistent in output. The main methods used for this are: 1. str.ljust(width, fillchar) Left-aligns the string and fills remaining space with a specified character (default: space). Syntax: python string.ljust(width, fillchar=’ ‘) Example: python text = “Python” print(text.ljust(10)) #…

Leave a Reply

Your email address will not be published. Required fields are marked *