Détermination de l'existence et de la création d'une table dans SQL Server 2008
Dans SQL Server 2008, une exigence courante est la possibilité de vérifier si une table existe dans une base de données et, sinon, créez-le à la volée. Ceci est particulièrement utile dans les routines de manipulation de données ou les scénarios impliquant la création de tables dynamiques.
Vérification de l'existence d'une table
Pour vérifier si une table existe dans une base de données, utilisez la syntaxe suivante :
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[TableName]') AND type in (N'U'))
Ici, nous interrogeons la table système sys.objects pour déterminer si un objet avec le nom et le type spécifiés (dans ce cas, un table) existe dans le schéma dbo. Si la requête ne renvoie aucune ligne, la table n'existe pas.
Créer une table si elle n'existe pas
Pour créer une table si elle n'existe pas, utilisez l'instruction CREATE TABLE. Par exemple :
CREATE TABLE [dbo].[TableName]( .... .... .... )
Combinaison des vérifications
Vous pouvez combiner la vérification de l'existence et la création de la table en une seule instruction à l'aide d'une instruction conditionnelle comme suit :
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[TableName]') AND type in (N'U')) BEGIN CREATE TABLE [dbo].[TableName]( .... .... .... ) END
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!