OpenLLM-France/wikimedia huggingface dataset:
# Programmation SQL/Mots réservés

* Introduction
** Installation d'interfaces
* Les bases de données
* Quelques définitions
* Langage de définition de données
* Langage de manipulation de données
* Langage de contrôle de données
* Exemples d'applications
* Mots réservés
* Introduction
** Installation d'interfaces
* Les bases de données
* Quelques définitions
* Langage de définition de données
* Langage de manipulation de données
* Langage de contrôle de données
* Exemples d'applications
* Mots réservés
[ Modifier le sommaire ]

## Mots usuels

| Commande | Fonction |
| select | Mode sélection |
| from | Choisit les tables |
| where | Filtre le résultat |
| join | Joint des tables |
| natural join | Jointure naturelle |
| inner join | Jointure interne |
| full outer join | Jointure externe |
| left join | Jointure à gauche |
| right join | Jointure à droite |
| union | union |
| intersect | intersection |
| as | Renomme les colonnes du résultat |
| distinct | Filtre les doubles |
| between... and | Filtre dans une plage de nombre |
| in, any | Applique à certaines valeurs |
| all | Applique à toutes les valeurs |
| exists | Applique aux valeurs qui existent |
| like... % | Désigne une chaîne de caractère |
| like... _ | Représente un caractère non vide |
| not | Exclut |
| having | Inclut |
| group by | Groupe dans le résultat |
| order by | Trie le résultat |
| top | Limite le résultat en dessous d'une ligne |
| limit... offset | Limite le résultat dans une plage de lignes |
| count | Compte le résultat |
| sum | somme |
| avg | moyenne |
| min | minimum |
| max | maximum |
| Modifications de la base ||
| create database | Crée une base de données |
| create table | Crée une table |
| alter table | Modifie la structure d'une table (ajout de colonne...) |
| drop table | Supprime une table |
| drop database | Supprime une base |
| update... set | Met à jour des enregistrements |
| insert into... values | Insère des enregistrements |
| delete | Efface des enregistrements |
| on delete cascade | Supprimer en cascade |
| primary key | clé primaire |
| foreign key... references | clé étrangère |
En 1992 ont été ajoutés : DATE, TIME, TIMESTAMP, INTERVAL, BIT, VARCHAR, CAST.
En 2003 : CREATE TABLE AS et CREATE TABLE LIKE. BIT a été retiré.
En 2008 : MERGE, DIAGNOSTIC, TRUNCATE TABLE, INSTEAD OF.

## Voir aussi

* Mots réservés en SQL 92
* Vérificateur de mot réservé
# Programmation SQL/Langage de définition de données

* Introduction
** Installation d'interfaces
* Les bases de données
* Quelques définitions
* Langage de définition de données
* Langage de manipulation de données
* Langage de contrôle de données
* Exemples d'applications
* Mots réservés
* Introduction
** Installation d'interfaces
* Les bases de données
* Quelques définitions
* Langage de définition de données
* Langage de manipulation de données
* Langage de contrôle de données
* Exemples d'applications
* Mots réservés
[ Modifier le sommaire ]
Le LDD comprend les commandes pour la définition des données, qui sont CREATE (créer), DROP (supprimer), et ALTER (modifier).

## SCHEMA
### Instruction CREATE SCHEMA

* Signification : crée une base de données appelée nom_base.
* Rappel : une base de données est un ensemble de tables. Un SGBD peut gérer plusieurs bases de données.
* Exemple :
Cette commande permet de créer une base de données toto.
Sous MySQL on peut employer le terme DATABASE

### Instruction DROP SCHEMA

* Signification : détruit une base de données appelée nom_base.
* remarque : cette instruction est parfois désactivée pour des raisons de sécurité.
* Exemple :
Cette commande permet de détruire une base de données toto.
Sous MySQL on peut employer le terme DATABASE

## TABLE
### Instruction CREATE TABLE

* Cette instruction permet de créer une table : il faut définir son nom, les différents champs de la table avec leur type ainsi que des caractéristiques comme par exemple des clés.
* Chaque champs d'une table possède un type :
** CHAR chaîne non unicode remplacé par nchar pour des chaînes unicode microsoft (cf À la découverte d'Unicode )
** VARCHAR chaîne non unicode remplacé par nvarchar pour des chaînes unicode microsoft.
** INTEGER
** NUMBER
** DECIMAL
** FLOAT
** DOUBLE
** DATE
** TIME
** TIMESTAMP
* Exemple :
Cette instruction crée une table intitulée client1 contenant 4 champs :
* Un champ NOM : chaîne d'au plus 50 caractères.
* Un champ PRENOM : chaîne d'au plus 50 caractères.
* Un champ TELEPHONE : chaîne d'au plus 50 caractères.
* Un champ ADRESSE : chaîne d'au plus 200 caractères.

### Instruction DROP TABLE

* Signification : détruit la table appelée nom_table.
* Exemple :
Cette commande permet de détruire la table client1.

## INDEX
### Instruction CREATE INDEX

* Signification : crée un index appelée nom_de_l_index sur la table nom_de_table.

### Instruction DROP INDEX

* Signification : détruit l'index appelé nom_de_l_index de la table nom_table.

## VIEW
### Instruction CREATE VIEW

Avec Oracle :
* La création d'une vue nécessite les droits de création de vue.
* L'instruction WITH READ ONLY (lecture seule) est facultative.
* Une vue qui comporte certaines expressions (comme GROUP BY) est forcément en lecture seule.
* L'{Instruction SELECT} de la vue ne comportera pas d'ORDER BY.

## Voir aussi

* Microsoft SQL Server/Tables
* MySQL/Syntaxe
* Oracle Database/PL/SQL
# Programmation SQL/Sommaire

* Introduction
** Installation d'interfaces
* Les bases de données
* Quelques définitions
* Langage de définition de données
* Langage de manipulation de données
* Langage de contrôle de données
* Exemples d'applications
* Mots réservés
# Programmation Pascal/Créer de nouveaux types

* Introduction
* Environnement de développement
* Un premier programme
* Structure d'un programme
* Les variables
* Procédures et fonctions
* Dépendances mutuelles et références circulaires
* Créer de nouveaux types
* Exercices
* Introduction
* Environnement de développement
* Un premier programme
* Structure d'un programme
* Les variables
* Procédures et fonctions
* Dépendances mutuelles et références circulaires
* Créer de nouveaux types
* Exercices
[ Modifier le sommaire ]

## Déclaration des types

Les déclarations de types commencent par le mot clé type, puis chaque nouveau type est déclaré selon la syntaxe suivante :
Par exemple :
Ensuite, les variables peuvent utiliser ces types :

## Structure

Une structure est appelée record (enregistrement) en Pascal. Ce type regroupe plusieurs données, chacune portant un nom. Elle ne nécessite pas d'allocation de mémoire particulière, au contraire des objets (type class).

### Exemple

Une variable de ce type :
possède deux membres accessibles par l'opérateur point ( . ) :
# Programmation Pascal/Procédures et fonctions

* Introduction
* Environnement de développement
* Un premier programme
* Structure d'un programme
* Les variables
* Procédures et fonctions
* Dépendances mutuelles et références circulaires
* Créer de nouveaux types
* Exercices
* Introduction
* Environnement de développement
* Un premier programme
* Structure d'un programme
* Les variables
* Procédures et fonctions
* Dépendances mutuelles et références circulaires
* Créer de nouveaux types
* Exercices
[ Modifier le sommaire ]
Une procédure ou une fonction est une sous-routine, en général appelée plusieurs fois. Ceci permet de regrouper un code utilisé plusieurs fois, de diviser le programme en sous-programmes.

## Différences procédure/fonction

Procédures et fonctions acceptent des paramètres, seule une fonction retourne une valeur. La procédure n'en retourne pas.

## Déclaration d'une procédure

La déclaration d'une procédure se fait avec le mot clé procedure suivi du nom de la procédure, et de la liste des paramètres entre parenthèses. Cette liste de paramètres est déclarée avec la même syntaxe que les variables.
Ensuite, les variables locales sont déclarées, puis les instructions sont comprises dans un bloc begin ... end;
Par exemple :

## Déclaration d'une fonction

La syntaxe est similaire à celle d'une procédure, excepté que le mot clé utilisé est function et que le type de retour doit être déclaré.
Par exemple :
Retourner une valeur se fait en affectant celle-ci au nom de la fonction.

## Interface et implémentation dans un module

Dans un module, la partie implementation contient le code des sous-routines en utilisant la syntaxe des paragraphes précédant. La partie interface ne reprend que la première ligne.
Par exemple :

## Ordre de déclaration

La compilation en une passe implique que chaque fonction ou procédure appelée doit être définie avant. L'ordre des sous-routines est donc important.
L'exemple suivant produit une erreur de compilation :
L'ordre correct est le suivant :
Cette restriction ne s'applique pas aux sous-routines publiques d'un même module, car elles sont pré-déclarées dans la partie interface.
Il existe des cas où deux procédures s'appellent mutuellement. Aucune ne peut être située avant/après l'autre. Dans ce cas, il faut en prédéclarer une avec le mot clé forward.
Par exemple :
# Programmation Pascal/Structure d'un programme

* Introduction
* Environnement de développement
* Un premier programme
* Structure d'un programme
* Les variables
* Procédures et fonctions
* Dépendances mutuelles et références circulaires
* Créer de nouveaux types
* Exercices
* Introduction
* Environnement de développement
* Un premier programme
* Structure d'un programme
* Les variables
* Procédures et fonctions
* Dépendances mutuelles et références circulaires
* Créer de nouveaux types
* Exercices
[ Modifier le sommaire ]

## Instructions et blocs

Une instruction séquence d'instructions regroupe plusieurs instructions en une seule. Celle-ci commence par le mot clé begin et se termine par end. Le ; sert à séparer deux instructions. Voici un exemple :
Cette instruction Pascal sera traduite par un bloc en Java

## Catégorie

Un fichier source Pascal débute toujours par un mot clé indiquant le type de code :
* Un programme, c'est à dire une application indépendante (program) ;
* Un module utilisable dans un programme ou un autre module (unit).
Ce mot clé doit être suivi d'un identifiant (un nom) afin de pouvoir faire référence à ce module ou ce programme.
Afin que le compilateur trouve les modules à partir de leur nom, il faut que le nom du fichier source soit identique : un module nommé par :
doit être enregistré dans un fichier nommé my_unit.pas.

### Exemple 3 : un programme utilisant le module de l'exemple 2

Le mot clé uses spécifie la liste des modules utilisés :

## Compilation

L'extension des fichiers produits par la compilation varie selon la plateforme utilisée et le compilateur (natif ou P-code).
Cependant, la plupart des compilateurs ne gère pas la compilation en chaîne : chaque module et programme doit être compilé séparemment et deux modules ne peuvent donc s'utiliser mutuellement.

## Commentaires

Les commentaires sont encadrés par les accolades :
Alternativement, on peut utiliser les parenthèses-étoiles :
Ce qui était plus pratique avec les anciens claviers ne comportant pas les accolades.
Le compilateur Turbo Pascal utilise certains commentaires spéciaux pour préciser des directives de compilations. Ceux-ci débutent par un caractère $, par exemple {$R-,I-} pour désactiver la vérification des erreurs d'intervalle (Range errors) et des erreurs d'entrée-sortie (I/O errors).

## Structure générale d'un module

Le module est divisé en deux grandes parties :
* La partie interface expose les fonctions, procédures, variables et types publiques, c'est à dire accessibles depuis les modules et programmes qui utilisent ce module.
* La partie implementation contient le code implémentant les fonctions et procédures publiques, et peut contenir d'autres variables, types, fonctions et procédures internes au module.
# Programmation Pascal/Introduction

* Introduction
* Environnement de développement
* Un premier programme
* Structure d'un programme
* Les variables
* Procédures et fonctions
* Dépendances mutuelles et références circulaires
* Créer de nouveaux types
* Exercices
* Introduction
* Environnement de développement
* Un premier programme
* Structure d'un programme
* Les variables
* Procédures et fonctions
* Dépendances mutuelles et références circulaires
* Créer de nouveaux types
* Exercices
[ Modifier le sommaire ]
* Wikipédia propose un article sur : « Pascal (langage) ».
Le langage de programmation Pascal (dont le nom vient du mathématicien français Blaise Pascal) a été inventé par Niklaus Wirth dans les années 1970. Il a été conçu pour servir à l'enseignement de la programmation de manière rigoureuse mais simple, en réaction à la complexité de l'ALGOL 68. Le Pascal est donc principalement utilisé dans l'enseignement et notamment dans les universités.
Ce livre explique comment implémenter un algorithme impératif en Pascal pour ensuite l'exécuter sur une machine. Ce livre n'enseigne pas comment créer des algorithmes et résoudre des problèmes mais comment, à partir d'un algorithme impératif créer un programme informatique.
Prérequis cognitif :
* Algorithmique impérative, nécessaire pour créer des algorithmes avant de les implémenter.
* Utilisation simple de l'ordinateur (édition de texte, shell simple)
Prérequis matériels :
Prérequis logiciels :
* un éditeur de texte : le plus simple suffit. Un Environnement de développement pascal serait un plus.
* un compilateur Pascal fonctionnant pour cet ordinateur.
Exemple d'environnement de travail classique :
* Lazarus (créé en... Pascal) pour éditer le code source
* Free Pascal comme compilateur
* Le tout sous le système d'exploitation Linux, Microsoft Windows, ou Mac OS
* Sur un ordinateur de type PC ou Macintosh.
# Programmation Pascal/Sommaire

* Introduction
* Environnement de développement
* Un premier programme
* Structure d'un programme
* Les variables
* Procédures et fonctions
* Dépendances mutuelles et références circulaires
* Créer de nouveaux types
* Exercices
# Programmation Pascal/Variables

* Introduction
* Environnement de développement
* Un premier programme
* Structure d'un programme
* Les variables
* Procédures et fonctions
* Dépendances mutuelles et références circulaires
* Créer de nouveaux types
* Exercices
* Introduction
* Environnement de développement
* Un premier programme
* Structure d'un programme
* Les variables
* Procédures et fonctions
* Dépendances mutuelles et références circulaires
* Créer de nouveaux types
* Exercices
[ Modifier le sommaire ]
Une variable sert à stocker une donnée. Elle a un nom, et un type (entier, chaîne de caractères, tableaux d'entiers, ...).

## Déclaration des variables

Les variables peuvent être déclarées en début de programme ou de module. Dans ce cas, elles sont globales, car accessibles à toutes les procédures et fonctions qui suivent.
Les variables peuvent également être déclarées en début de procédure ou de fonction, où elles seront locales à celle-ci.
Les déclarations de variables commencent par le mot clé var, puis chaque variable est déclarée selon la syntaxe suivante :
Il est également possible de regrouper les variables ayant le même type :
Par exemple :

## Affectation

Pour affecter une valeur constante ou le résultat d'une expression à une variable, il faut utiliser l'opérateur := (caractère deux-points suivi du caractère égal).
Par exemple :

## Affectation à la déclaration

Il est possible d'affecter une valeur à la déclaration d'une variable, en utilisant l'opérateur égal ( = ), le caractère deux-points étant déjà utilisé pour déclarer le type :
# Programmation Pascal/Environnement de développement

* Introduction
* Environnement de développement
* Un premier programme
* Structure d'un programme
* Les variables
* Procédures et fonctions
* Dépendances mutuelles et références circulaires
* Créer de nouveaux types
* Exercices
* Introduction
* Environnement de développement
* Un premier programme
* Structure d'un programme
* Les variables
* Procédures et fonctions
* Dépendances mutuelles et références circulaires
* Créer de nouveaux types
* Exercices
[ Modifier le sommaire ]
Un simple éditeur de texte et un compilateur Pascal en ligne de commande peuvent suffire à un usage simple. Cependant l'utilisation d'un environnement de développement intégré facilite les tâches, notamment le débogage des programmes. Il existe aussi des compilateurs spécifiques pour des applications embarquées (sur téléphone mobile par exemple).

## Lazarus et Free Pascal

* Free Pascal est un compilateur multiplateformes (PC, Mac, Téléphone mobile, Consoles...) pour divers processeurs (x86, ARM, PowerPC...) en 32 et 64 bits.
* Lazarus est un environnement de développement intégré pour la création rapide d'application (RAD : Rapid Application Development).
* Lazarus : https://www.lazarus-ide.org/
* Free Pascal : https://www.freepascal.org/
* Wiki à propos de Lazarus et Free Pascal https://wiki.freepascal.org/

## MIDletPascal

* MIDletPascal est un environnement de développement intégré et un compilateur fait pour la création d'applications sur téléphones mobiles. Le compilateur génère du bytecode Java pour JavaME, qui peut tourner sur différents appareils.
* https://sourceforge.net/p/midletpascal/code/HEAD/tree/
# Pôles d'éco-citoyenneté/Glossaire

Pôles d'éco-citoyenneté

## A

* Agriculture urbaine
* Agriculture verticale

## B

* Bioclimatique
* Biodiversité
* Bioindicateur
* Biomimétisme
* biotope
* BRF (=Bois raméal framgmenté)

## C

* Cartographie des corridors biologiques
* Commensalisme
* Compost
* Construction à biodiversité positive
* Corridor biologique
* Corridor climatique (Exemple : Corridor transcontinental australien)
* Chronoxyles
* Cycle de l'eau
* cycle du carbone
* cycle de l'azote
* cycle du phosphore
* cycle biogéochimique
* Cyndinique

## D

* Développement durable
* Directive régionale d'aménagement

## E

* Écoduc
* Écolabel
* Écocertification
* Écoconception
* Écoconstruction
* Écodesign
* Écologie
* Écologie du paysage
* écologie urbaine
* Écologie rétrospective
* Économie de service
* Écoport
* Écopotentialité
* Écoquartier
* Écosociolabe
* Écosystème
* Écotone
* Écotoxicologie
* Emploi vert, (emploi-environnement)
* Environnement nocturne
* Épiphyte
* Éthique environnementale
* Étude d'impact
* Évaluation environnementale
* Espaces verts écologiques
* espèce clé
* espèce menacée
* espèce parapluie
* espèce protégée

## F

* Fragmentation écopaysagère
* FSC(Forest Stewardship Council (écocertification forestière)

## G

* Gagnage
* Génie écologique
* Gestion du risque
* Grenelle de l'Environnement

## H

* HACCP
* Haute performance énergétique
* Haute qualité environnementale
* Histoire environnementale
* HQE = Haute qualité environnementale
* Homéostasie
* Humus

## I

* Intégrité écologique

## L

* Laisses de mer
* Lisière
* Loi Voynet

## M

* Mesure compensatoire
* Mesure conservatoire
* Migration animale
* Minoterie
* Mulch

## N

* Naturalité
* Natura 2000
* Nécromasse

## O

* Oyat

## P

* Périmètre de protection de captage
* Phrase de risque
* Plan lumière
* Pollution lumineuse
* Propagule
* Puits de carbone

## R

* Réseau écologique
* Réseau écologique paneuropéen
* Réserve naturelle
* Résilience écologique
* Roadkill
* Route HQE

## S

* SSC (Schémas de Services collectifs, qui inclue un schéma « Espaces naturels et ruraux »
* Services écologiques
* SHS (sciences humaines et sociales)
* Synanthropie
* Speed sail

## T

* w:Théories de distribution des espèces
* Toxicologie
* Trame verte
* Trame verte et bleue française

## U

* Urbanisme, urbaniste

## V

* Vanne
* Vasière
* Végétation naturelle potentielle
* Véloroute

## x

* Xylophage : « qui mange le bois »

## Z

* ZOCOB
* Zone humide
* Zone protégée
* ZAC ou Zone d'aménagement concerté
* Zone de connexion biologique

## Voir aussi

* Introduire la biodiversité dans la construction et l'urbanisme
* Plantes messicoles de l'Avesnois
* Cette section est vide, pas assez détaillée ou incomplète. Votre aide est la bienvenue !

## Navigation
### Rédaction technique

    < Relecture | ↑ | Index | Index >
# Programmation C/Triangle de Sierpiński

* Programmation C
* Sommaire
* Introduction
* Bases du langage
* Types de base
* Classe de stockage
* Opérateurs
* Tests
* Itérations
* Fonctions
* Tableaux
* Pointeurs
* Types avancés
* Préprocesseur
* Bibliothèque
* Chaînes
* Entrées/sorties
* Erreurs
* Mathématiques
* Courbe de Bézier
* Triangle de Sierpiński
* Gestion de la mémoire
* Gestion des signaux
* Conclusion
* Bibliographie
* Modifier ce modèle
Ce programme récursif utilise la bibliothèque graphique Allegro pour générer un triangle de Sierpiński.
# Programmation C sharp

Un livre appartenant à la série Programmation et à l'étagère Informatique de Wikilivres.
Ce livre présente le langage C♯ également noté C# (prononcé en anglais [/siː.ʃɑːp/]). Il est destiné à ceux qui souhaitent utiliser ce langage de programmation orienté objet, que le lecteur soit un programmeur débutant ou confirmé. Pour s'adresser à un large public, étudiant ou professionnel, cet ouvrage est divisé en plusieurs parties. Dans les premières parties présentant les bases, il est conseillé de suivre l'ordre des chapitres.
    Terminé
* Une version imprimable du livre « Programmation C sharp » est disponible. (voir/ modifier)
* Une version PDF de ce livre est disponible.
* Faites part de vos remarques dans le livre d'or !
La première partie présente le langage et les outils pour l'utiliser.
* Introduction
* Compilation
* Un premier programme

### Le langage

Cette partie présente la syntaxe de base du langage C#.
* Les commentaires
* Les espaces de noms
* Les variables et les constantes
* Les types de base et les déclarations
* Les tableaux
* Les objets
* Les classes
* Les fonctions
* Propriétés et indexeurs
* Les opérateurs
* Les structures de contrôle
* Héritage de classes
* Classe abstraite
* Les exceptions
* Structures et énumérations
* Interfaces
* Expression de requête

### Programmation avancée

Cette section s'adresse aux programmeurs avancés voulant exploiter les fonctionnalités les plus avancées du langage.
* Type partiel
* Surcharge des opérateurs
* Directives du préprocesseur
* Documentation XML des classes
* Attributs
* Delegates et events
* Types génériques
* Appel de plateforme
* Code non vérifié

### API .Net

Cette partie présente les classes de l'API pour utiliser les fonctions du système d'exploitation.
* Expression régulière
* Interfaces graphiques
** Graphique vectoriel
* Fonctions asynchrones
* Threads et synchronisation
* Processus
* Entrées-sorties
* La sérialisation
* Les fichiers
* Programmation réseau
* Exécution distante

### Ressources

Cette section présente une liste de ressources utiles pour en apprendre davantage sur le langage C#.
* Bibliographie et liens
* Index des mots-clés du langage
* Glossaire