Получить автоматический идентификатор в оболочке Python с помощью SQlite - PullRequest
0 голосов
/ 15 февраля 2019

Мне нужна помощь в создании автоматического идентификатора сотрудника, когда пользователь вводит другую информацию, кто-нибудь может помочь?Я не хочу, чтобы идентификатор сотрудника запрашивался для ввода пользователем, я хотел бы, чтобы он автоматически генерировался и вводился в это поле.Я также должен запрограммировать его на Python, я не могу использовать программу SQL или что-то еще.Не стесняйтесь изменять любые части кода, в данный момент это довольно хрупко, я немного возился с кодом 'rowid', пытаясь заставить его работать, и я не могу понять это, большое спасибо.

import sqlite3


def AddEmployee():
    FirstName = input("Plaese enter the
                      employee's First Name: ")
    LastName = input("Please enter the
                     employee's Last Name: ")
    DName = input("Please Enter the employee's
                  Department Area: ")
    Gender = input("Please enter the employee's
                   Gender: ")
    Phone = int(input("Please enter the
                      employee's phone number: "))
    Address1 = input("Please Enter the
                     employee's Address1: ")
    Town = input("Please Enter the employee's
                 Town: ")
    Postcode = input("Please Enter the
                     employee's Postcode: ")
    DOB = input("Please Enter the employee's
                Date of Birth: ")
    HireDate = input("Please Enter the
                     employee's Date of Employment: ")

    db = sqlite3.connect("Database.db")
    cursor = db.cursor()
    cursor.execute("INSERT INTO Employees
                   VALUES(rowid, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)",
                   (EmployeeID, FirstName, LastName, DName,
                       Gender, Phone, Address1, Town, Postcode,
                       DOB, HireDate))
    db.commit()
    cursor.close()


db = sqlite3.connect("Database.db")
cursor = db.cursor()
cursor.execute("""CREATE TABLE IF NOT 
EXISTS Employees
(EmployeeID integer PRIMARY KEY 
AUTOINCREMENT, DName integer,
FirstName text, LastName text, Gender text,                 
Phone text,
Address1 text, Town text, Postcode text,         
DOB Date,
HireDate Date)""")

cursor.execute("""CREATE TABLE IF NOT     
EXISTS Salaries
(SalaryID integer PRIMARY KEY 
AUTOINCREMENT, EmployeeID integer,
DepartmentDI integer, RegisterID integer,     
FirstName text,
LastName text, Address1 text, Town text, 
Postcode text, DOB Date,
HireDate Date, SalaryAmount integer, 
DhourlyRate integer,
DOvertimeHourlyRate integer)""")

cursor.execute("""CREATE TABLE IF NOT 
EXISTS Register
(RegisterID integer PRIMARY KEY 
AUTOINCREMENT, EmployeeID integer,
Date Date, Time Time, Present Boolean, 
HoursWorked integer,
OvertimeWorked integer)""")

cursor.execute("""CREATE TABLE IF NOT 
EXISTS Departments
(DepartmentID integer PRIMARY KEY 
AUTOINCREMENT, DName text, DQuota integer,
DHourlyRate integer, DovertimeHourlyRate 
integer)""")

db.commit()
cursor.close()
AddEmployee()

1 Ответ

0 голосов
/ 15 февраля 2019

вы можете сделать это

id = odm.SymbolField(primary_key=True)

Если у вас нет поля с первичным ключом, чем python, создайте его автоматически.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...