Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Problema nel rinominare colonne

    Qui sotto c'è una funzione che ho scriito in java per la modifica del nome delle colonne di una tabella di un database access:
    Il problema è il seguente:
    Quando lancio la funzione mi dice che la sintassi di ALTER TABLE è errata:
    FUNZIONE

    public void ModificaNomeColonna(String NomeTab,String NomeCol,String NuovoNome) throws Exception

    {

    String NomeTabella=NomeTab;

    String NomeColonna=NomeCol;

    String NuovoNomeColonna=NuovoNome;

    String sql="ALTER TABLE "+NomeTabella+" RENAME COLUMN "+NomeColonna+" TO "+NuovoNomeColonna+"";


    try
    {
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    Connection connessione = DriverManager.getConnection(data, "", "");
    Statement stato=connessione.createStatement();
    System.out.println(sql);
    stato.executeUpdate("ALTER TABLE Tabella1 RENAME cognome TO Nomeo");
    stato.close();
    }catch (SQLException s) {
    String Errore = "Errore... " + s.toString();
    JOptionPane.showMessageDialog(null,Errore);

    }catch (Exception e) {
    System.out.println("Errore Generico in Rimozione Tabella");
    }




    Dal system.out.printl mi viene fuori che la stringa sql è la seguente:
    ALTER TABLE miatabella RENAME nome TO nome1
    Dove miatabella è il nome della tabella nella quale devo modificare il nome della colonna da nome a nome1.
    Perchè la sintassi è sbagliata?
    ho provato anche ALTER TABLE miatabella RENAME COLUMN nome TO nome1
    Grazie

  2. #2
    Utente di HTML.it L'avatar di userfra
    Registrato dal
    Jul 2001
    Messaggi
    1,418

    Re: Problema nel rinominare colonne

    Originariamente inviato da cryptofer
    Qui sotto c'è una funzione che ho scriito in java per la modifica del nome delle colonne di una tabella di un database access:
    Il problema è il seguente:
    Quando lancio la funzione mi dice che la sintassi di ALTER TABLE è errata:
    FUNZIONE

    public void ModificaNomeColonna(String NomeTab,String NomeCol,String NuovoNome) throws Exception

    {

    String NomeTabella=NomeTab;

    String NomeColonna=NomeCol;

    String NuovoNomeColonna=NuovoNome;

    String sql="ALTER TABLE "+NomeTabella+" RENAME COLUMN "+NomeColonna+" TO "+NuovoNomeColonna+"";


    try
    {
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    Connection connessione = DriverManager.getConnection(data, "", "");
    Statement stato=connessione.createStatement();
    System.out.println(sql);
    stato.executeUpdate("ALTER TABLE Tabella1 RENAME cognome TO Nomeo");
    stato.close();
    }catch (SQLException s) {
    String Errore = "Errore... " + s.toString();
    JOptionPane.showMessageDialog(null,Errore);

    }catch (Exception e) {
    System.out.println("Errore Generico in Rimozione Tabella");
    }




    Dal system.out.printl mi viene fuori che la stringa sql è la seguente:
    ALTER TABLE miatabella RENAME nome TO nome1
    Dove miatabella è il nome della tabella nella quale devo modificare il nome della colonna da nome a nome1.
    Perchè la sintassi è sbagliata?
    ho provato anche ALTER TABLE miatabella RENAME COLUMN nome TO nome1
    Grazie
    Ciao

    al sintassi corretta è questa:

    ALTER TABLE<Tabella>
    [ADD <Nome_colonna>, <Tipo_Colonna>, [Vincoli colonna]]
    [DROP <Nome_Colonna>(RESTRICT/CASCADE)]
    -------------------------------------------------
    Il fumo nuoce gravemente alla salute

  3. #3
    Si ma con quella sintassi io posso solo creare ed eliminare colonne oppure mi sbaglio?
    potresti perfavore farmi un esempio?
    grazie.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.