Enterprise Application Development using ORM Architecture in Python Part – 3

Master Python with 70+ Hands-on Projects and Get Job-ready - Learn Python

Program 1

import myconnection as mcon
import model
class EmployeeDAO:

    def __init__(self):
        self.con = mcon.MyConnection.getConnection()
        self.cur = self.con.cursor()
       # print("Connection sucess")

    def insertEmployee(self,E):
      try:
        sql="insert into employee values('%d','%s','%s','%d')"
        value=(E.getid(),E.getname(),E.getdept(),E.getsalary())
        self.cur.execute(sql % value)
        self.con.commit()
      except Exception as obj:
          print(obj)

    def searchAll(self):
        mylist=[]
        try:
            sql="select * from employee"
            self.cur.execute(sql)
            result=self.cur.fetchall()
            for row in result:
                E1 = model.Employee()
                E1.setid(row[0])
                E1.setname(row[1])
                E1.setdept(row[2])
                E1.setsalary(row[3])
                mylist.append(E1)

            return mylist
        except Exception as obj:
            print(obj)

    def searchEmployee(self,empid):
        try:
             sql="select * from employee where eid=%d"
             self.cur.execute(sql % empid)
             if(self.cur.rowcount>0):
                result=self.cur.fetchone()
                E1=model.Employee()
                E1.setid(result[0])
                E1.setname(result[1])
                E1.setdept(result[2])
                E1.setsalary(result[3])
                return E1
             else:
                E1=None
                return E1
        except Exception as msg:
            print(msg)


    def deleteEmployee(self,empid):
        sql="delete from employee where eid=%d"
        self.cur.execute(sql %empid)
        self.con.commit()

    def updateEmployee(self,E):
        sql="update employee set ename='%s',dept='%s',salary='%d' where eid='%d'"
        value = (E.getname(), E.getdept(), E.getsalary(),E.getid())
        self.cur.execute(sql % value)
        self.con.commit()

    def __del__(self):
        self.con.close()
       # print("Connection closed")

Program 2

import myconnection as ms
import model
import employeedao as empd
ed=empd.EmployeeDAO()
mylist1=ed.searchAll()
for emp in mylist1:
    print(emp.getid(),end=" ")
    print(emp.getname(),end=" ")
    print(emp.getdept(),end=" ")
    print(emp.getsalary())


# for row in mylist:
#     E=row[0]
#     print(E.getid())
#     print(E.getname())


# E1=model.Employee()
# empid=int(input("Enter Employee ID:"))
# empname=input("Enter Employee Name for Update:")
# empdept=input("Enter Employee Department for Update:")
# empsal = int(input("Enter Employee Salary for Update:"))
# E1.setid(empid)
# E1.setname(empname)
# E1.setdept(empdept)
# E1.setsalary(empsal)
# ed=empd.EmployeeDAO()
# ed.updateEmployee(E1)
# print("Record Updated.....")



# DELETE CODE
# empid=int(input("Enter Employee ID for Delete:"))
# ed=empd.EmployeeDAO()
# E=ed.searchEmployee(empid)
# if(E==None):
#     print(".....No Record Found.....")
# else:
#     print("Emp ID:",E.getid())
#     print("Emp NAME:",E.getname())
#     print("Emp DEPT:",E.getdept())
#     print("Emp SALARY:",E.getsalary())
#     choice=input("Are you sure want delete(yes/no): ")
#     if(choice=='yes'):
#         ed.deleteEmployee(empid)
#         print("Record deleted.....")


# E1=model.Employee()
# empid=int(input("Enter Employee ID:"))
# empname=input("Enter Employee Name:")
# empdept=input("Enter Employee Department:")
# empsal = int(input("Enter Employee Salary:"))
#
# E1.setid(empid)
# E1.setname(empname)
# E1.setsalary(empsal)
# E1.setdept(empdept)
#
# ed=empd.EmployeeDAO()
# ed.insertEmployee(E1)
#
# print("Record Inserted.........")

 

Did you know we work 24x7 to provide you best tutorials
Please encourage us - write a review on Google

courses

TechVidvan Team

TechVidvan Team provides high-quality content & courses on AI, ML, Data Science, Data Engineering, Data Analytics, programming, Python, DSA, Android, Flutter, full stack web dev, MERN, and many latest technology.

Leave a Reply

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