Maison > Article > base de données > Comment utiliser MySQL pour créer une structure de table de système comptable flexible et évolutive ?
Comment utiliser MySQL pour créer une structure de table de système comptable flexible et évolutive
2.1 Table d'entreprise (entreprise)
La table d'entreprise est utilisée pour stocker les informations de base de l'entreprise, y compris le nom de l'entreprise, l'adresse enregistrée, les coordonnées, etc.
CREATE TABLE société (
id INT PRIMARY KEY AUTO_INCREMENT,
nom VARCHAR(100),
adresse VARCHAR(200),
téléphone VARCHAR(20),
...
);
2.2 Table de département (département)
La table des départements est utilisée pour stocker les informations sur les départements de l'entreprise. Chaque département a un numéro de département unique comme clé primaire et comprend également des champs tels que le nom du département et l'affiliation à l'entreprise.
CREATE TABLE département (
id INT PRIMARY KEY AUTO_INCREMENT,
nom VARCHAR(100),
company_id INT,
FOREIGN KEY (company_id) REFERENCES company(id),
...
);
2.3 table des employés (employé )
La table des employés est utilisée pour stocker les informations sur les employés de l'entreprise, y compris le nom de l'employé, le numéro de poste, le service, etc.
CREATE TABLE employé (
id INT PRIMARY KEY AUTO_INCREMENT,
nom VARCHAR(100),
emp_number VARCHAR(20),
Department_id INT,
FOREIGN KEY (department_id) REFERENCES Department(id),
...
);
2.4 Table de compte (compte)
La table de compte est utilisée pour stocker les informations de compte de l'entreprise. Chaque compte a un numéro de compte unique comme clé primaire et comprend également des champs tels que le nom du compte, la société à laquelle il appartient.
CREATE TABLE compte (
numéro_compte VARCHAR(20) PRIMARY KEY,
nom VARCHAR(100),
company_id INT,
FOREIGN KEY (company_id) REFERENCES company(id),
...
);
2.5 Table des transactions (transaction)
La table des transactions est utilisée pour stocker les enregistrements de transactions d'entreprise. Chaque transaction a un numéro de transaction unique comme clé primaire et comprend des champs tels que la date de la transaction, le montant de la transaction et le type de transaction.
CREATE TABLE transaction (
id INT PRIMARY KEY AUTO_INCREMENT,
transaction_number VARCHAR(20) UNIQUE,
transaction_date DATE,
montant DECIMAL(10, 2),
type VARCHAR(20),
...
);
2.6 Tableau des transactions du compte (account_transaction)
Le tableau des transactions du compte permet d'enregistrer les informations du compte correspondant à chaque transaction.
CREATE TABLE account_transaction (
id INT PRIMARY KEY AUTO_INCREMENT,
account_number VARCHAR(20),
transaction_id INT,
montant DECIMAL(10, 2),
FOREIGN KEY (account_number) REFERENCES account(account_number),
FOREIGN KEY (transaction _id ) RÉFÉRENCES transaction(id),
...
);
3.1 Interroger la liste des employés d'un certain service
SELECT e.name, e.emp_number, d.name AS Department_name
FROM employe e
JOIN département d ON e.department_id = d.id
WHERE d.id =
3.2 Interroger l'enregistrement de transaction d'un compte
SELECT t.transaction_number, t.transaction_date, t.amount, t. tapez
FROM transaction t
JOIN account_transaction at ON t.id = at.transaction_id
JOIN account a ON at.account_number = a.account_number
WHERE a.account_number =
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!