Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2001
    Messaggi
    48

    rinominare più campi MySql contemporaneamente

    Salve, sto migrando da un CMS (MD-Pro, una fork di Post-Nuke) verso un sistema proprietario. Ora avrei bisogno di scrivere una piccola funzione PHP che rinomini i nomi dei campi di alcune tabelle; ho una logica precisa per la gestione dei nomi, e cioè

    1) un prefisso "fisso" per la tabella + nome tabella
    2) nometabella+nome campo

    ESEMPIO: una tabella prefisso_clienti con dentro dei campi come clienti_id, clienti_nome, clienti_cognome etc

    Attualmente, le tabelle di Postnuke sono invece tutte prefisso_tabella con campi pn_campo01, pn_campo02, pn_campo03

    Come posso fare a rinominare con una funzione PHP TUTTI i campi? Vorrei almeno rinominare quel maledetto pn_ nel nome della tabella..L'istruzione CHANGE di sql prevede il re-inserimento degli attributi del campo, cosa non proponibile per ovvie ragioni... non ho bisogno di spiegazioni particolari su cicli while/if/for, è che proprio non capisco quale possa essere la query sql da eseguire per rinominare più campi alla volta senza specificare attributi o almeno facendo in modo che li legga in automatico! HELP ME OUT PLEASE!

    Darìo

  2. #2
    Contemporaneamente ??? Nulla avviene contemporaneamente...
    Fai una Funzione che modifica un campo alla volta...
    PoWered by:
    Gentoo 1.5.3 - Kernel 2.6.7
    Debian Sid - Kernel 2.6.7 - Bash 3.0
    Slackware current - Kernel 2.6.7

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2001
    Messaggi
    48
    ok, la funzione l'ho pure iniziata a scrivere, ma se non specifico gli attributi del campo non me la rinomina!! E mi sembra assurdo non poter fare un operazione di "rinomina" pura e semplice...oltretutto, seppur specificando gli attributi dei campi (con i vari mysq_field_len, type etc) a volte l'ordine degli attributi letto da php non sembra essere "compatibile" con quello di mysql...se invece li specifico a mano (copiandoli dal DDL del database) va alla grande...

    insomma, una semplice domanda: qual è la sintassi piu' rapida per rinominare una colonna/campo in SQL? Thx a lot, Darìo

    PS se poi qualcuno sa anche come leggere il valore di default di un campo MySQL in php...io proprio non ci riesco

  4. #4
    SHOW COLUMNS FROM tabella

    ti da i seguenti campi per ogni colonna.

    Field - Type - Null - Key - Default - Extra


    Una cosa del tipo che fai l'avevo velocemente risolta cosi':

    1) show create table tabella.
    2) modificato il solo nome dei campi e tabella.
    3) creata una tabella gemella (rinominata)
    4) INSERT .... SELECT...

    Ovviamente da phpmyadmin.


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.