bonjour,

J'ai une table projet dans ma base de donnée sql serveur 2008.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
CREATE TABLE [dbo].[Project](
	[ProjectID] [int] IDENTITY(1,1) NOT NULL,
	[PoleID] [int] NOT NULL,
	[ProjectManagerID] [nvarchar](50) NOT NULL,
	[Title] [varchar](50) NOT NULL,
	[Customer] [varchar](50) NOT NULL,
 CONSTRAINT [PK_Project] PRIMARY KEY CLUSTERED 
(
	[ProjectID] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]

1) J'aimerai y rajouter une colonne "NumberProject" en varchar(50) not null

Voilà comment je procède, mais sql serveur refuse d'affecter la valeur not null à mon champs! Pourquoi?

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
ALTER TABLE Project
ADD ProjectNumber varchar(50) not null
2) Ma table "Project" contient déjà des enregistrements, j'aimerai après avoir créer la colonne NumberProject, remplir la automatiquement de la façon suivante:

Pour le Projet 1, NumberProject = PR1
Pour le Projet 2, NumberProject = PR2
Pour le Projet 3, NumberProject = PR3
En incrémentale ...

Je précise que le champs "NumberProject" est unique...comment gérer ça? Dois-je en faire une clés primaire? si oui, comment gérer alors ma clés primaire ProjectID???

Merci d'avance pour vos réponses.