首页 文章

在尝试插入之前查找数据库中的现有条目

提问于
浏览
1

我目前正在使用Access 2013.我已经 Build 了一个数据库,围绕提交作业的申请人 . 数据库的设置使得一个人可以申请许多不同的工作,当同一个人通过我们的网站申请工作(使用JotForms)时,它会自动更新数据库 .

我有一个Python脚本从更新数据库的电子邮件中提取申请人提交信息 . 我遇到的问题是,在数据库中,我将申请人的主电子邮件设置为“无重复”,因此不允许同一个人申请许多不同的工作,因为Python脚本试图在其中创建新记录数据库导致错误 .

在我的Access表单(VBA)或Python中,我需要编写什么来告诉我的数据库主要电子邮件是否相同只在应用于与主要电子邮件相关的表的位置中创建新记录?

表:

tblPerson_Information   tblPosition_Applied_for
Personal_ID  (PK)       Position_ID
First_Name              Position_Personal_ID (FK)
Last_Name               Date_of_Submission
Clearance_Type
Primary_Phone
Primary_email
Education_Level

1 回答

  • 1

    只需在[tblPerson_Information]表中查找电子邮件地址:

    primary_email = 'gord@example.com'  # test data
    
    crsr = conn.cursor()    
    sql = """\
    SELECT Personal_ID FROM tblPerson_Information WHERE Primary_email=?
    """
    crsr.execute(sql, (primary_email))
    row = crsr.fetchone()
    if row is not None:
        personal_id = row[0]
        print('Email found: tblPerson_Information.Personal_ID = {0}'.format(personal_id))
    else:
        print('Email not found in tblPerson_Information')
    

相关问题