2009-04-24 8 views
2

Bonjour,SQL Server 2005: comment ajouter une colonne à une table au début de la table?

Lorsque nous ajoutons une colonne à une table, elle est ajoutée à la fin de la table. Cependant, J'ai vraiment besoin d'ajouter une colonne au début de la table. La raison en est que nous avons des scripts qui importent des données d'une source de fichier plat vers une table, et qu'il serait vraiment plus facile pour nous d'avoir les colonnes au début de la table.

Merci!

sql server 2005

Répondre

3

Méthode GUI: dans SQL Server Management Studio si vous cliquez avec le bouton droit de la souris sur la table et choisissez "Design", vous pouvez ensuite faire glisser la colonne vers le haut et frapper enregistrer.

Remarque: Sachez qu'en faisant cela, SQL Server supprime la table et crée à nouveau. Vous ne perdrez pas vos données cependant.

+0

Superbe, je vous remercie! –

+2

Soyez conscient que cela fait effectivement tomber l'ancienne table et crée/remplit une nouvelle table à sa place. Je ne recommanderais vraiment pas cela pour les grandes tables, bien que ce soit votre seule option si la nouvelle colonne doit absolument être au début. – LukeH

+0

Ancien thread, mais dans le cas où cela mord quelqu'un d'autre: Allez dans Outils/Options/Concepteurs/"Concepteurs de tables et de bases de données" et augmentez la valeur "Transaction time-out after:" avant de l'essayer sur une grande table. – amonroejj

0

Goutte et recréer la table avec la nouvelle structure. (Ou renommer les données existantes, en créer de nouvelles et les insérer)

Il n'y a pas d'instruction ALTER que vous pouvez exécuter pour l'insérer au début.

Même si vous utilisez SQL 2005 Management Studio et que vous insérez une colonne au début, c'est ce qu'il fait derrière la scène lorsque vous cliquez sur Enregistrer. (renommer la table d'origine, créer la nouvelle table, insérer les données)

0

Les réponses à votre question sont dans le lien ci-dessous!

http://www.tech-recipes.com/rx/378/add-a-column-to-an-existing-mysql-table/

+1

Bienvenue dans Stack Overflow! Bien que cela puisse théoriquement répondre à la question, [il serait préférable] (http://meta.stackexchange.com/q/8259) d'inclure ici les parties essentielles de la réponse et de fournir le lien pour référence. –

6
ALTER TABLE table_name ADD COLUMN column_name FIRST; 
Questions connexes