OpenLLM-France/wikimedia huggingface dataset:
# Mathc initiation/c57ba

Sommaire
Installer ce fichier dans votre répertoire de travail.
Texte de la légende :
| fa.h /* ---------------------------------- */ /* save as fa.h */ /* --------------------------------- */ #define LOOP 2*50 /* ---------------------------------- */ double f( double x, double y) { return( (x + y) ); } char feq = "(x + y)"; /* --------------------------------- */ /* --------------------------------- */ double v( double x) { return( sqrt(x) ); } char veq = "sqrt(x)"; /* --------------------------------- */ double u( double x) { return( ( 0) ); } char ueq = "0.0"; /* --------------------------------- */ /* --------------------------------- */ double xf( double x, double y) { return( (x)* (x + y) ); } char xfeq = "(x)* (x + y)"; /* --------------------------------- */ double yf( double x, double y) { return( (y)* (x + y) ); } char yfeq = "(y)* (x + y)"; /* --------------------------------- */ /* --------------------------------- */ double bx = 9.; char bxeq = "9"; double ax = 0.; char axeq = "0"; /* ---------------------------------- */ /* ---------------------------------- */ | fb.h /* --------------------------------- */ /* save as fb.h */ /* --------------------------------- */ #define LOOP 2*50 /* ---------------------------------- */ double f( double x, double y) { return( x ); } char feq = "x"; /* --------------------------------- */ /* --------------------------------- */ double v( double x) { return( exp(x)); } char veq = "exp(x)"; /* --------------------------------- */ double u( double x) { return( log(x)); } char ueq = "log(x)"; /* --------------------------------- */ /* --------------------------------- */ double xf( double x, double y) { return( (x)* (x)); } char xfeq = "(x)* (x)"; /* --------------------------------- */ double yf( double x, double y) { return( (y)* (x) ); } char yfeq = "(y)* (x)"; /* --------------------------------- */ /* --------------------------------- */ double bx = 2.; char bxeq = "2"; double ax = 1.; char axeq = "1"; /* ---------------------------------- */ /* ---------------------------------- */ |
| fc.h /* ---------------------------------- */ /* save as fc.h */ /* ---------------------------------- */ #define LOOP 2*50 /* ---------------------------------- */ double f( double x, double y) { return( (4) ); } char feq = "4"; /* --------------------------------- */ /* --------------------------------- */ double v( double x) { return( 1/cos(x) ); } char veq = "1/cos(x)"; /* --------------------------------- */ double u( double x) { return( (1./2.) ); } char ueq = "1./2."; /* --------------------------------- */ /* --------------------------------- */ double xf( double x, double y) { return( (x)* (4) ); } char xfeq = "(x)* (4)"; /* --------------------------------- */ double yf( double x, double y) { return( (y)* (4) ); } char yfeq = "(y)* (4)"; /* --------------------------------- */ /* --------------------------------- */ double bx = +PI/4.; char bxeq = "+PI/4"; double ax = -PI/4.; char axeq = "-PI/4"; /* ---------------------------------- */ /* ---------------------------------- */ | |
# Mathc initiation/c57bc

Sommaire
Installer ce fichier dans votre répertoire de travail.
# Mathc initiation/c57a2

Sommaire
Installer ce fichier dans votre répertoire de travail.
Dans ce fichier il y a les utilitaires.
# Mathc initiation/c57bb

Sommaire
Installer ce fichier dans votre répertoire de travail.
# Mathc initiation/c57a3

Sommaire

## Les fonctions vectorielles 2d  : wikipedia

En mathématiques, une fonction à valeurs vectorielles ou fonction vectorielle est une fonction dont l'espace d'arrivée est un ensemble de vecteurs, son ensemble de définition pouvant être un ensemble de scalaires ou de vecteurs.
Copier la bibliothèque dans votre répertoire de travail :
* x_hfile.h ............. Déclaration des fichiers h
* x_def.h .............. Déclaration des utilitaires
* x_strct.h ............. Déclaration des structures pour la variable t
* x_strcg.h ........... Déclaration des structures pour gnuplot
* x_fx.h ................ Calculer la dérivé première et seconde
* kg_curv2d.h ...... Dessiner la fonction
Les fonctions pour les différents exemples :
* Les fichiers f*.h
Dessiner et animer la fonction vectorielle 2d:
* c00a.c
* c00a1.c
* c00b.c
* c00b1.c
# Programmation mIRC/Remote/Text

L'évènement on TEXT se déclenche quand vous recevez des messages privés et/ou de salon.
Format : on <niveau>:TEXT:<texte correspondant>:<*><?><#[,#]>:<commandes> Exemple : on 1:TEXT:*help*:#mirc,#irchelp:/msg $nick Quel est le problème ?
Les évènements on ACTION et on NOTICE utilisent exactement le même format qu'un on TEXT, et se déclenchent sur un événement action et notice respectivement.
Le texte correspondant peut être une chaîne joker, où :
Le texte correspondant peut également être une expression régulière. Voir la section préfixe $ dans les Niveaux d'accès.
Le lieu où cet évènement arrive peut être spécifié en utilisant :
Exemples
on 1:TEXT:hello*:#:/msg $chan Bienvenue à $chan $nick!
Cela écoute tout salon pour toute ligne commençant par le mot hello et dit bienvenue à l'utilisateur qui l'a dit dans le salon.
on 1:TEXT:*cookie*:#food:/describe $chan donne à $nick un gateau :)
Cela écoute sur le salon #food tout message contenant le mot cookie et donne à l'utilisateur qui l'a dit un gâteau.
on 1:ACTION:moo:#:/msg $chan Aha, Je vois que nous avons une vache parmi nous.
Cela écoute sur tout salon une action contenant le mot moo et répond en conséquence.
on 1:NOTICE:*:?:/msg $nick Je suis OQP, je reviens dans un moment !
Cela écoute sur tout notice privée et répond avec le message que vous êtes loin du clavier.
Pour plus de flexibilité, vous pouvez également utiliser les Variables en lieu et place du texte de correspondance et des paramètres du salon.
on 1:TEXT:%matchtext:%salon:/msg $nick Tu as dit $1- sur le salon %salon
La valeur de %matchtext sera comparé quel que soit le texte que l'utilisateur envoie, et la valeur de %salon sera comparé au salon auquel le message a été envoyé.
Note : Vous ne pouvez pas tester ces évènements en tapant le texte vous-mêmes. Ils peuvent seulement être initiés par quelqu'un d'autre disant quelque chose dans un salon ou dans un message privé.
# Programmation mIRC/Remote/Input

L'évènement on INPUT se déclenche quand vous entrez un texte dans une boite d'édition et presses entrer.
Format : on <niveau>:INPUT:<*#?=!@>:<commandes> Exemple : on 1:INPUT:#mIRC:/echo Vous avez entré le texte " $1- " dans la fenêtre #mIRC
Exemples
on 1:INPUT:#:/echo j'ai marmonné " $1- " dans un salon
Se déclenche quand vous entrez un texte dans une boite d'édition d'une fenêtre salon et pressez entrer. Les paramètres $1- se réfèrent au texte que vous avez entré. Si vous /halt cet évènement, vous pouvez empêcher mIRC lui-même de traiter votre message.
on 1:INPUT:?:/echo J'ai marmonné " $1- " dans la fenêtre privée on 1:INPUT:=:/echo J'ai marmonné " $1- " dans un dcc chat
on 1:INPUT:!:/echo J'ai marmonné " $1- " dans un serveur de fichier
Vous pouvez également spécifier un nom de fenêtre/de salon au lieu de *#?=!@.
Vous pouvez utiliser l'identifieur $ctrlenter pour tester si Contrôle+Entrer a été pressé quand l'utilisateur a entré le texte.
Note : Vous pouvez utiliser des commandes telles que /say avec on INPUT et ils enverront le message à la fenêtre dans laquelle vous avez tapé. Cependant, la plupart des commandes/évènements ne fonctionnent pas de cette façon et requièrent que vous spécifiiez la destination du message.
# Programmation mIRC/Remote/Invite

L'évènement on INVITE se déclenche quand un utilisateur vous invite dans un salon.
Format : on <niveau>:INVITE:<#[,#]>:<commandes> Exemple : on 1:INVITE:#mIRC:/join $chan
Exemples
on 2:INVITE:#:/join $chan | /timer 1 3 /describe $chan apparaît dans un nuage de fumée!
Cela se déclenche quand un utilisateur ayant un accès de niveau vous invite dans n'importe quel salon.
Note : Si vous voulez automatiquement joindre un salon quand quelqu'un vous invite, il est plus facile d'activer l'option Auto-Join dans le dialogue Options.
# Programmation mIRC/Remote/Mode

L'évènement on MODE se déclenche quand un utilisateur change de mode de salon.
Format : on <niveau>:MODE:<#[,#]>:<commandes> Exemple : on 1:MODE:#mIRC:/notice $me $nick a changé le mode du $chan en $1-
L'évènement on SERVERMODE utilise le même format, et se déclenche quand un serveur IRC change un mode du salon.
Exemples
on @1:MODE:#:/notice $me $nick a change le mode du $chan en $1-
Cela se déclenche quand un utilisateur change le mode sur tout salon où vous êtes opérateur (le signe @ spécifie l'exigence Opérateur, voir la section Niveaux d'accès pour plus d'informations). Les paramètres actuels du changement de mode sont gardés dans $1- lesquels vous aurez besoin de séparer pour prendre un mode particulier.
Note : ces évènements se déclenchent seulement sur les changements de mode du salon, pas les changements de mode utilisateur tels que opérateurs, bans, etc.
# Programmation mIRC/Remote/Hotlink

L'évènement on HOTLINK se déclenche lors du déplacement de la souris sur un mot spécifique dans une ligne de texte ou dans une fenêtre.
Format : on <niveau>:HOTLINK:<texte correspondant>:<*#?=!@>:<commandes>
Exemples
Cet événement fonctionne quelque peu différemment des autres évènements, et est mieux expliqué avec un exemple :
on ^1:HOTLINK:*help*:#:{
on 1:HOTLINK:*:*:echo clique le mot $1 dans la ligne $hotline $hotlinepos
Le premier évènement ^ est déclenché quand vous déplacez votre souris sur un mot qui correspond à *help* dans la fenêtre salon. Vous pouvez alors vérifier $1 pour voir si vous voulez que la main hyperlien apparaisse au-dessus du mot. Si vous arrêtez (halt) l'évènement, aucune main n'apparaît. Ceci vous permet de filtrer un mot basé sur le contexte.
L'identifieur $hotline retourne la ligne complète où est contenue le déclencheur hyperlien. L'identifieur $hotlinepos retourne le numéro de ligne et la position du mot déclenchant. Le second évènement non-^ est déclenché quand vous double-cliquez sur un mot qui a été filtrée au travers du premier évènement hotlink.
Note : Le script pour les évènements hyperlien devrait être aussi petit que possible car l'évènement se déclenche chaque fois que vous déplacez la souris sur un mot.
# LibreOffice et Apache OpenOffice/Calc/Espace de travail

Tour d'horizon :
* Accueil
* Le tableur
* Le grapheur
* Ergonomie
* Ressources
Manuel d'utilisation :
* Espace de travail
* Fonctionnalités
* Raccourcis clavier
* Macros
Apprentissages :
* Devis
* Métré
La définition de l'espace de travail consiste à configurer le logiciel pour placer à disposition tous les outils nécessaires pour utiliser OOoCalc en fonction de ses besoins.

## Les barres d'outils

Les barres d'outils permettent d'accéder rapidement à l'aide d'icônes aux fonctions à utiliser.

### "Les plus utilisées"

* Standard
* Formatage
* Insertion

### Afficher/Masquer

* Utilisez le menu Afficher - Barre d'outils et cliquez sur le nom de la barre d'outils à afficher ou à masquer.

### Déplacer

* Cliquez sur la poignée de déplacement (le curseur se transforme en croix) et déplacez la barre à l'endroit souhaité.
* La barre devient alors une barre d'outils flottante que l'on peut positionner.
* La barre peut être redimensionnée.

### Fixer

* Faites un double clic sur la barre de titre de la barre d'outils flottante.

## Les outils
### Afficher/Masquer

* 1ère solution
* Cliquez sur le bouton à la droite de la barre d'outils, choisissez boutons visibles et sélectionnez les outils concernés.
* 2ème solution
* Cliquez sur le bouton à la droite de la barre d'outils, choisissez Personnalisez la barre d'outils... .
* Sélectionnez les outils concernés.
# LibreOffice et Apache OpenOffice/Calc/Raccourcis

Tour d'horizon :
* Accueil
* Le tableur
* Le grapheur
* Ergonomie
* Ressources
Manuel d'utilisation :
* Espace de travail
* Fonctionnalités
* Raccourcis clavier
* Macros
Apprentissages :
* Devis
* Métré
# LibreOffice et Apache OpenOffice/Calc/Ergonomie

Tour d'horizon :
* Accueil
* Le tableur
* Le grapheur
* Ergonomie
* Ressources
Manuel d'utilisation :
* Espace de travail
* Fonctionnalités
* Raccourcis clavier
* Macros
Apprentissages :
* Devis
* Métré

## Interface

* La feuille de calcul et 1' les onglets de navigation entre les feuilles
* Les cellules
* La barre de menus
* Les barres d'outils
* La barre de formule
* La barre d'état
* Les barres pour scinder l'écran
* La barre de circulation

## Fenêtres complémentaires

* La fenêtre du navigateur et son icône 1' de la barre d'outil Standard
* La fenêtre de style et formatage et son icône 2' de la barre d'outil Formatage
* La fenêtre du navigateur de fonctions
* La barre pour scinder l'écran en vertical et le résultat pour l'horizontal
# LibreOffice et Apache OpenOffice/Calc/Fonctionnalités

Tour d'horizon :
* Accueil
* Le tableur
* Le grapheur
* Ergonomie
* Ressources
Manuel d'utilisation :
* Espace de travail
* Fonctionnalités
* Raccourcis clavier
* Macros
Apprentissages :
* Devis
* Métré

## Fonctionnalités du tableur

* Principe des calculs
* Vérification des formules
* Fonctions
* Manipulation des cellules
* Mise en forme du tableau
* Analyse des données
* Séries
* Impression

## Fonctionnalités du grapheur

* Principe du graphique
* Type de diagramme
# LibreOffice et Apache OpenOffice/Calc/Raccourcis clavier

Tour d'horizon :
* Accueil
* Le tableur
* Le grapheur
* Ergonomie
* Ressources
Manuel d'utilisation :
* Espace de travail
* Fonctionnalités
* Raccourcis clavier
* Macros
Apprentissages :
* Devis
* Métré
# LibreOffice et Apache OpenOffice/Calc/Présentation du grapheur

Tour d'horizon :
* Accueil
* Le tableur
* Le grapheur
* Ergonomie
* Ressources
Manuel d'utilisation :
* Espace de travail
* Fonctionnalités
* Raccourcis clavier
* Macros
Apprentissages :
* Devis
* Métré

## Définition

* À la base la présentation des calculs est réalisée sous forme de tableau.
* Ce tableau peut être utilisé pour réaliser une présentation sous forme de graphique (d'où le terme de tableur/grapheur).

## Principe du graphique

* Il faut commencer par sélectionner les cellules concernées par le graphique.
* Cliquez sur l'outil diagramme de la barre d'outils Standard.
* Le graphe s'affiche avec une fenêtre de choix de type de représentation.
* Le type de représentation peut être changé, le graphique s'adapte immédiatement (ce qui aide au choix).
* Une fois validé, le graphe peut être déplacé.
# LibreOffice et Apache OpenOffice/Calc/Présentation du tableur

Tour d'horizon :
* Accueil
* Le tableur
* Le grapheur
* Ergonomie
* Ressources
Manuel d'utilisation :
* Espace de travail
* Fonctionnalités
* Raccourcis clavier
* Macros
Apprentissages :
* Devis
* Métré

## Définitions

* Une feuille de calcul est un tableau composé de cases appelées cellules.
* Elles se trouvent à l'intersection d'une colonne et d'une ligne et sont référencées par la lettre et le nombre correspondant (exemple : C4).
* Le tableur correspond à un ensemble de feuilles de calcul.
* Les cellules peuvent contenir :
* des données alphanumériques
* des calculs (soustractions, additions, multiplications)
* des fonctions (Somme, Moyenne, ...)

## Principe des calculs

Le principe de la feuille de calcul est de réaliser des calculs à partir de données. Si les données changent le résultat du calcul est modifié automatiquement.
La démarche pour construire le tableau est la suivante :
* Placer les données en fonction des résultats à obtenir ;
* Écrire les formules dépendantes des données.

### Entrée des données

* Les données (ou données alphanumériques) sont des valeurs fixes qui peuvent être :
* des nombres
* du texte
* une date ou une heure
Il suffit de se placer sur les cellules devant les contenir, de taper le contenu et de le valider par la touche Entrée du clavier.

### Entrée des formules
#### Sélection de la cellule devant contenir le résultat

* Cliquez sur la cellule désirée.

#### Entrée de la formule

* Cliquez sur le signe = de la barre des formules.
* Cliquez sur la première cellule faisant partie de la formule de calcul.
* Entrez l'opérateur du calcul.
* Cliquez sur la deuxième cellule faisant partie de la formule de calcul.

#### Validation de la formule de calcul

* Validez la formule à l'aide de la touche Entrée du clavier, le résultat du calcul s'affiche.
# LibreOffice et Apache OpenOffice/Calc/Macros

Tour d'horizon :
* Accueil
* Le tableur
* Le grapheur
* Ergonomie
* Ressources
Manuel d'utilisation :
* Espace de travail
* Fonctionnalités
* Raccourcis clavier
* Macros
Apprentissages :
* Devis
* Métré

## Menu

Il est possible d'enregistrer des actions manuelles, et de les reproduire plusieurs fois en lançant une macro. Pour ce faire aller dans Outils\Macros\Enregistrer une macro.
Pour l'exécuter ou l'éditer, l'option est juste à côté.
Les macros peuvent être stockées dans le logiciel, ou dans le document, et pourront être copiées dans d'autres, et même converties en Visual Basic pour Microsoft Excel. Globalement la syntaxe est assez similaire (ex : _ permet de revenir à la ligne sans couper la commande).

## Syntaxe

Pour sélectionner des cellules, il y a trois solutions :
* getcellrangebyname(« A1 »)
* getCellByPosition(l,c)
* getCellRangeByPosition(left,top,right,bottom)
Pour créer un document texte :
Pour ouvrir un document ou un répertoire :
Le fichier s'ouvrira ensuite avec le programme par défaut défini par le système d'exploitation. Par exemple :
est susceptible de s'ouvrir sous Excel même si Calc est déjà ouvert.
Une solution pour manipuler malgré tout un tableau .xls est de passer par StarDesktop, qui lancera le fichier désiré via Calc quels que soient les paramètres de l'OS sur lequel on exécute la macro :

## Exemples
### Transcrire des lignes en colonnes

Par exemple pour transcrire des lignes en colonnes, on peut reproduire un collage spécial en cochant la case "Transposer" :
Toutefois, on peut aussi utiliser une macro contenant la fonction "getCellByPosition" : cela permet d'ajouter un traitement automatique pendant la transposition :

## Références

* ↑ http://www.business-spreadsheets.com/vba2oo.asp
* http://wiki.services.openoffice.org/wiki/FR/Documentation/BASIC_Guide
* http://ooo.developpez.com/faq/?page=Impress
# LibreOffice et Apache OpenOffice/Calc/Métré

Tour d'horizon :
* Accueil
* Le tableur
* Le grapheur
* Ergonomie
* Ressources
Manuel d'utilisation :
* Espace de travail
* Fonctionnalités
* Raccourcis clavier
* Macros
Apprentissages :
* Devis
* Métré
Le métré des éléments d'un préau peut être effectué à l'aide d'un tableur.
# Lisaac/Conteneurs

A FAIRE:
* expliquer proto COLLECTION
* le proto pour les tableaux
* celui des listes chainées
# Lisaac/La généricité

A FAIRE:
* Introduire la généricitée
* Refaire l'exemple avec VECTOR_2 en l'utilisant
# Lisaac/Les points délicats

À FAIRE:
* revenir sur les différentes signification de +/- notamment dans la section Header
* rappeler les cas les plus courant pour les différents types de slot
* revenir sur les différentes combinaison d'héritages
* expliquer les utilisation courantes
# Lisaac/Gestion des erreurs

A FAIRE
* Intro général sur le but de la gestion
* Insister sur le fait qu'il faut éviter les erreurs et non pas en provoquer pour les gérer par la suite (et surtout pas utiliser les systèmes de gestion d'erreur pour programmer cf Java)
* Intro des assertions
* Intro des contrats
# Lisaac/Cloner
#### Question : Et pour les constructeurs et l'instanciation ?

Les contructeurs sont des routines un peu particulières dans les langages à classes car elles permettent de créer et d'instancier des objets à partir du vide. Mais Lisaac a horreur du vide ! En effet chaque prototype (qu'il soit abstrait ou sous forme de template n'importe pas) est directement présent en mémoire sous la forme d'un objet "maître". Cet objet "maître" s'écrit en majuscule avec le nom du prototype.
Par exemple pour notre prototype de tout à l'heure l'objet maître est :
Il est "vivant" dans le sens ou vous pouvez lui envoyer des messages. En particulier vous pouvez lui demander de se cloner. Exemple:
Vous devez donc utiliser la méthode clone pour instancier un nouvel objet. Cette méthode est définie dans OBJECT, il ne faut donc pas oublier de faire hériter vos prototype de OBJECT si vous voulez pouvoir les cloner.

#### Q : Qu'y a t-il dans point avant l'opération de clonage ?

En fait ceci :
équivaut à :
Au début point est donc une référence nulle.

#### Q : Oui mais comment je fais des constructeurs ?

C'est facile, si on refléchit bien un constructeur n'est rien d'autre qu'une fonction créant un nouvel objet suivant certains paramètres. On sait déjà fabriquer un nouvel objet : il faut utiliser clone. Pour l'initialisation du nouvel objet il suffit d'utiliser l'affectation normale. Bref si on arrête de faire de la mystification un constructeur c'est une méthode normale du prototype à créer. Exemple pour VECTOR_2 :
Et pour l'utiliser :
# Lisaac/Expression

A FAIRE:
# Lisaac/Extended

A FAIRE :
* Faire remarque qu'il est inefficace d'utiliser des références pour les types de bases comme les entiers
* Introduire la solution les types Extended
* Expliquer le fonctionnement pour faire pareil sur ses propres proto
* Expliquer le problème de performance que cause la copie en particulier dans le cas des paramètres et que l'utilisation d'Extended n'est pas courante
# Oracle Database/Désinstaller

* Introduction
* Interfaces de gestion
* Gestion des utilisateurs
* Objets stockés
** Tablespaces
** Tables
** Vues
** Vues matérialisées
** Index
** Procédures stockées
** Fonctions
** Packages
** Trigger
** Séquences
* PL/SQL
** Considérations générales
*** Oracle ignore le type booléen
*** Oracle ignore l'autoincrement
** Quelques requêtes utiles
*** Dictionnaire de données
*** Paramètres système
*** Utiliser les dates
*** Modifier une ligne
*** Analyse d'une table
** Utilisation de fonctions
*** Fonction UNPIVOT
*** Fonction PIVOT
*** Fonction LISTAGG
*** Fonction TRIM
*** Fonction LENGTH
*** Fonction SUBSTR
*** Fonction DECODE
* Sécurité
* Net Services
* Serveurs partagés
* Monitoring des performances
* Maintenance proactive
* Gestion des annulations
* Conflits de verrouillage
* Sauvegardes et restaurations
* Bases de données multimédia
* Bases de données spatiotemporelles
* Deferrable constraint
* Débogage
* Désinstaller
* Introduction
* Interfaces de gestion
* Gestion des utilisateurs
* Objets stockés
** Tablespaces
** Tables
** Vues
** Vues matérialisées
** Index
** Procédures stockées
** Fonctions
** Packages
** Trigger
** Séquences
* PL/SQL
** Considérations générales
*** Oracle ignore le type booléen
*** Oracle ignore l'autoincrement
** Quelques requêtes utiles
*** Dictionnaire de données
*** Paramètres système
*** Utiliser les dates
*** Modifier une ligne
*** Analyse d'une table
** Utilisation de fonctions
*** Fonction UNPIVOT
*** Fonction PIVOT
*** Fonction LISTAGG
*** Fonction TRIM
*** Fonction LENGTH
*** Fonction SUBSTR
*** Fonction DECODE
* Sécurité
* Net Services
* Serveurs partagés
* Monitoring des performances
* Maintenance proactive
* Gestion des annulations
* Conflits de verrouillage
* Sauvegardes et restaurations
* Bases de données multimédia
* Bases de données spatiotemporelles
* Deferrable constraint
* Débogage
* Désinstaller
[ Modifier le sommaire ]
La désinstallation d'une base de données Oracle peut être complexe.
La procédure à suivre pour Oracle Database 12C est la suivante:
* Allez dans ORACLE_HOME\deintall\ exécutez deintaller.bat comme administrator ou propriétaire de la BDD
* Le désinstalleur s'affiche. Vérifiez le Listener name & appuyez sur Enter
* Vérifiez le SID & appuyez sur Enter
* Entrez ‘ Y ‘ et appuyez sur Enter
* La désinstallation de la base de données Oracle commence.
Du nettoyage manuel peut ensuite être nécessaire.
* Aller dans le dossier app et effacez ce qui ne l'a pas été
* Dans la variable d'environnement PATH, supprimez ce qui point sur le dossier précédemment supprimé
* Dans services.msc supprimez les services liés à Oracle (attention, certains peuvent être liés à d'autres produits Oracle comme VirtualBox et il ne faut pas y toucher, ceux que vous pouvez supprimer sans crainte sont ceux commençant par OracleService et OracleOraDB)