Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    101

    First o After column_name!

    Non so se sono affetto da qualche stregoneria o cosa, ma non capisco perchè in una tabella diciamo formata da due colonne "id", "valore", se inserisco un'altra colonna con il sistema:

    alter table table_name add column
    column_name int not null
    after id;
    va tutto bene e la colonna me la inserisce fra le due colonne("id", "column_name", "valore"),

    ma se uso il metodo:

    alter table table_name add column
    column_name int not null
    first valore;
    mi da errore di sintassi 'near valore'!


    Grazie per ora!
    Ciao.

  2. #2
    codice:
    alter table table_name 
    add column_name int not null
    first;
    first per mettere per primo, after dopo un campo, oppure il default per ultimo.


    @ edit

    first = primo
    prima di = before

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

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    101
    Ciao Piero.mac,

    il tuo consiglio ha funzionato (non sapevo dell'esistenza del 'before'), ma ti voglio chiedere un altro aiuto;
    La colonna l'ho aggiunta ad una tabella di 'lookup' fatta in questo modo:

    col1 int not null,
    col2 int not null,
    col3 int not null,
    primary key(col1, col2, col3);

    ora, aggiungendo la colonna(col4) con il metodo mostratomi da te, voglio che la colonna diventi non solo una colonna
    col4 int not null,

    ma si aggiunga anche come
    primary key(col1, col2, col3, col4);

    Ho provato ad aggiungerla con questa dichiarazione
    alter table table_name add column
    col4 int not null primary key
    first;
    ma mi da errore, 'Multiple primary key is defined'.

    Quindi concludendo, la mia tabella ora è fatta in questo modo:
    col4 int not null (è qui per via del 'first' e mi va benissimo),
    col1 int not null,
    col2 int not null,
    col3 int not null,
    primary key(col1, col2, col3);
    come aggiungere col4 alla colonna primary key?

    Grazie e ciao!

  4. #4
    devi eliminare la chiave primaria e rifarla come credi.


    occhio che non ho detto che esiste l'istruzione "before", ma che per fare quello che volevi fare tu sarebbe stata necessaria una tale istruzione....

    first = primo
    after = dopo di (si presume quindi non sia il primo)
    per default = ultimo campo



    un before (in qualche DBMS esiste) sarebbe un prima di.... cosa che tu volevi fare con "first campo"

    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.