J'ai besoin d'une requête SQL qui ajoute une nouvelle colonne après une colonne existante, donc la colonne sera ajoutée dans un ordre spécifique.
S'il vous plaît suggérez-moi si une ALTER
qui le fait.
J'ai besoin d'une requête SQL qui ajoute une nouvelle colonne après une colonne existante, donc la colonne sera ajoutée dans un ordre spécifique.
S'il vous plaît suggérez-moi si une ALTER
qui le fait.
Microsoft SQL (AFAIK) ne vous permet pas de modifier la table et d'ajouter une colonne après une colonne spécifique. Votre meilleur pari est d'utiliser Sql Server Management Studio, ou de jouer en supprimant et en rajoutant la table, ou en créant une nouvelle table et en déplaçant les données manuellement. ni l'un ni l'autre ne sont très gracieux.
MySQL fait cependant :
ALTER TABLE mytable
ADD COLUMN new_column <type>
AFTER existing_column
C'est possible.
Tout d'abord, ajoutez simplement chaque colonne de la manière habituelle (comme la dernière colonne).
Deuxièmement, dans SQL Server Management Studio
Entrez dans Outils => Options.
Sous l'onglet 'Designers' => menu 'Table and Database Designers', décochez l'option 'Empêcher l'enregistrement des modifications nécessitant une recréation de la table'.
Ensuite, faites un clic droit sur votre table et choisissez 'Design'. En mode 'Design', faites simplement glisser les colonnes pour les ordonner.
N'oubliez pas de sauvegarder.
Si vous souhaitez modifier l'ordre des colonnes dans le serveur SQL, il n'existe actuellement aucun moyen direct de le faire dans SQL Server.
Jetez un œil à http://blog.sqlauthority.com/2008/04/08/sql-server-change-order-of-column-in-database-tables/
Vous pouvez modifier l'ordre tout en modifiant la conception de la table.
Ajoutez d'abord la nouvelle colonne à l'ancienne table via SSMStudio. Allez dans la base de données >> table >> colonnes. Faites un clic droit sur les colonnes et choisissez une nouvelle colonne . Suivez l'assistant. Créez ensuite la nouvelle table avec les colonnes ordonnées comme vous le souhaitez comme suit :
select * into my_new_table from (
select old_col1, my_new_col, old_col2, old_col3
from my_old_table
) as A
;
Renommez ensuite les tables comme vous le souhaitez via SSMStudio. Allez dans la base de données >> table >> choisissez renommer.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.