· 4 years ago · Jan 05, 2021, 03:24 PM
1def parseCSV(filePath):
2 try:
3 # CVS Column Names
4 col_names = ['POLICY_NUMBER', 'POLICY_STATUS', 'PLAN', 'TERM', 'PPT', 'MODE', 'DOC', 'FUP', 'INSTALLMENT_PREMIUM', 'SA', 'BRANCH_NAME', 'AGENT_NAME', 'AGE',
5 'DOB', 'GENDER', 'NAME_OF_LA', 'CURRENT_DATE', 'ADDRESS_OF_POLICY_HOLDER', 'ADDRESS2_OF_POLICY_HOLDER', 'ADDRESS3_OF_POLICY_HOLDER', 'PIN',
6 'AB_SA', 'NOMINEE_NAME', 'PAID_UP_VALUE', 'BONUS', 'LOAN_ELIGIBILITY', 'AGENT_CODE', 'POLICY_HOLDER_CODE', 'SURRENDER_VALUE',
7 'LOAN_SANCTIONED_AMOUNT', 'MOBILE_NO', 'EMAIL_ID', 'NUMBER_OF_PREMIUM_DUE', 'PREMIUM_DUE_AMOUNT', 'LATE_FEE', 'POLICY_DEPOSIT',
8 'REVIVAL_AMOUNT', 'LOAN_INTEREST_OUTSTANDING', 'LAST_PREMIUM_DUE_PAID', 'LAST_PREMIUM_DUE_PAID_DATE', 'CREATED_DATE_TIME']
9 # Use Pandas to parse the CSV file
10 csvData = pd.read_csv(filePath, names=col_names, header=None)
11 mycursor.execute('DROP TABLE IF EXISTS POLICY_DATA_MOB;')
12 print("Database deleted")
13 print("=======New Database Creating =====")
14 # mycursor.execute("CREATE TABLE address(`id` INT NOT NULL AUTO_INCREMENT, first_name VARCHAR(45) NULL, last_name VARCHAR(45) NULL, address VARCHAR(45) NULL,street VARCHAR(45) NULL, state VARCHAR(45) NULL, zip VARCHAR(45) NULL,PRIMARY KEY(id))")
15 mycursor.execute("CREATE TABLE POLICY_DATA_MOB(POLICY_NUMBER INT NULL,POLICY_STATUS INT NULL, PLAN INT NULL, TERM INT NULL, PPT INT NULL, Mode VARCHAR(45) NULL, DOC VARCHAR(45) NULL,FUP VARCHAR(45) NULL,INSTALLMENT_PREMIUM VARCHAR(45) NULL,SA INT NULL,BRANCH_NAME VARCHAR(45) NULL,AGENT_NAME VARCHAR(45) NULL,AGE INT NULL, DOB VARCHAR(45) NULL, GENDER VARCHAR(45) NULL, NAME_OF_LA VARCHAR(45) NULL, CURRENT_DATE VARCHAR(45) NULL, ADDRESS_OF_POLICY_HOLDER VARCHAR(45) NULL, ADDRESS2_OF_POLICY_HOLDER VARCHAR(45) NULL, ADDRESS3_OF_POLICY_HOLDER VARCHAR(45) NULL, PIN INT NULL, AB_SA INT NULL, NOMINEE_NAME VARCHAR(45) NULL, PAID_UP_VALUE INT NULL, BONUS INT NULL, LOAN_ELIGIBILITY INT NULL, AGENT_CODE VARCHAR(45) NULL, POLICY_HOLDER_CODE INT NULL, SURRENDER_VALUE INT NULL, LOAN_SANCTIONED_AMOUNT INT NULL, MOBILE_NO INT NOT NULL, EMAIL_ID VARCHAR(45) NULL, NUMBER_OF_PREMIUM_DUE INT NULL, PREMIUM_DUE_AMOUNT INT NULL, LATE_FEE DOUBLE NULL, POLICY_DEPOSIT INT NULL, REVIVAL_AMOUNT DOUBLE NULL, LOAN_INTEREST_OUTSTANDING VARCHAR(45) NULL, LAST_PREMIUM_DUE_PAID VARCHAR(45) NULL, LAST_PREMIUM_DUE_PAID_DATE VARCHAR(45) NULL, PRIMARY KEY (MOBILE_NO))")
16 print("=======New Database CREATE=======")
17 # # Loop through the Rows
18 for i, row in csvData.iterrows():
19 sql = "INSERT INTO POLICY_DATA_MOB (POLICY_NUMBER, POLICY_STATUS, PLAN, TERM, PPT, MODE, DOC, FUP , INSTALLMENT_PREMIUM, SA, BRANCH_NAME, AGENT_NAME, AGE, DOB, GENDER, NAME_OF_LA, CURRENT_DATE, ADDRESS_OF_POLICY_HOLDER, ADDRESS2_OF_POLICY_HOLDER, ADDRESS3_OF_POLICY_HOLDER, PIN, AB_SA, NOMINEE_NAME, PAID_UP_VALUE, BONUS, LOAN_ELIGIBILITY, AGENT_CODE, POLICY_HOLDER_CODE, SURRENDER_VALUE, LOAN_SANCTIONED_AMOUNT, MOBILE_NO, EMAIL_ID, NUMBER_OF_PREMIUM_DUE, PREMIUM_DUE_AMOUNT, LATE_FEE, POLICY_DEPOSIT, REVIVAL_AMOUNT, LOAN_INTEREST_OUTSTANDING, LAST_PREMIUM_DUE_PAID, LAST_PREMIUM_DUE_PAID_DATE, CREATED_DATE_TIME) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)"
20 # value = (row['first_name'], row['last_name'], row['address'],
21 # row['street'], row['state'], str(row['zip']))
22 mycursor.execute(sql, tuple(row))
23 mydb.commit()
24 # print(i, row['first_name'], row['last_name'],
25 # row['address'], row['street'], row['state'], row['zip'])
26 except Error as e:
27 print("Error while connecting to database")