Gå til innhold

C#: [Løst]Hvordan sjekke on DB innhold allerede er der?


Anbefalte innlegg

her er casen.

 

i et Windows form har eg 60 textboxer og ved trykk av button1 blir innholdet skrevet til en MySql database basert på Bruker_ID og Dato.

 

databasen er slik som dette

 

Tabel_ID, Dato, verdi1, verdi2, bruker_ID

 

det er kun Tabel_ID som er unik..

 

Problemet eg får er vist kunde trykker 2 ganger på Button1 dvs save knappen blir det lagret nye verdier på samme dato på samme Bruker_ID, hvordan kan eg unngå dette?

Lenke til kommentar
Videoannonse
Annonse

Hvis jeg forstår deg rett så ville jeg foreslått å lage 2 stored procedures.

En som sjekker om dataen er der og en som setter inn/ikke setter inn dataene basert på svaret fra funksjon 1.

 

Skal en gitt bruker bare kunne sette inn data en gang per dag eller kan en gitt bruker sette inn forskjellige data samme dag?

Kan du utdype litt...?

Lenke til kommentar
Hvis jeg forstår deg rett så ville jeg foreslått å lage 2 stored procedures.

En som sjekker om dataen er der og en som setter inn/ikke setter inn dataene basert på svaret fra funksjon 1.

 

Skal en gitt bruker bare kunne sette inn data en gang per dag eller kan en gitt bruker sette inn forskjellige data samme dag?

Kan du utdype litt...?

 

ja det stemmer, det er dette eg eg ute etter, eg bare lurere på hvordan eg bør sette opp disse funksjonene?

 

 

brukeren skal kun kunne sette in data en gang pr dag.

Endret av sommy
Lenke til kommentar

Ok.

 

Hvis du ikke kjenner til stored procedures fra før bør du lære deg det fordi det er raskere og mer effektivt på alle måter.

 

Den enkleste og rett fram måten ville bli noe slikt:

 

IF NOT EXIST(SELECT Bruker_ID FROM tabellen WHERE Dato = @Datoen_i_dag)

BEGIN

INSERT INTO tabellen etc......

END

ELSE

 

.....gjør noe annet.....

 

Personlig ville jeg plassert funksjonaliteten i 2 forskjellige stored procedures; en som sjekker om brukeren som har satt inn data i dag og en som setter inn dataene hvis den første returnerer false/0.

 

Håper dette hjelper litt!

 

BTW: Det fins et eget database forum her også.....

Endret av Techster
Lenke til kommentar

En liten sidenote: Når du skal ta noen verdier fra et form og lagre med en knapp er det smart å "skru av" knappen med en gang. (Button1.Enabled = false). Gjør det først i save rutinen din. Gjør lagringen ferdig og skru den på igjen.

 

Samtidig er du nødt til å markere dataene i formet ditt som lagrede slik at neste gang du lagrer gjør du en oppdatering og ikke en ny lagring.

 

Det gir som regel en bedre brukeropplevelse hvis du håndterer slike scenarioer i i programmet ditt og ikke bare helt inne i databasen.

Lenke til kommentar
En liten sidenote: Når du skal ta noen verdier fra et form og lagre med en knapp er det smart å "skru av" knappen med en gang. (Button1.Enabled = false). Gjør det først i save rutinen din. Gjør lagringen ferdig og skru den på igjen.

 

Samtidig er du nødt til å markere dataene i formet ditt som lagrede slik at neste gang du lagrer gjør du en oppdatering og ikke en ny lagring.

 

Det gir som regel en bedre brukeropplevelse hvis du håndterer slike scenarioer i i programmet ditt og ikke bare helt inne i databasen.

 

kjempe bra tibs, takker :)

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...