🇩🇿 Java Enum: Algeria’s 58 Provinces with ISO Codes
java
public enum AlgeriaProvince {
ADRAR("DZ-01"),
CHLEF("DZ-02"),
LAGHOUAT("DZ-03"),
OUM_EL_BOUAGHI("DZ-04"),
BATNA("DZ-05"),
BEJAIA("DZ-06"),
BISKRA("DZ-07"),
BECHAR("DZ-08"),
BLIDA("DZ-09"),
BOUIRA("DZ-10"),
TAMANRASSET("DZ-11"),
TEBESSA("DZ-12"),
TLEMCEN("DZ-13"),
TIARET("DZ-14"),
TIZI_OUZOU("DZ-15"),
ALGIERS("DZ-16"),
DJELFA("DZ-17"),
JIJEL("DZ-18"),
SETIF("DZ-19"),
SAIDA("DZ-20"),
SKIKDA("DZ-21"),
SIDI_BEL_ABBES("DZ-22"),
ANNABA("DZ-23"),
GUELMA("DZ-24"),
CONSTANTINE("DZ-25"),
MEDEA("DZ-26"),
MOSTAGANEM("DZ-27"),
MSILA("DZ-28"),
MASCARA("DZ-29"),
OUARGLA("DZ-30"),
ORAN("DZ-31"),
EL_BAYADH("DZ-32"),
ILLIZI("DZ-33"),
BORDJ_BOU_ARRERIDJ("DZ-34"),
BOUMERDES("DZ-35"),
EL_TARF("DZ-36"),
TINDOUF("DZ-37"),
TISSEMSILT("DZ-38"),
EL_OUED("DZ-39"),
KHENCHELA("DZ-40"),
SOUK_AHRAS("DZ-41"),
TIPAZA("DZ-42"),
MILA("DZ-43"),
AIN_DEFLA("DZ-44"),
NAAMA("DZ-45"),
AIN_TEMOUCHENT("DZ-46"),
GHARDAIA("DZ-47"),
RELIZANE("DZ-48"),
TIMIMOUN("DZ-49"),
BORDJ_BADJI_MOKHTAR("DZ-50"),
OULED_DJELLAL("DZ-51"),
BENI_ABBES("DZ-52"),
IN_SALAH("DZ-53"),
IN_GUEZZAM("DZ-54"),
TOUGGOURT("DZ-55"),
DJANET("DZ-56"),
EL_MGHAIER("DZ-57"),
EL_MENIAA("DZ-58");
private final String code;
AlgeriaProvince(String code) {
this.code = code;
}
public String getCode() {
return code;
}
}
🗃️ SQL Table and Insert Statements
sql
CREATE TABLE algeria_provinces (
id SERIAL PRIMARY KEY,
name VARCHAR(64) NOT NULL,
code VARCHAR(6) NOT NULL UNIQUE
);
INSERT INTO algeria_provinces (name, code) VALUES
('Adrar', 'DZ-01'),
('Chlef', 'DZ-02'),
('Laghouat', 'DZ-03'),
('Oum El Bouaghi', 'DZ-04'),
('Batna', 'DZ-05'),
('Bejaia', 'DZ-06'),
('Biskra', 'DZ-07'),
('Bechar', 'DZ-08'),
('Blida', 'DZ-09'),
('Bouira', 'DZ-10'),
('Tamanrasset', 'DZ-11'),
('Tebessa', 'DZ-12'),
('Tlemcen', 'DZ-13'),
('Tiaret', 'DZ-14'),
('Tizi Ouzou', 'DZ-15'),
('Algiers', 'DZ-16'),
('Djelfa', 'DZ-17'),
('Jijel', 'DZ-18'),
('Setif', 'DZ-19'),
('Saida', 'DZ-20'),
('Skikda', 'DZ-21'),
('Sidi Bel Abbès', 'DZ-22'),
('Annaba', 'DZ-23'),
('Guelma', 'DZ-24'),
('Constantine', 'DZ-25'),
('Medea', 'DZ-26'),
('Mostaganem', 'DZ-27'),
('M’sila', 'DZ-28'),
('Mascara', 'DZ-29'),
('Ouargla', 'DZ-30'),
('Oran', 'DZ-31'),
('El Bayadh', 'DZ-32'),
('Illizi', 'DZ-33'),
('Bordj Bou Arréridj', 'DZ-34'),
('Boumerdès', 'DZ-35'),
('El Tarf', 'DZ-36'),
('Tindouf', 'DZ-37'),
('Tissemsilt', 'DZ-38'),
('El Oued', 'DZ-39'),
('Khenchela', 'DZ-40'),
('Souk Ahras', 'DZ-41'),
('Tipaza', 'DZ-42'),
('Mila', 'DZ-43'),
('Aïn Defla', 'DZ-44'),
('Naâma', 'DZ-45'),
('Aïn Témouchent', 'DZ-46'),
('Ghardaïa', 'DZ-47'),
('Relizane', 'DZ-48'),
('Timimoun', 'DZ-49'),
('Bordj Badji Mokhtar', 'DZ-50'),
('Ouled Djellal', 'DZ-51'),
('Béni Abbès', 'DZ-52'),
('In Salah', 'DZ-53'),
('In Guezzam', 'DZ-54'),
('Touggourt', 'DZ-55'),
('Djanet', 'DZ-56'),
('El M’Ghaier', 'DZ-57'),
('El Meniaa', 'DZ-58');
✅ Summary
This implementation covers all 58 provinces (wilayas) of Algeria using official ISO 3166-2:DZ codes. It ensures consistency and international compatibility across backend systems, especially for apps using address and region filtering in Algeria.