我聽說Sequence比Sql Server中的Identity更快。但是,我不認爲在實體框架中使用它是個好主意。因爲要在實體框架中使用序列,您應該額外撥打電話以獲取下一個序列。序列是否比實體框架中的標識更快?
int sequence = context.Database.SqlQuery<int>("SELECT NEXT VALUE FOR MySequenceName").FirstOrDefault();
因此,我認爲在實體框架中使用Sequence會比較慢。我對嗎?有人有什麼主意嗎?
'SEQUENCE'本身並不比'IDENTITY'快。您可以控制緩存大小,在某些情況下可能會帶來很小的好處,但對於大型多行插入,序列確實較慢http://dba.stackexchange.com/a/31095/3690 –
一般而言,您不應該更改你的代碼「因爲你聽說X比Y快」。你需要斷言的上下文(很少有這種情況,X總是勝過Y,並且是對Y的1-1替換 - 尤其是因爲如果它是真的,他們只會用X替換Y的實現)。你還需要考慮你是否真的有性能問題,以及它是否實際上是由'Y'引起的。 –
謝謝大家的寶貴意見 –