Avatar billede kattendk Nybegynder
16. marts 2009 - 09:49 Der er 6 kommentarer

Mysql i c#, opret forbindelse, sende data osv.

Hej eksperter.

Er der en som har en c# kode, hvor man let kan indtaste mysql data op til en mysql server?

Har siddet på forskellige websites, og synes ikke rigtigt jeg finder noget af det jeg skal bruge.

Håber der er én, som kan smide en stabil kode op til mig.
På forhånd tak :)

God dag.
Avatar billede ladyhawke Novice
16. marts 2009 - 09:58 #1
skal du bruge noget database administration til MySQL eller er det bare almindelig dataudveksling med en MySQL base via C#?

Hvis du ikke kan finde hvad du skal bruge, hvor har du så i hovedtræk kigget? (bare så man ikke henviser dig til det samme)
Avatar billede kattendk Nybegynder
16. marts 2009 - 10:07 #2
Altså jeg skal kunne smide data op til MySQL database med c#, og også kunne hente derfra.

Jeg havde kigget lidt her: http://www.dbforums.com/delphi-c-etc/1216469-cant-insert-data-into-mysql-c.html
Avatar billede ladyhawke Novice
16. marts 2009 - 10:11 #3
Avatar billede kattendk Nybegynder
16. marts 2009 - 10:37 #4
Altså jeg har lavet en reference til MySql.Data.MySqlClient - det er der ingen af dem som bruger? :\
Avatar billede ladyhawke Novice
16. marts 2009 - 10:48 #5
Hmmm. jeg kan ikke huske deres klasser mht. MySQL, men er det den connector du har installeret på din maskine?

Hvad så med denne her:
http://www.functionx.com/mysqlnet/csharp/Lesson04.htm

Det tager altså ikke mange minutter at lave en søgning på google, noget a la "MySql.Data.MySqlClient c#".

Der kommer rigtig mange resultater og det meste fungerer stort set ens, men om du kan brugeandre eksempler, afhænger lidt af om du har erfaring fra andre teknologier og datahåndtering
Avatar billede arne_v Ekspert
16. marts 2009 - 14:05 #6
Hent og installer MySQL Coennctor for .NET, brug MySqlXxxx klasserne.

Lige ud af landevejen.

Eksempler:

using System;
using System.Collections;
using System.Data;

using MySql.Data.MySqlClient;

namespace E
{
    public class Rec
    {
        private int f1;
        private string f2;
        public Rec() : this(0, "")
        {
        }
        public Rec(int f1, string f2)
        {
            this.f1 = f1;
            this.f2 = f2;
        }
        public int F1
        {
            get
            {
                return f1;
            }
            set
            {
                f1 = value;
            }
        }
        public string F2
        {
            get
            {
                return f2;
            }
            set
            {
                f2 = value;
            }
        }
        public override string ToString()
        {
            return ("[" + f1 + "," + f2 + "]");
        }
    }
    public class DataGateway
    {
        public static ArrayList GetAll()
        {
            MySqlConnection con = new MySqlConnection("Database=Test;Data Source=localhost;User Id=;Password=");
            con.Open();
            MySqlCommand cmd = new MySqlCommand("SELECT F1,F2 FROM T1", con);
            ArrayList list = new ArrayList();
            MySqlDataReader rdr = cmd.ExecuteReader();
            while(rdr.Read())
            {
                list.Add(new Rec((int)rdr[0], (string)rdr[1]));
            }
            rdr.Close();
            con.Close();
            return list;
        }
    }
    public class TestClass
    {
        public static void Main(string[] args)
        {
            ArrayList list = DataGateway.GetAll();
            foreach(Rec r in list)
            {
                Console.WriteLine(r);
            }
        }
    }
}



using System;
using MySql.Data.MySqlClient;

class MainClass
{
    public static void Main(string[] args)
    {
        MySqlConnection con = new MySqlConnection("Database=Test;Data Source=localhost;User Id=;Password=");
        con.Open();
        MySqlCommand cre = new MySqlCommand("CREATE TABLE temptest (id VARCHAR(20) PRIMARY KEY)", con);
        cre.ExecuteNonQuery();
        MySqlCommand ins = new MySqlCommand("INSERT INTO temptest VALUES (?id)", con);
        ins.Parameters.Add("?id", MySqlDbType.VarChar, 20);
        ins.Parameters["?id"].Value = "Dette er en test";
        //ins.Parameters.Add("?id", MySqlDbType.VarChar, 20).Value = "Dette er en test";
        ins.ExecuteNonQuery();
        MySqlCommand sel = new MySqlCommand("SELECT * FROM temptest", con);
        MySqlDataReader rdr = sel.ExecuteReader();
        while(rdr.Read())
        {
            string id = (string)rdr[0];
            Console.WriteLine(id);
        }
        rdr.Close();
        MySqlCommand drp = new MySqlCommand("DROP TABLE temptest", con);
        drp.ExecuteNonQuery();
        con.Close();
    }
}



using System;
using System.Data;
using MySql.Data.MySqlClient;

public class MainClass
{
    public static void Main(string[] args)
    {
        MySqlConnection con = new MySqlConnection("Database=Test;Data Source=localhost;User Id=;Password=");
        con.Open();
        MySqlCommand sel = new MySqlCommand("SELECT * FROM T1 WHERE F1 > ?f1", con);
        sel.Parameters.Add("?f1", MySqlDbType.Int32);
        sel.Parameters["?f1"].Value = 2;
        MySqlDataReader rdr = sel.ExecuteReader();
        while(rdr.Read())
        {
            Console.WriteLine(rdr[0] + " " + rdr[1]);
        }
        rdr.Close();
        con.Close();
    }
}



using System;
using System.Threading;
using MySql.Data.MySqlClient;

public class MainClass
{
    public static void Main(string[] args)
    {
        MySqlConnection con = new MySqlConnection("Data Source=localhost;Database=Test;User Id=;Password=");
        con.Open();
        MySqlCommand sel = new MySqlCommand("SELECT * FROM tt WHERE ?start <= t1 and t1 <= ?end", con);
        sel.Parameters.Add("?start", MySqlDbType.Date);
        sel.Parameters.Add("?end", MySqlDbType.Date);
        sel.Parameters["?start"].Value = DateTime.Parse("27-01-2007");
        sel.Parameters["?end"].Value = DateTime.Parse("27-01-2007");
        MySqlDataReader rdr = sel.ExecuteReader();
        while(rdr.Read())
        {
            Console.WriteLine(rdr[0]);
        }
        rdr.Close();
        con.Close();
    }
}
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