uniqueidentifier comme foreign key
Salut,
Je travaille sur un site ASP.net 3.5 relié à une base de données SQL Server Express.
J'ai généré les éléments de membership (avec regsql).
J'ai besoin d'ajouter des caractéristiques à mes utilisateurs. En l'occurence un n° de tel et un code pin.
J'ai donc créé une table :
Code:
1 2 3 4 5 6 7 8 9 10 11
|
CREATE TABLE [dbo].[TIERS_ST_ToCall](
[TIERS_ST_ToCall] [uniqueidentifier] NOT NULL CONSTRAINT [DF_TIERS_ST_ToCall_TIERS_ST_ToCall] DEFAULT (newid()),
[FK_aspnet_Users_UserId] [uniqueidentifier] NOT NULL,
[strPhoneNumber] [nvarchar](50) NOT NULL,
[strPin] [nvarchar](4) NOT NULL,
CONSTRAINT [PK_TIERS_ST_ToCall] PRIMARY KEY CLUSTERED
(
[TIERS_ST_ToCall] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY] |
J'ai créé une relation de [FK_aspnet_Users_UserId] vers [UserId] de la table [aspnet_Users] générée automatiquement.
J'ai ensuite créé la proc :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
ALTER PROCEDURE dbo.SITM_SA_User_ToCall_Add
(
@strUserId nvarchar(128),
@strPhoneNumber nvarchar(50),
@strPin nvarchar(16)
)
AS
Declare @UserId UniqueIdentifier
SET @UserId = convert(uniqueidentifier, @strUserId)
INSERT INTO TIERS_ST_ToCall (
FK_aspnet_Users_UserId,
strPhoneNumber,
strPin)
VALUES (
@UserId,
@strPhoneNumber,
@strPin
)
RETURN @@IDENTITY |
Malheureusement, lorsque je l'exécute j'ai le message suivant :
L'instruction INSERT est en conflit avec la contrainte FOREIGN KEY "FK_TIERS_ST_ToCall_aspnet_Users". Le conflit s'est produit dans la base de données "SITM", table "dbo.aspnet_Users", column 'UserId'.
L'instruction a été arrêtée.
Y a t il une astuce pour utiliser un uniqueidentifier comme clef étrangère ?
Si oui, laquelle ?
D'avance merci
Laurent