Id value not retrieved when multi-column PK
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 45/100
Direzione di ricerca
Riprodurre l’esempio F# con lo schema SillyTable su SQL Server, quindi tracciare il percorso di inserimento e recupero della chiave generata usato da SubmitUpdates() per le chiavi primarie composte da più colonne. Il lavoro è completato quando row.Id contiene il valore identity generato dal database immediatamente dopo SubmitUpdates(), corrispondente al valore riletto dalla tabella.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Description
When a record is inserted in a table that has a multi-column primary key, the Identity value generated is not retrieved.
Repro steps
- Create a silly table:
create table SillyTable (TenantId int not null, Id int identity not null)
alter table SillyTable add constraint PK_SillyTable primary key (TenantId, Id)
- Insert a row and get the value for Id
let testError () =
let ctx = sql.GetDataContext()
let row = ctx.Dbo.SillyTable.Create()
row.TenantId <- 1
ctx.SubmitUpdates()
let id = row.Id //always 0
let readRow = ctx.Dbo.SillyTable |> Seq.last
let readId = readRow.Id //return just inserted value (identity)
(id, readId) //readId has the expected value
Expected behavior
After SubmitUpdates(), the row.Id value should be updated with the value generated by the DB.
Actual behavior
The Id column keeps its default value (0 in this case) after SubmitUpdates()
Known workarounds
None
Related information
Operating System: Windows 10 Pro
Visual Studio: 2017 15.8.1
FSharp.Core 4.5.2
SqlProvider 1.1.48
DB: SqlLocalDB v13
- Lingua principale
- F#
- Stelle
- 627
- Fork
- 147
- Merge medio
- 2h 2m
- PR unite (30g)
- 1
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di fsprojects/SQLProvider
-
enhancement
Difficoltà 3/5 1-2 giorni Idoneità per principianti 55/100
fsprojects/SQLProvider#872 · 2 commenti ·
-
Repo Assist? Apertaenhancement
Difficoltà 5/5 Più di una settimana Idoneità per principianti 10/100
fsprojects/SQLProvider#870 · 1 commento ·
-
postgresql
Difficoltà 4/5 3-5 giorni Idoneità per principianti 58/100
fsprojects/SQLProvider#869 · 2 commenti ·
-
documentation
Difficoltà 2/5 1-3 ore Idoneità per principianti 42/100
fsprojects/SQLProvider#868 · 2 commenti ·
-
sql server
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
fsprojects/SQLProvider#851 · 1 commento ·
Tutte le issue di fsprojects/SQLProvider
Issue simili
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 75/100
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
AstrBotDevs/AstrBot#10205 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
OHDSI/Data2Evidence#3394 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100