Oprettet man. d. 20. august 2012 kl. 17:04:40

olejohn
olejohn (15.285 point. Point ude: 360)

Forbindelse til database

Hej
Jeg sidder her og vil lave en forbindelse til en database jeg har oprettet i Access, men det lykkedes ikke rigtigt.
Jeg fandt på nettet en forklaring, hvor man -Meget let - forbandt
databasen Northwind, men den hedder jo Northwind.sdf.
Den database jeg vil forbinde hedder xxxx.mdb
Meget gerne en forklaring som selv jeg kan forstå, da jeg bestemt ikke er helt dus med dette program endnu.
M.v.h.
Ole

Skrevet man. d. 20. august 2012 kl. 17:09:01| #1

arne_v
arne_v (1.048.588 point)
Simpelt eksempel:

using System;
using System.Data.OleDb;

public class MainClass
{
    public static void Main(string[] args)
    {
        //OleDbConnection con = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Databases\MSAccess\Test.mdb");
        OleDbConnection con = new OleDbConnection("Provider=SQLOLEDB;Data Source=ARNEPC3;Initial Catalog=Test;Integrated Security=SSPI;");
        con.Open();
        OleDbCommand cmd = new OleDbCommand("SELECT * FROM T1", con);
        OleDbDataReader rdr = cmd.ExecuteReader();
        while(rdr.Read()) {
            int f1 = (int)rdr[0];
            string f2 = (string)rdr[1];
            Console.WriteLine(f1 + " " + f2);
        }
        con.Close();
    }
}

Skrevet man. d. 20. august 2012 kl. 17:29:27| #2

olejohn
olejohn (15.285 point)
Arne_v
Ja arne det er sikket rigtigt, at det er et simpelt eksempel, men men, alt er jo simpelt, hvis man kan det.
Jeg har ændret, således at jeg troede, at det pegede på min database, men jeg fik fejl.
Mit sr nu sådan ud.


using System;
using System.Data.OleDb;

public class MainClass
{
    public static void Main(string[] args)
    {
        //OleDbConnection con = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\MusikDatabase\Musik.mdb");
        OleDbConnection con = new OleDbConnection("Provider=SQLOLEDB;Data Source=ARNEPC3;Initial Catalog=Test;Integrated Security=SSPI;");
        con.Open();
        OleDbCommand cmd = new OleDbCommand("SELECT * FROM Musik", con);
        OleDbDataReader rdr = cmd.ExecuteReader();
        while(rdr.Read()) {
            int f1 = (int)rdr[0];
            string f2 = (string)rdr[1];
            Console.WriteLine(f1 + " " + f2);
        }
        con.Close();
    }
}

Den her fejler, jeg mener stien er rigtig:
m.v.h.
Ole

Skrevet man. d. 20. august 2012 kl. 18:24:11| #3

arne_v
arne_v (1.048.588 point)
Fjern // foran Access delen og slet SQLServer delen.

Skrevet man. d. 20. august 2012 kl. 18:24:37| #4

arne_v
arne_v (1.048.588 point)
//OleDbConnection con = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\MusikDatabase\Musik.mdb");
        OleDbConnection con = new OleDbConnection("Provider=SQLOLEDB;Data Source=ARNEPC3;Initial Catalog=Test;Integrated Security=SSPI;");

->

        OleDbConnection con = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\MusikDatabase\Musik.mdb");

Skrevet man. d. 20. august 2012 kl. 18:25:12| #5

arne_v
arne_v (1.048.588 point)
int f1 = (int)rdr[0];
            string f2 = (string)rdr[1];

skal nok ogsaa aendres til dine felter

Skrevet man. d. 20. august 2012 kl. 22:48:51| #6

olejohn
olejohn (15.285 point)
Hej arne_v
Du skriverint f1 = (int)rdr[0];
            string f2 = (string)rdr[1];

skal nok ogsaa aendres til dine felter
Jeg har ingen talfelter, så jeg fjernede linien f1, og rettede
linien f2 til string f1 = (string)spillested (felt i databasen)r4dr(0).
Men nej.

http://msdn.microsoft.com/ (...)(v=vs.90).aspx

Den anvisning jeg fandt var denne adr. og den forklaring var lige til at gå til, så jeg troede, at der evt. var en sådan mulighed m.h.t. mdb database
Er der mulighed for at konvetere mdb til sdf.
m.v.h.
Ole

Skrevet tir. d. 21. august 2012 kl. 04:00:52| #7

arne_v
arne_v (1.048.588 point)
syntaxen er:

type variabelnavn = (type)readervariabel[feltnummerstartendemednul];

Skrevet tir. d. 21. august 2012 kl. 10:07:23| #8

olejohn
olejohn (15.285 point)
Hej igen
Det vil ikke køre, men jeg kan nu se, at der tilsyneadende er noget med Main, da den ser sådan ud på min computer:

public static void Main(string[] args)

og der er en lille streg under Main

m.v.h.
Ole

Skrevet ons. d. 22. august 2012 kl. 03:19:01| #9

arne_v
arne_v (1.048.588 point)
kan du poste lidt kode som viser hvor Main er placeret?

Skrevet ons. d. 22. august 2012 kl. 03:19:23| #10

arne_v
arne_v (1.048.588 point)
og hvilken projekt type har du valgt?

Skrevet ons. d. 22. august 2012 kl. 16:49:54| #11

olejohn
olejohn (15.285 point)
Hej arne_v

Jeg sender den kode:
using System;
using System.Data.OleDb;

    public class MainClass
{
    public static void Main(string[] args)
    {
        OleDbConnection con = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\MusikDatabase\Musik.mdb");
  //    OleDbConnection con = new OleDbConnection("Provider=SQLOLEDB;Data Source=ARNEPC3;Initial Catalog=Test;Integrated Security=SSPI;");
        con.Open();
        OleDbCommand cmd = new OleDbCommand("SELECT * FROM Musik", con);
        OleDbDataReader rdr = cmd.ExecuteReader();
        while(rdr.Read())
        {
  //        int f1 = (int)rdr[0];
          string spillested = (string)rdr[0];
        Console.WriteLine(spillested + " " );
        }
        con.Close();
    }
}

Jeg får ingen forbindelse med det her, jeg har efter bedste evne brugt det du har sendt.
m.v.h.
Ole

Skrevet tor. d. 23. august 2012 kl. 04:42:13| #12

arne_v
arne_v (1.048.588 point)
Det er legalt C#.

Hvilken fejl faar du?

Og hvilken projekt type har du oprettet?

Skrevet fre. d. 24. august 2012 kl. 17:00:59| #13

olejohn
olejohn (15.285 point)
Hej arne_v
Nu vil jeg forsøge at forklare.
Jeg har oprettet en form applikation og der har jeg skrevet den tekst.
Når jeg forsøger at køre denne tekst, for at den skulle kunne få fat i databasen, skriver programmet, at der er build error, det er helt den sædvanelige fejlmeddelelse.
Men i dag sag jeg og tossede lidt, og jeg bemærkede de her linier
under selve den aktive skærm.


------ Build started: Project: NyMusik, Configuration: Debug x86 ------
warning CS1668: Invalid search path 'C:\Programmer\Microsoft Visual Studio\VC98\lib' specified in 'LIB environment variable' -- 'Den angivne sti blev ikke fundet. '

Vil det her sige, at der er noget i Visual 2010 som jeg mangler.
Til venstre for den skærm jeg skriver koden i er der en strimmel med Data sources, denne del har jeg ikke benyttet, er det her fejlen ligger.
Håber du har toldmodighed
M.v.h.
Ole

Skrevet man. d. 27. august 2012 kl. 04:49:49| #14

arne_v
arne_v (1.048.588 point)
Med en win form app skal du ikke have en main men en button click event og ikke skrive til console men gemme i en textbox eller lignende.

Skrevet man. d. 27. august 2012 kl. 04:50:30| #15

arne_v
arne_v (1.048.588 point)
Den fejl lyder meget mystisk.

VC98 er Visual Studio 6.0 fra 1998.

Skrevet man. d. 27. august 2012 kl. 09:02:08| #16

olejohn
olejohn (15.285 point)
Hej arne
Jeg er kommet lidt videre, du må ikke lige nu bruge tid på det her, jeg har meget travlt her til morgen, men jeg skal nok skrive mere når der er tid.
m.v.h.
Ole

Skrevet ons. d. 29. august 2012 kl. 09:01:52| #17

olejohn
olejohn (15.285 point)
Hej arne
Du må undskylde mit korte svar, men jeg har lige fået 8 nye vinduer og en ny dør jeg skal have sat i huset, så jeg  er lidt fraværende her nogle dage endnu.
m.v.h.
Ole

Skrevet ons. d. 29. august 2012 kl. 14:45:46| #18

arne_v
arne_v (1.048.588 point)
Jeg kender det.

Min kone har lige koebt 32 kasser gulv som hun forventer skal laegges.

Skrevet søn. d. 16. september 2012 kl. 22:15:17| #19

olejohn
olejohn (15.285 point)
Hej arne_v
Jeg mener ikke, at der er ret mange, undtagen mig, der har glæde af denne tråd, og derfor vil jeg spørge dig, om du evt. mener, at vi kunne fortsætte lidt mere privat, hvis ja, så står min private emailadr. under min profil, og du kunne sende mig en mail.
Hvis du ikke ønsker dette, fortsætter vi bare her.
m.v.h.
Ole

Skrevet søn. d. 16. september 2012 kl. 23:21:26| #20

arne_v
arne_v (1.048.588 point)
Lad os fortsaette her

Skrevet lør. d. 29. september 2012 kl. 21:46:11| #21

olejohn
olejohn (15.285 point)
Hej
Ja der er gået lang tid, og vi er ikke færdige.
Vinduerne gik fint, det er virkeligt dejligt, men da det var på plads ---hov---, der var lige en skjult rørskade, ved kontrol, løb der 24 l fjernvarmevand ud i timen.
Entreparketgulv er savet væk, betongulv er banket væk, bryggers klinkegulv er banket væk.
Men på mandag får vi lagt nyt parketgulv, så jeg håber, at jeg snart kan være aktiv igen.
m.v.h.
Ole

Skrevet ons. d. 12. december 2012 kl. 22:26:22| #22

olejohn
olejohn (15.285 point)
Hej her igen!
Nej nu opgiver jeg det her, og jeg fortsætter med at benytte
min Access database.
Arne vil du ikke nok skrive et eller andet som et svar, så
jeg kan give dig de point, du har da forsøgt at give mig et
skub.
Jeg har brugt meget tid på det her, og det ender med det samme
hele tiden.
Lige til sidst, kan man finde tabellerne i en database
oprettet i C#.
m.v.h.
Ole

Skrevet lør. d. 12. januar 2013 kl. 10:45:40| #23

olejohn
olejohn (15.285 point)
Hej
Ja så må jeg selv lave et svar for at slutte denne tråd.
mvh.
Ole

Skriv et indlæg




Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] [img]link til billede[/img]
Web- og emailadresser omdannes automatisk til links

Log ind

   


Seneste spørgsmål

Kopiere et objekt uden at få referencer med.

Oprettet den 16. maj 2013 kl. 17.51
CodingJoe giver 30 point for svar | Giv et svar »

Søge form i windows app

Oprettet den 16. maj 2013 kl. 07.27
joki giver 30 point for svar | Giv et svar »

Kan ikke annullere FormClosing

Oprettet den 15. maj 2013 kl. 14.38
jih giver 30 point for svar | Giv et svar »








Tips & Tricks fra PC World

Teaser billede

Her er seks Google Labs-funktioner, som du skal slå til med det samme

Gmail Labs giver dig adgang til en masse smarte funktioner, som Googles ingeniører leger med i øjeblikket.


Anmeldelser fra PC World

Teaser billede

Test: Samsung Galaxy S4 er et hit - trods gøglertricks

Kan Samsung beholde førertrøjen i det store Android-race? Galaxy S4 er smækfyldt med innovative funktioner, men også med en del gøgl. Er det for meget? Få vores dom over Samsungs nye topmodel.


Seneste blogindlæg

Teaser billede

Tvangslukke spørgsmål: Hvad er den bedste løsning?

Hej Vi har mange åbne spørgsmål på Eksperten. Vi ville gerne tvangslukke dem - så et spørgsmål efter f.eks. 6 måneder lukkes. Men der er et par uklarheder som ville være gode at få lidt input til:...


Nyheder fra PC World

Teaser billede

Tre smarte trick som gør Windows 8 bedre

Boot direkte til skrivebordet, få en strategisk godt placeret luk-knap og slip for at logge ind. Her er tre tips til Windows 8, som gør det nemmere at blive venner med styresystemet.


Nyheder fra Computerworld

Teaser billede

Galleri: Her er Googles nyeste værktøj og legetøj

Google har i denne uge afholdt udviklerkonferencen I/O i San Francisco. Se her hvad søgegiganten kunne præsentere af nyskabelser.


IT Kurser
Samarbejdspartnere

Udgiver · © 2013 IDG Danmark A/S · Hørkær 18 · 2730 Herlev · Tlf.: 77 300 300 · Fax: 77 300 301 · Brug af personoplysninger