Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 2

----------------Creation base

facturation-------------------------------------------------

CREATE DATABASE Facturation_2023;

----------------------------------Table Client
------------------------------------------

CREATE TABLE Client


(
CodeClt Varchar(5) NOT NULL PRIMARY KEY,
NomClt Varchar (20) NOT NULL,
PreClt Varchar (20) NOT NULL,
TelClt Varchar(10) NOT NULL,
Region Varchar(30) NOT NULL
);
---------------------------------Table catagorie
-------------------------------------------
CREATE TABLE Categorie
(

CodeCat Varchar(5) NOT NULL,


LibCat Varchar(20) NOT NULL,
TVA Enum ('12%','18%','27%') NOT NULL,
CONSTRAINT pk_cat PRIMARY KEY(CodeCat)
);

----------------------------Table article
------------------------------------------------
CREATE TABLE Article
(
CodeArt Varchar(5) NOT NULL PRIMARY KEY,
LibArt Varchar (20) NOT NULL,
PA Decimal (6,3) NOT NULL ,
PV Decimal (7,3) NOT NULL ,
QteStk int DEFAULT 0 NOT NULL,
CodeCat Varchar (5) NOT NULL ,
CONSTRAINT ck_PA CHECK (PA>0),
CONSTRAINT ck_PV CHECK (PV>=PA),
CONSTRAINT ck_STK CHECK (QteStk>=0),
CONSTRAINT fk_Art FOREIGN KEY(CodeCat) REFERENCES Categorie (CodeCat) ON
DELETE CASCADE ON UPDATE CASCADE
);
--------------------------------Table
facture-------------------------------------------------
CREATE TABLE Facture
(
NumFact Int(10) UNSIGNED ZEROFILL AUTO_INCREMENT NOT NULL,
DateFact DATETIME NOT NULL,
CodeClt Varchar(5) NOT NULL,
CONSTRAINT pk_Fact PRIMARY KEY(NumFact, DateFact),
CONSTRAINT fk_Clt FOREIGN KEY (CodeClt) REFERENCES Client (CodeClt)ON DELETE
CASCADE ON UPDATE CASCADE
);
-------------------------------Table
cat�gorie----------------------------------------------
CREATE TABLE Commande
(
NumFact Int(10) UNSIGNED ZEROFILL NOT NULL,
CodeArt Varchar(5) NOT NULL,
QteAchat Int DEFAULT 1 NOT NULL CHECK (QteAchat >=1),
PRIMARY KEY(NumFact, CodeArt),
FOREIGN KEY (NumFact) REFERENCES Facture(NumFact) ON DELETE CASCADE ON UPDATE
CASCADE,
FOREIGN KEY (CodeArt) REFERENCES Article(CodeArt) ON DELETE CASCADE ON UPDATE
CASCADE
);

You might also like