24. april 2006 - 12:37Der er
20 kommentarer og 2 løsninger
C#, MySQL, med .Net
Jeg er ved at lave et program som skal kunne hente og skrive nogen data til en Database... Lige nu er mit problem lidt at få styr på hvordan og hvorlede jeg forbinder. Jeg vil helst ikke bruge nogen dataprovider som ODBC etc. men vil gerne nøjeds med den der er indbygget i Visual Studio 2005 (Den fulde version). Jeg smider lige lidt kode eksempler som jeg har prøvet med her:
Alt dette kode køre inden i en knap, men når jeg trykker på knappen får jeg ikke noget Data ud... Er der nogen der kan hjælpe mig lidt med at eksekvere Sqlcommands og bekræftige mig i at min connection rutine er i orden?
Sider med hjælp er og velkommende (Har kigget på MySQL's side men syntes kun jeg kunne finde hjælp til at bruge ODBC og andre data providers).
Den indbyggede data provider du har i VS.2005 kan kun håndtere MSSQL databaser. Når du så prøver på at lave en forbindelse til en MySQL database, med den indbyggede dataprovider, vil dette mislykkes.
Du er nød til at hente den dataprovider som de har inde på MySQL siden. Men den vil tilgengæld også næsten virke som den indbyggede du kender til.
Alt efter hvilken version af MySql du kører, kan der være nogle issues med passwords. Så vidt jeg ved bruger de nyeste version af MySql et password system, som deres .net-connecter ikke kan finde ud af. Så hvis du render ind i problemer med password, konvertere MySql-brugerens password med OLD_Password (mener jeg den hedder). Det står i doc'en.
Desuden skal man huske på at MySql som standard bruger nogle andre keywords/chars for visse ting: F.eks. skal "SELECT [title] FROM [dvd]" være "SELECT `title` FROM `dvd`", mens "where ID = @ID" skal være "where ID = ?ID"
Hvis gør brug af en MySqlCommandBuilder kan man f.eks. bruge cb.QuotePrefix = "`"; cb.QuoteSuffix = "`";
Bare nogle små ting der kan drille.
Jeg har lavet et .net-program som forbinder til min MySql, og efter de nævnte startvanskligheder kører det nu fint.
Med MySQLs'egen DataProvider hvad skal jeg så "include" i mit C# program?
Før brugte jeg: using: System.Data.Sqlclient;
Har nu prøvet med: using eInfoDesigns.dbProvider.MySqlClient; & using MySql.Data.MySqlClient;
Som de foreslår man bruger på connectionstrings.com Men jeg kan ikke få nogen af dem til at virke... Visual Studio siger at den ikke kan finde dem, selvom jeg har installere MySQL's egen data provider...
Bare 'Add Reference' til dit projekt, og vælg browse. Og find så den mappe hvor du har installeret MySQL Connector, og tilføj så den dll der passer til din version af .net
Som standard ligger den her. Eller det gør min i hvert fald :)
Arne V smid et svar... Der har været rigtig mange gode svar som har hjulpet mig rigtigt meget i mit projekt. Men da arne v har været den mest aktive vil jeg lade pointene tilfalde ham. Til alle jer andre... 1000tak for hjælpen
men jeg synes da at du skal bede andre ligge svar ogsaa - det er nemlig muligt at fordele point til flere (du markerer bare flere navne inden du klikker accepter)
Well... Så håber jeg at: the_party_dog & alex_sleiborg vil smide et svar inden i morgen eftermiddag da i også har hjulpet mig i min søgen efter et svar...
Ellers bliver de delt ligeligt imellem dem som der har svart i morgen eftermiddag. mange tak for hjælpen :)
Bare giv point til de andre. Har jo kun kommet med en enkelt lille kommentar
Synes godt om
Ny brugerNybegynder
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.