Est-il possible de créer une table avec la même disposition qu'une vue dans SQL Server 2005?
-
03-07-2019 - |
Question
Je ne peux pas vraiment penser à la meilleure façon de formuler cette question, je vais donc donner un exemple. Supposons que ma table soit créée comme ceci:
CREATE VIEW People
AS
SELECT
id, --int
name, --varchar(20)
birthdate --datetime
FROM SomeTable
Si je souhaite changer cela d'une vue à une table physique, existe-t-il un moyen de créer une table avec la même présentation?
En d'autres termes, je souhaite utiliser cette vue et créer un tableau comme celui-ci:
CREATE TABLE People(
id int,
name varchar(20),
birtdate datetime
)
... mais sans avoir à écrire manuellement cette requête.
Ceci est bien sûr un exemple artificiel. La vue contient de nombreux champs contenant de nombreux types de données. Il serait donc difficile de le faire manuellement.
La solution
Que diriez-vous de
SELECT * INTO MyNewTable FROM MyView
ET si vous ne voulez pas le contenu, juste la structure
SELECT * INTO MyNewTable FROM MyView WHERE 1 = 2
Autres conseils
SELECT *
INTO People_Table
FROM People_View
Sélectionnez * INTO PeopleTable FROM People