Avatar billede el_fredo Praktikant
05. november 2003 - 12:40 Der er 16 kommentarer og
1 løsning

MS SQL Server (sletning af DB samt opr. af data udfra DataSet)

Hej.

Jeg er lige begyndt at arbejde med SQLServer, og er derfor ikke så god til det. Jeg har før arbejdet med ADO.NET, men ikke så meget - kun lige til husbehov, og det var i forb. med Oracle og MS Access.

Rammerne for problemet er:

Jeg har en database liggende lokalt, som skal opdateres (100%) en gang i døgnet. Det kan godt være at nogle af de gamle informationer er de samme som de nye, men i stedet for at bekymre mig om dette vælger jeg at opdatere alt. Indholdet af den nye database skal senere vises på web.

Problemerne (som der er 2 af) er:

1. Hvordan sletter jeg indholdet af en hel database? Jeg vil gerne bibeholde feltnavne osv. da jeg mener dette er hensigtsmæssigt.

2. Jeg har de nye data liggende i formatet "DataSet". Hvordan får jeg på nemmeste måde smidt alle informationerne fra dette dataset ned i databasen vha. ADO.NET?

Det kan godt være at pkt. 1 ikke vil fungere som jeg har beskrevet det - I må gerne rette løsningen til - bare jeg kan lægge indholdet af mit DataSet ned i en database.
Avatar billede arne_v Ekspert
05. november 2003 - 12:56 #1
DELETE FROM tabelnavn;

for alle de relevante tabeller.
Avatar billede arne_v Ekspert
05. november 2003 - 12:57 #2
Eller:

TRUNCATE tabelnavn;

når det nu er SQLServer.
Avatar billede el_fredo Praktikant
05. november 2003 - 13:03 #3
TRUNCATE... sletter den indholdet, og bibeholder "rammerne"?

Ved du så også hvordan jeg lægger indholdet af et DataSet ind i tabellen? Hvordan gøres det nemmest? Er jeg nødt til "manuel" at løbe indholdet af DataSet'et igennem, og på den måde fylde databasen. Er der ikke en nem måde i .NET hvor man vha. indbygget kode kan lægge indholdet ned på?
Avatar billede arne_v Ekspert
05. november 2003 - 13:06 #4
Begge SQL sætningerne sletter alle records i tabellen men beholder
tabel strukturen.
Avatar billede arne_v Ekspert
05. november 2003 - 13:07 #5
Jeg kender ikke DataSet så det kan jeg ikke hjælpe med.
Avatar billede arne_v Ekspert
05. november 2003 - 13:08 #6
Jeg kan finde ud af det senere i eftermiddag/aften.

Men jeg er overbevist om at en anden kan hjælpe dig med det inden da.
Avatar billede el_fredo Praktikant
05. november 2003 - 13:23 #7
Ok. Det håber jeg at der er nogen der kan - selvom det virker som om, at du er den eneste der aktivt svarer på mine spørgsmål. Tak for det.
Avatar billede el_fredo Praktikant
05. november 2003 - 13:53 #8
Lige lidt ekstra info:

Det drejer sig om op mod flere hundrede tusinde felter der skal opdateres, og jeg tror derfor, at det ville kræve for mange ressourcer at skulle "løbe" dem alle igennem og enkeltvist indsætte dem i databasen.
Avatar billede finger Nybegynder
05. november 2003 - 14:31 #9
hvordan ligge dataen i dit dataset?
Er det den samme struktur som databasen med de samme tabeller og tabelnavne?
Avatar billede el_fredo Praktikant
05. november 2003 - 15:51 #10
Ok. Databasen (SQL Serveren) er i øjeblikket 100% tom. Der er hverken tabeller eller noget. Hvis det er, kan jeg godt oprette en tabel der har samme feltnavne som den jeg lægger derned. Efter 1. gang at have lagt data ned, vil der jo være noget.

Strukturen af mit dataset er lidt svag. DataSet'et er i forvejen genereret udfra en XML-fil, og denne XML-fil er genereret udfra en SQL-sætning der sammenfatter data fra 2 andre tabeller. Det er ligemeget med de 2 tabeller nu. Det er KUN indholdet af det nye DataSet der er interessant for mig. Problemet er kort opridset:

Jeg har et DataSet. Jeg skal have indholdet lagt ned i en database.

Databasen er tom nu. Strukturen af de data der skal lægges ned er:

Fag | Medarbejder_Navn | Timer | Timer1 | Timer2 | Timer3 | Timer4
$            $            #      #        #        #        #

$ = Tekst, # = Tal (float)
Avatar billede el_fredo Praktikant
05. november 2003 - 15:51 #11
Hov, havelågen forsvandt under Timer3 og Timer4. Der skal selvfølgelig også være havelåger, da de også er tal.
Avatar billede el_fredo Praktikant
05. november 2003 - 15:52 #12
Nej, havelågen forsvandt ikke, de flyttede sig bare. Hmmm...
Avatar billede arne_v Ekspert
05. november 2003 - 22:14 #13
Det er bare fordi du indtaster i en fixed-width font og indlæg vises
i en variable-width font.
Avatar billede arne_v Ekspert
05. november 2003 - 22:16 #14
Jeg har aldrig prøvet det, men vil jeg tro at du skal have en
SqlDataAdapter, bruge fill til at loade dine data ind i data sættet
og så update til at gemme i databasen med.
Avatar billede el_fredo Praktikant
07. november 2003 - 09:52 #15
Ja, jeg læste godt noget om det på MSDN. Det virker bare dumt, først at skulle benytte .Fill(DataSet), når jeg allerede har de data, der skal lægges i databasen. Jeg kigger lige på det.
Avatar billede el_fredo Praktikant
10. december 2003 - 10:26 #16
Arne, gider du ikke lige svare, så jeg kan få afsluttet mit åbne spørgsmål?

Tak for hjælpen :)
Avatar billede arne_v Ekspert
10. december 2003 - 10:28 #17
svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester