Bonjour
En MySql il existe la commande IF EXISTS permettant "entre autre" de verifier si une table exite avant de faire un Drop
Code:DROP Table IF EXISTS 'MaTable'
Comment puis-je faire cela en Sql Server ?
Merci de votre aide
Version imprimable
Bonjour
En MySql il existe la commande IF EXISTS permettant "entre autre" de verifier si une table exite avant de faire un Drop
Code:DROP Table IF EXISTS 'MaTable'
Comment puis-je faire cela en Sql Server ?
Merci de votre aide
bonjour
j'espere que ca va t'aider:
Code:
1
2
3 if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[TableName]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[TableName]
Bonjour,
La table système sysobjects est obsolète depuis SQL Server 2005 ... ;)
Donc au standard SQL, on peut écrire :
Au standard T-SQL de SQL Server, on peut écrire :Code:
1
2
3
4
5
6
7
8
9
10 IF EXISTS ( SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = 'dbo' AND TABLE_NAME = 'maTable' ) BEGIN DROP TABLE dbo.maTable ENDGO
Ou encore, version courte :Code:
1
2
3
4
5
6
7
8
9
10
11
12 IF EXISTS ( SELECT * FROM sys.tables AS T INNER JOIN sys.schemas AS S WHERE S.name = 'dbo' AND T.name = 'maTable' ) BEGIN DROP TABLE dbo.maTable END GO
@++ ;)Code:
1
2
3
4 IF OBJECT_ID('dbo.spt_fallback_dev') IS NOT NULL BEGIN DROP TABLE dbo.maTable END
Merci elsuket
Mais c'est quand meme moins trivial que MySql ce coup là !!;)
Je te l'accorde ;)
En revanche je doute sincèrement que DROP TABLE IF EXISTS 'MaTable' soit à la norme :aie:
@++ ;)Citation:
Envoyé par Michel Denisot