Server-side column values not retrieved when record inserted or updated

Aperta
#620 2 commenti 2 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
35/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
fsharp, sql
Ambito
database

Direzione di ricerca

Inizia individuando i punti di ingresso di SQLProvider per la generazione SQL e il salvataggio delle entità nelle operazioni INSERT e UPDATE di MS SQL Server. Esamina la gestione esistente di INSERT OUTPUT, quindi determina come devono essere restituiti in entrambe le operazioni i valori lato server, come le colonne identity, timestamp, computed e default; il lavoro è completato quando tali valori sono presenti dopo la creazione e l'aggiornamento senza eseguire una nuova query.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

enhancement
Description

(MS SQL SERVER) I have many tables with TIMESTAMP columns, computed columns, columns with default values. Most of the tables have auto-incremented (identity) primary key.

I expect that entity will contain those values after record is created or updated.

When I save (create or update) the entity it doesn't query values of such columns.

Expected behavior

All server-side values retrieved on INSERT and UPDATE, not just auto-increment primary key on INSERT. Should be easy to implement using "INSERT ... OUTPUT" or "UPDATE ... OUTPUT" synthax

Actual behavior

At the moment SQLProvider updates only auto-incremented primary key for new entities (generated SQL is "INSERT ... OUTPUT ..." )

Known workarounds
  • re-query entity after it is inserted or updated (ugly)
  • create a stored proc instead
Related information
  • Used database: MS SQL Server (14.0.2014.4)
  • Operating system: Windows 10
  • .NET Core 2.1
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

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di fsprojects/SQLProvider

Tutte le issue di fsprojects/SQLProvider

Issue simili

Altre issue su Databases

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.