begin process at 2012 02 11 16:49:27
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

SQL

 > AUTODROPSQL : POUR SUPPRIMER TOUTES LES TABLES MYSQL COMMENÇANT PAR UNE CERTAINE CHAINE DE CARACTÈRE

AUTODROPSQL : POUR SUPPRIMER TOUTES LES TABLES MYSQL COMMENÇANT PAR UNE CERTAINE CHAINE DE CARACTÈRE


 Information sur la source

Note :
Aucune note
Catégorie :SQL Classé sous :mysql, drop, table Niveau :Initié Date de création :17/05/2006 Date de mise à jour :18/05/2006 15:07:53 Vu / téléchargé :11 053 / 413

Auteur : BaroqueW

Ecrire un message privé
Site perso
Commentaire sur cette source (4)
Ajouter un commentaire et/ou une note

 Description

Souvent, les moteurs php comme Spip ou MediaWiki, DotClear, phpBB etc. créent bon nombre de tables dans votre base de données MySQL. Gentiment, ils vous proposent de toutes les préfixer par une chaîne de votre choix.
Malheureusement, quand vient le moment du nettoyage, je n’ai pas trouvé comment faire pour supprimer ces tables facilement. PHPMyAdmin est gentil, mais supprimer les tables une à une, c’est pas pratique.
Voilà donc un script PHP pour y remédier. Il affiche par défaut la liste de vos tables, et permet de supprimer celles commençant par une certaine chaîne de caractères. Une fois l’opération faite, il vous informe de ce qu’il vient de ce passer.
ATTENTION, CE SCRIPT NE DEMANDE PAS CONFIRMATION AVANT LA SUPPRESSION !!! Faites donc bien attention !


 Conclusion

Ligne 17 : $db = mysql_connect("localhost" , "username" , "password");
Remplacez localhost par le nom de machine qui héberge votre serveur MySQL (ou laissez localhost, le plus souvent), username par le nom d’utilisateur de votre base de données et password par le mot de passe associé.
Ligne 18 : mysql_select_db("database", $db);
Remplacez database par le nom de votre base de données.

D'autres scripts sur http://www.baroquew.com/spip/

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

18 mai 2006 15:07:55 :
Abandon de la regexp au profit de strpos() Modification des 'action=""' et 'name=""' des 'form'. Fermeture des balises HTML et validation de la page. Utilisation de '' pour les echos.

 Sources du même auteur

Source avec Zip METEOQUEW[PHP] : RÉCUPÈRE LES INFOS DE METEOFRANCE

 Sources de la même categorie

Source avec Zip CLASS PHP :: REQUÊTES MYSQL par devgoneti
Source avec Zip Source avec une capture CONVERTIR BASE FIREBIRD EN MYSQL par castelfrederic29
Source avec une capture SQL/EXE EXECUTEUR DE REQUETTES SQL par enokbyreal
Source avec Zip ESPACE MEMBRE BASIQUE par bonhommecrea
Source avec Zip Source avec une capture MODIFICATEUR DE DONNEES DANS UNE BASE SQL AVEC LISTING DES T... par cram121

 Sources en rapport avec celle ci

Source avec Zip CLASS PHP :: REQUÊTES MYSQL par devgoneti
Source avec Zip RECHERCHE DES DOUBLONS DANS UNE TABLE MYSQL EN SÉLECTIONNANT... par aladec2007
Source avec Zip Source avec une capture EL COYOTOS LIVRE D'OR PHP 5 par elcoyotos
CONVERTIR RAPIDEMENT UNE TABLE MYSQL EN FICHIER XML SANS PRE... par mmconcept
PROGRAMMER DES COPIES DE TABLES SUR UNE BASE MYSQL par antoinedi

Commentaires et avis

Commentaire de malalam le 18/05/2006 13:47:59 administrateur CS

Hello,

pourquoi une expression régulière ? Vu ton utilisation, strpos() voire stripos (), suffirait.

Ensuite, en l'état, ça me parait dangereux ton bin's. Il aurait été plus appréciable d'avoir une petite interface de recherche.
Je recherche les tables commençant par 'tbl_'. La liste s'affiche, avec des checkboxes cochées par défaut, par exemple. Et je clique sur suppression pour supprimer toutes les tables cochées.
C'est pas beaucoup plus long ou difficile à écrire, et ce serait bien plus pratique.

Commentaire de malalam le 18/05/2006 13:56:54 administrateur CS

Et sinon, ce n'est pas génialement codé :
- je suis en register_globals à Off, perso. Alors utilise plutôt $_SERVER['PHP_SELF']. Et de toutes façons, pas besoin de foutre un attribut action dans ton formulaire, si le formulaire doit rediriger sur la page sur laquelle il est. ET puis encore : action="<?$PHP_SELF;?>", ça, ça ne fait rien. Faudrait faire un echo de ta variable...et <? ne fonctionne pas chez moi non plus, je suis en short_open_tags ) Off (je sais, je suis pénible ;-) ).
- l'attribut name est déprécié pour les éléments form.
- tous les éléments html devraient être fermés : <input... />, <br />, ... etc.
- les apostrophes sont plus rapides que les guillemets, dans le cadre d'un echo. Mais bon...à la limite...c'est pas très grave.
- eregi () est lent. Généralement, les preg_* sont plus rapides.
- strcmp pour vérfier à quoi est égal un post, j'avais jamais vu ça...! Pourquoi utiliser une fonction alors que tu peux comparer directement...??? En plus, t'en fais 2 à la suite, alors qu'un if...else suffirait.

Bref...l'idée est bonne, la réalisation nettement moins.

Commentaire de BaroqueW le 18/05/2006 15:22:17

J'ai fait le script pour mon utilisation personnelle, donc tout n'est pas optimisé (notamment les echo""...) et il n'y a pas de garde-fou (à part la mention du fait que le script ne demande pas confirmation avant effacement, mais je vais regarder ça plus tard).
Les balises pas fermées et les champs dépréciés, je m'en soucie pas trop, surtout quand c'est un éditeur wysiwyg qui me fait les forms mais j'ai corrigé quand même.
Pour le action="<?$PHP_SELF;?>", j'ai vu sur un site que ça faisait ce que je voulais, et en effet ça marchait, mais je n'ai pas réalisé que ça ne faisait rien, merci bien donc pour la correction.
Les regexp, c'est parce que j'en sortais sur un autre projet donc j'en ai sorti là encore, mais en effet, strpos va très bien. Par contre stripos ne marche pas sur mon serveur.
Le strcomp, en effet, c'est moyen, mais ça me vient des langages ou comparer des chaînes ne se fait pas si simplement...
Merci bien pour les commentaires en tout cas, je me coucherai moins bête ce soir.

Baro

Commentaire de thepiouf01 le 20/05/2010 22:19:15

Genial, merci, c'est tout ce dont j'avais besoin ! Même pas eu la peine d'écrire un script; grâce au tiens j'ai nettoyé ma BDD en quelques secondes =)

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

problème de mise à jour de base de données [ par rildspael ] Ben en fait maintenant j'ai refait ce code, je me suis concentré, j'ai tout analysé mais rien ne marche encore et je ne comprends pas : le voici :Donc Tester la présence d'une table MySQL ? [ par Skyride ] BonsoirEst ce quelqu'un pourrait me renseigner s'il est possible de tester la présence d'une table dans une base de données MySQL ?------------------- pb sur mysql avec requete select * from TABLE IN (select ...) [ par malibu23 ] Salut j ai un pb sur mysql lorsque je fais un requetedu type select CHAMP from TABLE where CHAMP IN ( select CHAMP from TABLE where CHAMP = VARIABLE); Récupération du contenu d'une table Mysql en PHP [ par BSide ] Bonjour,dans ma table TABLE se trouvent 3 champs C1, C2 et C3 que je renseigne par un formulaire + INSERT INTO etc.Actuellement se trouvent dans TABLE Datetime et MySQL [ par DarkSchneider ] Bonjour, Encore un problème, un de plus.Cette fois-ci, c'est les dates.Dans ma base MySQL, j'ai crée une table avec divers champs, dont un se nomm Nom d'une table MySQL [ par QuarX ] Est-il possible de créer une table MySQL possédant un nom provenant d'une variable php? Par exemple:$nom = "Nom";$creation = "CREATE TABLE $nom(...)"; QMailAdmin et MySQL [ par viny56fr ] Salut à tous !J'ai un problème avec QMail :Théoriquement (!) on doit pouvoir configurer une liste de diffusion avec une prise en charge de l'archivage Update des champs d'une table mysql [ par twiems ] Twiemssaluten effet comme le titre l'indique j'ai un sérieux probleme pour mettre à jour un tuple (ou enregistrement) de ma table mysql par le biais d mysql dernier entrer [ par titiseb28 ] Bonjour je voudrait savoire comment faire pour affiche la derniere entrer d'une table mysql ??dans ma table g 2 champ un ip(adresse ip) et l'autre dat Afficher une ligne d'une table mysql [ par Alferox ] Bonjours,bon bin une question de base toute con.Je voudrais afficher uniquement la ligne qui port l'id 2 d'une table. Il n'y a pas plus simple que de


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 4,680 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales