2010-07-10 3 views
2

J'ai une colonne nommée CreationDate pour laquelle je mis autogénérés valeur = true Auto-Sync = OnInsert Il fonctionne parfaitement bien mais je me demandais toujours pourquoi il est synchronisé quand je fais une MISE à JOUR Voici ce profileur SQL Server indique quand je mets à jour une colonne dans ce tableauLINQ2SQL: Auto-Sync = OnInsert

exec sp_executesql N'UPDATE [dbo]. [T_Address] SET [CountryCode] = @ p2 OU ([AddressGuid] = @ p0) ET ([ColVersion] = @ p1)

SELECT [t1]. [Date de création], [t1]. [ColVersion], [t1]. [LastActivityDate] FROM [dbo]. [Adresse] AS [t1] OERE ((@@ ROWCOUNT)> 0) ET ([t1]. [AdresseId] = @ p3) ', N' @ p0 identificateur unique, @ p1 horodatage, @ p2 char (2), @ p3 uniqueidentifier ', @ p0 =' 18CD7808-038C-DF11 -9935-00214F54AE12' , @ p1 = 0x000000000000105D, @ p2 = DZ », @ = p3 de la 18CD7808-038C-DF11-9935-00214F54AE12 '

pourquoi mon CreatationDate est renvoyé par le deuxième sélectionnez? Est-ce que je misundertanding le concept de Auto-Sync = OnInsert

Thnaks pour vos commentaires

Répondre

2

Je crois Auto-Sync = OnInsert est correct, mais vous devez définir généré automatiquement la valeur à Faux . "Auto Generated Value" est plutôt mal nommé; il s'applique en fait plus aux colonnes calculées par SQL Server (qui peuvent changer en fonction de n'importe quoi) qu'aux valeurs par défaut à l'insertion.