Avatar billede starf Nybegynder
27. september 2004 - 23:29 Der er 19 kommentarer og
1 løsning

hjælp til omskring af en connectiong del

Hey

Har været igang med at lege med c# og er i den forstand rykket væk fra at bruge acces til mysql.. MEN!

kan sku ikke finde ud af at få omskrevet min connection del, til en MySQL del, der skal køre via ByteFX.

Dette er min connection del:

        public string getDatabaseDNS()
        {
            //Return the DNS string, used to create a connection to the database
           
            //string strType="Access";
           
            string  strDatabase= Environment.CurrentDirectory + "\\database.mdb";
            //MessageBox.Show(strDatabase);

            string strDNS="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + strDatabase;
            return strDNS;
        }


Hvordan får  jeg lettest den lavet om til en MySQL del? uden jeg skal til at rette alt for meget i gennem hele mit program?
Avatar billede lifo Nybegynder
28. september 2004 - 00:40 #1
kender ikke så meget til MySQL
men et andet alternativ er Firebird
en opensource database som er meget nem at bruge i .NET
den kan også køre i embedded mode
det vil sige at du kun skal distrubere en dll og en database fil til slut brugeren

om det har vækket lidt interesse så er mere at finde på
http://firebird.sourceforge.net/
Avatar billede starf Nybegynder
28. september 2004 - 00:50 #2
tak men er ikke lige det jeg søger! Vil ha det til at virke i en mysql
Avatar billede arne_v Ekspert
28. september 2004 - 07:44 #3
Connection string er ret simpel.

Eksempel:

MySqlConnection con = new MySqlConnection("Database=Test;Data Source=localhost;User Id=;Password=");

Du angiver:
  server navn
  database
  brugernavn
  password
som ovenfor og det er så det.

        public string getConnStr()
        {
            return "Database=Test;Data Source=localhost;User Id=;Password=";
        }

men jeg kan ikke rigtigt se pointen i den metode. Hvis du vil have en metode,
så lad den læse fra en konfigurations fil så du nemt kan ændre den.
Avatar billede starf Nybegynder
28. september 2004 - 13:16 #4
tak arne.. men er sku ret ny til det her :) så det med en conf fil må være senere når jeg har mere styr på tingene!
Avatar billede starf Nybegynder
28. september 2004 - 13:34 #5
public string getDatabaseDNS()
        {
        MySqlConnection con = new MySqlConnection("Database=Database;Data Source=10.0.0.5;User Id=root;Password=123456789");
            public string getConnStr()
            {
                return "Database=Database;Data Source=10.0.0.5;User Id=root;Password=123456789";
            }
   
        }

burde dette så ikke virke?
Avatar billede arne_v Ekspert
28. september 2004 - 15:14 #6
Nej det blander vist 2 ting sammen.
Avatar billede arne_v Ekspert
28. september 2004 - 15:15 #7
public string getConnStr()
            {
                return "Database=Database;Data Source=10.0.0.5;User Id=root;Password=123456789";
            }

eller

public MySqlConnection getConn()
{
  return new MySqlConnection("Database=Database;Data Source=10.0.0.5;User Id=root;Password=123456789");

}
Avatar billede starf Nybegynder
28. september 2004 - 15:38 #8
den første ser ud til at virke.

Hvad skal dette her så ændres til? :

OleDbConnection myConn = new OleDbConnection( getDatabaseDNS());
Avatar billede arne_v Ekspert
28. september 2004 - 16:12 #9
MySqlDbConnection myConn = new MySqlConnection( getConnStr());

formoder jeg
Avatar billede starf Nybegynder
28. september 2004 - 16:19 #10
Hmm jeg får:

The type or namespace name 'MySqlDbConnection' could not be found (are you missing a using directive or an assembly reference?)

har lagt dette oppe som using:

using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.Data.OleDb;
using ByteFX.Data.MySqlClient;

skal dog ha fjernet data.OleDb :)
Avatar billede arne_v Ekspert
28. september 2004 - 16:24 #11
Jeg skrev forkert.

MySqlConnection myConn = new MySqlConnection( getConnStr());

(uden Db)
Avatar billede starf Nybegynder
28. september 2004 - 16:29 #12
Det hjalp! men nu siger den:
The name 'getConnStr' does not exist in the class or namespace 'DatabaseSample.Form1'

er der så også en der hedder:

OleDbDataAdapter myCmd = new OleDbDataAdapter( strSQL, myConn );
MySqlDbDataAdapter ?
Avatar billede arne_v Ekspert
28. september 2004 - 16:32 #13
Der er også en MySqlDbDataAdapter !
Avatar billede arne_v Ekspert
28. september 2004 - 16:33 #14
Har du ikke en:

public string getConnStr()
            {
                return "Database=Database;Data Source=10.0.0.5;User Id=root;Password=123456789";
            }


??
Avatar billede starf Nybegynder
28. september 2004 - 16:36 #15
den ser sådan her ud:

        public string getDatabaseDNS()
        {
            return "Database=Database;Data Source=10.0.0.5;User Id=root;Password=madssigvert81";
        }

så jo kan godt se jeg lige selv skal ændre navnet.. Beklager meget min dumhed :D

any way ser ud itl jeg bare skla rette igennem hele koden nu, takker for hjælpen!
Avatar billede haunted Nybegynder
18. oktober 2005 - 15:58 #16
Laver man ikke denne connection i sin Web.config fil??
Avatar billede arne_v Ekspert
18. oktober 2005 - 16:06 #17
det kan man gøre !
Avatar billede starf Nybegynder
18. oktober 2005 - 16:10 #18
bare smid et reply arne har fået det til at virke :) så du kan vel lige så godt få point
Avatar billede arne_v Ekspert
18. oktober 2005 - 16:11 #19
det har jeg fået for lang tid siden
Avatar billede starf Nybegynder
18. oktober 2005 - 16:40 #20
Hmm der står bare her jeg mangler at give point.. Hmm oh well :)
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