|  |  
 
Sous sélections. select id from t where grp in (select grp from g where u > 100)
Lors d'une commande ALTER TABLEsur une table qui est sous la forme d'un lien symbolique
sur un autre disque, commencer par créer une table temporaire sur le disque actuel.
RENAME table as table, table as table [,...]
FreeBSD et MIT-pthreads;  Est ce que les threads endormis consomme des ressources CPU?
Autoriser la jointure sur des parties de clés (question d'optimisation).
Ajouter l'entrée DECRYPT().
Conserver les définitions de clés étrangères (FOREIGN) dans le fichier `.frm'.
Curseurs coté serveurs.
Autoriser les utilisateurs à modifier les options de démarrage.
Ajouter l'option --ansi à MySQL (pour transformer || en CONCAT())
Ne pas ajouter automatiquement de valeur DEFAULTaux colonnes.
Au contraire, retourner une erreur lors de l'insertion (INSERT)
de valeur dans des colonnes sans valeur par défaut.
Mettre les résultats et les requêtes en cache. Cela sera fait dans un
module séparé, qui examinera les requêtes, et retournera les résultats 
déjà présents dans le cache. Lors de la modification d'une table,
cela devra ne supprimer que le nombre minium de requêtes du cache.
Cela devrait donner un bon cout d'accélérateur aux machines avec beaucoup
de RAM, où les requêtes sont souvent repétées (comme pour les applications WWW).
Une première approche serait de ne mettre en cache que les requêtes du type : 
SELECT CACHED ....
Corriger `libmysql.c' pour permettre plusieurs commandes mysql_query()simultanées, sans lire les résultats, ou bien retourner une alerte lorsque cela
se passe.
Optimiser le type BITpour qu'il ne prenne qu'un 1 bit (actuellement,BITprend un char).
Comprendre pourquoi MIT-pthreads ctime()ne fonctionne pas avec certaines configurations FreeBSD.
Vérifier que les threads verrouillés ne consomme pas de CPU inutilement.
Ajouter ORDER BYpour les modifications. Cela serait bien pratique avec des fonctions telles quegenerate_id(start,step).
Ajouter une option IMAGEpour les commandesLOAD DATA INFILEafin qu'elle ne modifie pas 
les champsTIMESTAMPetAUTO_INCREMENT.
Faire que LOAD DATA INFILEcomprenne les syntaxes du type :
LOAD DATA INFILE 'Nom_fichier.txt' INTO TABLE nom_table
TEXT_FIELDS (champs_texte1, champs_texte2, champs_texte3)
SET table_field1=concatenate(champs_texte1, champs_texte2), champs_texte3=23
IGNORE text_field3
Autoriser MIN(),MAX()avec des chaînes (pas dans les fonctions de groupes).
Elles seraient alors synonymes deLEAST(),GREATEST().
Démonstration de procédures : analyze
Exportation automatique de mysqlvers netscape.
LOCK DATABASES. ( avec diverses options).
NATURAL JOIN.
Modifier le tri pour permettre l'allocation de mémoire en ``hunks'' (NDT : paquets? grappes?) pour optimiser l'utilisation de mémoire.
DECIMALetNUMERICne peuvent pas comprendre les notations exponentielles :Field_decimal::store(const char *from,uint len)doivent être recodées pour corriger ceci.
Corriger mysql.ccpour faire moins demalloc()lors des hashages des noms de champs.
Fonctions:
ADD_TO_SET(value,set) et REMOVE_FROM_SET(value,set)
Ajouter l'utilisation de t1 JOIN t2 ON ...ett1 JOIN t2 USING ...Actuellement, c'est uniquement possible avecLEFT JOIN.
Ajouter le support complet du type unsigned long long.
Fonction CASE.
Ajouter de nombreuses variables pour show status.  Notamment : 
CommandesINSERT/DELETE/UPDATE. Lignes lues et modifiées.
SELECT sur 1 table et SELECT avec jointures.Nombre moyen de tables dans un SELECT.
Nombre de lecture écriture du buffer de clé (logiques et réél).ORDER BY,GROUP BY, tables temporaires créées.
Si mysqlest interrompu au milieu d'une requête, on devrait pouvoir être
capable d'ouvrir une autre connexion, et de tuer l'ancienne requête.
Alternativement, une tentative doit être faite pour detecter ceci au niveau du serveur.
Ajouter une interface pour gérer les informations sur les tables, pour les
utiliser comme un système de table. Cela ralentira les traitements, si vous
réclamez les informations sur toutes les tables, mais cela sera beaucoup plus flexible.
SHOW INFO FROM nom_tabledevrait être implémenté pour accéder à des informations basiques.
Permettre à mysqldde supporter plusieurs jeu de caractères en même temps.
Ajouter le support d'UNICODE.
NATURAL JOIN.
Commande issue d'Oracle : CONNECT BY PRIOR ...pour rechercher dans les structures hiérarchiques.
RENAME DATABASE
mysqladmin copy database new-database.
La liste de processus devrait montrer le nombre de requêtes par thread.
Option IGNOREpour la commandeUPDATE(Elle effacerait les lignes qui ont une clé en doublon, lors de la modification).
select distinct a from foo order by bne devrait pas retourner les lignes en doubles,
Si il y a différents couples (a,b)
Changer le format de DATETIMEpour enregistrer les fractions de seconds.
Ajouter tous les types manquants de ANSI92 et ODBC 3.0.
Changer les noms de tables en NULLpour les calculs de colonnes. |