Bonjour,
Suis en train de créer une table avec une colonne "eServiceName". Dans cette
table je ne peux avoir que 2 choix: soit "microsoft" soit "belgacom". Pour ce
faire, quel genre de datatype puis-je choisir (sql server 2008) ?
Merci d'avance,
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
EmanuelL
Salut Fred,
CREATE TABLE [dbo].[Test]( [No_Ligne] [int] IDENTITY(1,1) NOT NULL, [eServiceName] [varchar](20) NOT NULL CONSTRAINT [PK_No_Ligne] PRIMARY KEY CLUSTERED(No_Ligne ASC) CHECK ([eServiceName] IN ('Belgacom', 'Microsoft')));
Une autre solution serait de créer une table ServiceName et de mettre les 2 lignes, ensuite dans la table Test tu ajoutes sa clef primaire comme clef étrangère, voir exemple ci-dessous.
CREATE TABLE [dbo].[eService]( [eService_Id] [int] IDENTITY(1,1) NOT NULL, [eServiceName] [varchar](20) NOT NULL CONSTRAINT [PK_eService_Id] PRIMARY KEY CLUSTERED(eService_Id ASC)); GO
INSERT INTO [dbo].[eService]([eServiceName]) VALUES('Belgacom') GO
INSERT INTO [dbo].[eService]([eServiceName]) VALUES('Microsoft') GO
CREATE TABLE [dbo].[Test]( [No_Ligne] [int] IDENTITY(1,1) NOT NULL, [eService_Id] [int] NOT NULL CONSTRAINT [PK_No_Ligne] PRIMARY KEY CLUSTERED(No_Ligne ASC)); GO
ALTER TABLE [dbo].[Test] WITH CHECK ADD CONSTRAINT [FK_Test_eService_Id_ESTE] FOREIGN KEY([eService_Id]) REFERENCES [dbo].[eService] ([eService_Id]); GO
ALTER TABLE [dbo].[Test] CHECK CONSTRAINT [FK_Test_eService_Id_ESTE]; GO
A+ ;-)
Fred avait soumis l'idée :
Bonjour, Suis en train de créer une table avec une colonne "eServiceName". Dans cette table je ne peux avoir que 2 choix: soit "microsoft" soit "belgacom". Pour ce faire, quel genre de datatype puis-je choisir (sql server 2008) ? Merci d'avance,
--
*!* ----------------------------------- EmanuelL Membre d'AtoutFox www.atoutfox.org
Salut Fred,
CREATE TABLE [dbo].[Test](
[No_Ligne] [int] IDENTITY(1,1) NOT NULL,
[eServiceName] [varchar](20) NOT NULL
CONSTRAINT [PK_No_Ligne]
PRIMARY KEY CLUSTERED(No_Ligne ASC)
CHECK ([eServiceName] IN ('Belgacom', 'Microsoft')));
Une autre solution serait de créer une table ServiceName et de mettre
les 2 lignes, ensuite dans la table Test tu ajoutes sa clef primaire
comme clef étrangère, voir exemple ci-dessous.
CREATE TABLE [dbo].[eService](
[eService_Id] [int] IDENTITY(1,1) NOT NULL,
[eServiceName] [varchar](20) NOT NULL
CONSTRAINT [PK_eService_Id]
PRIMARY KEY CLUSTERED(eService_Id ASC));
GO
INSERT INTO [dbo].[eService]([eServiceName])
VALUES('Belgacom')
GO
INSERT INTO [dbo].[eService]([eServiceName])
VALUES('Microsoft')
GO
CREATE TABLE [dbo].[Test](
[No_Ligne] [int] IDENTITY(1,1) NOT NULL,
[eService_Id] [int] NOT NULL
CONSTRAINT [PK_No_Ligne]
PRIMARY KEY CLUSTERED(No_Ligne ASC));
GO
ALTER TABLE [dbo].[Test]
WITH CHECK ADD CONSTRAINT [FK_Test_eService_Id_ESTE]
FOREIGN KEY([eService_Id])
REFERENCES [dbo].[eService] ([eService_Id]);
GO
ALTER TABLE [dbo].[Test]
CHECK CONSTRAINT [FK_Test_eService_Id_ESTE];
GO
A+ ;-)
Fred avait soumis l'idée :
Bonjour,
Suis en train de créer une table avec une colonne "eServiceName". Dans cette
table je ne peux avoir que 2 choix: soit "microsoft" soit "belgacom". Pour ce
faire, quel genre de datatype puis-je choisir (sql server 2008) ?
Merci d'avance,
--
*!* -----------------------------------
EmanuelL
Membre d'AtoutFox
www.atoutfox.org
CREATE TABLE [dbo].[Test]( [No_Ligne] [int] IDENTITY(1,1) NOT NULL, [eServiceName] [varchar](20) NOT NULL CONSTRAINT [PK_No_Ligne] PRIMARY KEY CLUSTERED(No_Ligne ASC) CHECK ([eServiceName] IN ('Belgacom', 'Microsoft')));
Une autre solution serait de créer une table ServiceName et de mettre les 2 lignes, ensuite dans la table Test tu ajoutes sa clef primaire comme clef étrangère, voir exemple ci-dessous.
CREATE TABLE [dbo].[eService]( [eService_Id] [int] IDENTITY(1,1) NOT NULL, [eServiceName] [varchar](20) NOT NULL CONSTRAINT [PK_eService_Id] PRIMARY KEY CLUSTERED(eService_Id ASC)); GO
INSERT INTO [dbo].[eService]([eServiceName]) VALUES('Belgacom') GO
INSERT INTO [dbo].[eService]([eServiceName]) VALUES('Microsoft') GO
CREATE TABLE [dbo].[Test]( [No_Ligne] [int] IDENTITY(1,1) NOT NULL, [eService_Id] [int] NOT NULL CONSTRAINT [PK_No_Ligne] PRIMARY KEY CLUSTERED(No_Ligne ASC)); GO
ALTER TABLE [dbo].[Test] WITH CHECK ADD CONSTRAINT [FK_Test_eService_Id_ESTE] FOREIGN KEY([eService_Id]) REFERENCES [dbo].[eService] ([eService_Id]); GO
ALTER TABLE [dbo].[Test] CHECK CONSTRAINT [FK_Test_eService_Id_ESTE]; GO
A+ ;-)
Fred avait soumis l'idée :
Bonjour, Suis en train de créer une table avec une colonne "eServiceName". Dans cette table je ne peux avoir que 2 choix: soit "microsoft" soit "belgacom". Pour ce faire, quel genre de datatype puis-je choisir (sql server 2008) ? Merci d'avance,
--
*!* ----------------------------------- EmanuelL Membre d'AtoutFox www.atoutfox.org
Fred
Parfait, merci bcp !
"EmanuelL" a écrit :
Salut Fred,
CREATE TABLE [dbo].[Test]( [No_Ligne] [int] IDENTITY(1,1) NOT NULL, [eServiceName] [varchar](20) NOT NULL CONSTRAINT [PK_No_Ligne] PRIMARY KEY CLUSTERED(No_Ligne ASC) CHECK ([eServiceName] IN ('Belgacom', 'Microsoft')));
Une autre solution serait de créer une table ServiceName et de mettre les 2 lignes, ensuite dans la table Test tu ajoutes sa clef primaire comme clef étrangère, voir exemple ci-dessous.
CREATE TABLE [dbo].[eService]( [eService_Id] [int] IDENTITY(1,1) NOT NULL, [eServiceName] [varchar](20) NOT NULL CONSTRAINT [PK_eService_Id] PRIMARY KEY CLUSTERED(eService_Id ASC)); GO
INSERT INTO [dbo].[eService]([eServiceName]) VALUES('Belgacom') GO
INSERT INTO [dbo].[eService]([eServiceName]) VALUES('Microsoft') GO
CREATE TABLE [dbo].[Test]( [No_Ligne] [int] IDENTITY(1,1) NOT NULL, [eService_Id] [int] NOT NULL CONSTRAINT [PK_No_Ligne] PRIMARY KEY CLUSTERED(No_Ligne ASC)); GO
ALTER TABLE [dbo].[Test] WITH CHECK ADD CONSTRAINT [FK_Test_eService_Id_ESTE] FOREIGN KEY([eService_Id]) REFERENCES [dbo].[eService] ([eService_Id]); GO
ALTER TABLE [dbo].[Test] CHECK CONSTRAINT [FK_Test_eService_Id_ESTE]; GO
A+ ;-)
Fred avait soumis l'idée : > Bonjour, > Suis en train de créer une table avec une colonne "eServiceName". Dans cette > table je ne peux avoir que 2 choix: soit "microsoft" soit "belgacom". Pour ce > faire, quel genre de datatype puis-je choisir (sql server 2008) ? > Merci d'avance,
--
*!* ----------------------------------- EmanuelL Membre d'AtoutFox www.atoutfox.org
Parfait, merci bcp !
"EmanuelL" a écrit :
Salut Fred,
CREATE TABLE [dbo].[Test](
[No_Ligne] [int] IDENTITY(1,1) NOT NULL,
[eServiceName] [varchar](20) NOT NULL
CONSTRAINT [PK_No_Ligne]
PRIMARY KEY CLUSTERED(No_Ligne ASC)
CHECK ([eServiceName] IN ('Belgacom', 'Microsoft')));
Une autre solution serait de créer une table ServiceName et de mettre
les 2 lignes, ensuite dans la table Test tu ajoutes sa clef primaire
comme clef étrangère, voir exemple ci-dessous.
CREATE TABLE [dbo].[eService](
[eService_Id] [int] IDENTITY(1,1) NOT NULL,
[eServiceName] [varchar](20) NOT NULL
CONSTRAINT [PK_eService_Id]
PRIMARY KEY CLUSTERED(eService_Id ASC));
GO
INSERT INTO [dbo].[eService]([eServiceName])
VALUES('Belgacom')
GO
INSERT INTO [dbo].[eService]([eServiceName])
VALUES('Microsoft')
GO
CREATE TABLE [dbo].[Test](
[No_Ligne] [int] IDENTITY(1,1) NOT NULL,
[eService_Id] [int] NOT NULL
CONSTRAINT [PK_No_Ligne]
PRIMARY KEY CLUSTERED(No_Ligne ASC));
GO
ALTER TABLE [dbo].[Test]
WITH CHECK ADD CONSTRAINT [FK_Test_eService_Id_ESTE]
FOREIGN KEY([eService_Id])
REFERENCES [dbo].[eService] ([eService_Id]);
GO
ALTER TABLE [dbo].[Test]
CHECK CONSTRAINT [FK_Test_eService_Id_ESTE];
GO
A+ ;-)
Fred avait soumis l'idée :
> Bonjour,
> Suis en train de créer une table avec une colonne "eServiceName". Dans cette
> table je ne peux avoir que 2 choix: soit "microsoft" soit "belgacom". Pour ce
> faire, quel genre de datatype puis-je choisir (sql server 2008) ?
> Merci d'avance,
--
*!* -----------------------------------
EmanuelL
Membre d'AtoutFox
www.atoutfox.org
CREATE TABLE [dbo].[Test]( [No_Ligne] [int] IDENTITY(1,1) NOT NULL, [eServiceName] [varchar](20) NOT NULL CONSTRAINT [PK_No_Ligne] PRIMARY KEY CLUSTERED(No_Ligne ASC) CHECK ([eServiceName] IN ('Belgacom', 'Microsoft')));
Une autre solution serait de créer une table ServiceName et de mettre les 2 lignes, ensuite dans la table Test tu ajoutes sa clef primaire comme clef étrangère, voir exemple ci-dessous.
CREATE TABLE [dbo].[eService]( [eService_Id] [int] IDENTITY(1,1) NOT NULL, [eServiceName] [varchar](20) NOT NULL CONSTRAINT [PK_eService_Id] PRIMARY KEY CLUSTERED(eService_Id ASC)); GO
INSERT INTO [dbo].[eService]([eServiceName]) VALUES('Belgacom') GO
INSERT INTO [dbo].[eService]([eServiceName]) VALUES('Microsoft') GO
CREATE TABLE [dbo].[Test]( [No_Ligne] [int] IDENTITY(1,1) NOT NULL, [eService_Id] [int] NOT NULL CONSTRAINT [PK_No_Ligne] PRIMARY KEY CLUSTERED(No_Ligne ASC)); GO
ALTER TABLE [dbo].[Test] WITH CHECK ADD CONSTRAINT [FK_Test_eService_Id_ESTE] FOREIGN KEY([eService_Id]) REFERENCES [dbo].[eService] ([eService_Id]); GO
ALTER TABLE [dbo].[Test] CHECK CONSTRAINT [FK_Test_eService_Id_ESTE]; GO
A+ ;-)
Fred avait soumis l'idée : > Bonjour, > Suis en train de créer une table avec une colonne "eServiceName". Dans cette > table je ne peux avoir que 2 choix: soit "microsoft" soit "belgacom". Pour ce > faire, quel genre de datatype puis-je choisir (sql server 2008) ? > Merci d'avance,
--
*!* ----------------------------------- EmanuelL Membre d'AtoutFox www.atoutfox.org