RFc Networking e Informatica
Pubblicata su RFc Networking e Informatica (https://www.rfc.it)

Home > Rinominare le tabelle di mySQL

Rinominare le tabelle di mySQL

Inviato da fabrizio il Mer, 06/05/2015 - 23:15

Rinominare tutte le tabelle di un DB mySQL con un prefisso è utile in molte occasioni. Un modo è il seguente.

Il comando

SELECT Concat('RENAME TABLE ', TABLE_NAME, ' TO my_prefix_', TABLE_NAME, ';') FROM information_schema.tables WHERE table_schema = 'my_database'

dove my_prefix_ è il prefisso e my_database è il nome del DB

costruisce il comando RENAME TABLE vecchio_nome TO nuovo_nome per ogni tabella presente nel database

Ci si ritrova con un elenco tipo questo (sono tabelle di un db di Drupal)

RENAME TABLE rules_rules TO nuovo_rules_rules;
RENAME TABLE rules_sets TO nuovo_rules_sets;
RENAME TABLE search_dataset TO nuovo_search_dataset;
RENAME TABLE search_index TO nuovo_search_index;
RENAME TABLE search_node_links TO nuovo_search_node_links;
RENAME TABLE search_total TO nuovo_search_total;
RENAME TABLE security_review TO nuovo_security_review;
RENAME TABLE semaphore TO nuovo_semaphore;
RENAME TABLE sessions TO nuovo_sessions;
RENAME TABLE simplereservation_item TO nuovo_simplereservation_item;
RENAME TABLE simplereservation_reservation TO nuovo_simplereservation_reservation;    
RENAME TABLE system TO nuovo_system;
RENAME TABLE term_data TO nuovo_term_data;

A questo punto non resta che copiare le righe restituite ed usarle come comando SQL per rinominare le tabelle.

Ovviamente le stessa tecnica è utilizzabile per fare manipolazioni dei nomi dei database, non solo per aggiungere un prefisso.

 

Forums: 
Drupal [1]

RFc -Restori Fabrizio Consulenze-  S.da Buffolara, 67 -43126 Parma- Tel. +39 335 240228 Fax +39 0521 940035   P.IVA 01788460341

webmaster: Fabrizio
Note

var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-37939674-1']); _gaq.push(['_trackPageview']); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); })();
var _paq = _paq || []; _paq.push(["trackPageView"]); _paq.push(["enableLinkTracking"]); (function() { var u=(("https:" == document.location.protocol) ? "https" : "http") + "://www.rfc.it/piwik/"; _paq.push(["setTrackerUrl", u+"piwik.php"]); _paq.push(["setSiteId", "1"]); var d=document, g=d.createElement("script"), s=d.getElementsByTagName("script")[0]; g.type="text/javascript"; g.defer=true; g.async=true; g.src=u+"piwik.js"; s.parentNode.insertBefore(g,s); })();

URL di origine:https://www.rfc.it/forum/drupal/rinominare-le-tabelle-mysql

Links
[1] https://www.rfc.it/forums/informatica/drupal