Avatar billede spottie Nybegynder
09. februar 2006 - 13:32 Der er 11 kommentarer og
1 løsning

kombination mellem Visual Studio 2003 C# og MySQL hvordan?

Hejsa eksperter

Nogen der ved hvilken driver man skal bruge og hvordan det konfigureres for at man kan hive data fra en mysql database ud i f.eks. textbox i en C# form?

Håber vil savre gerne detaljeret, da jeg ikke har prøvet det før?

Vh spottie
Avatar billede arne_v Ekspert
09. februar 2006 - 13:50 #2
jeg vil klart anbefale http://dev.mysql.com/downloads/connector/net/1.0.html

du skal bare bruge en connection string for at connecte

det fungerer ligesom alle andre ADO.NET providere - klassenavnene starter
bare med MySql
Avatar billede Slettet bruger
09. februar 2006 - 23:41 #3
Hejsa.
Håber ikke jeg blander mig unødigt, men har indtil for nyligt benyttet netop MySql som ADO.NET provider.

Som arneV skriver kan du hente NETConnector.
Du skal så installere denne på din server/computer og herefter importere (lave en reference i dit projekt) .dll filen fra "C:\Program Files\MySQL Connector Net 1.0.4\bin\.NET 1.1".

Herefter laver du så en using:
using MySql.Data.MySqlClient;

Og du kan nu oprette og bruge fx. MySqlConnection:

MySqlConnection connection = new MySqlConnection("DinConnectionString");
MySqlCommand command = new MySqlCommand();

Osv osv.

Håber det hjalp dig lidt mere på vej :-)
Avatar billede Slettet bruger
09. februar 2006 - 23:43 #4
Hvis du vil kunne arbejde med dine MySql databaser direkte i DataBase explorer i VS kan du hente MySql ODBC driveren: http://dev.mysql.com/downloads/connector/odbc/3.51.html, som sså skal installeres på din server/computer.

Du kan herefter oprette et ODBC datasource på serveren og referere til dine givne databaser i visual studio hvor du så kan arbejde visuelt med alle tabellerne.
Avatar billede spottie Nybegynder
10. februar 2006 - 11:11 #5
thomasso...

Hvordan laves en reference til en .dll fil som du skriver?
Avatar billede Slettet bruger
10. februar 2006 - 11:51 #6
Så vidt jeg husker fra VS 2003 så højreklikker du på "references" og vælger så "browse", hvorefter du vælger stien til selve .dll'en.

Jeg vil dog anbefale dig at du først kopierer MySql.dll filen over et sted i dit web-projekt og herefter refererer til den.
På den måde slipper du for at opdatere referencen når/hvis du skal afvikle dit site på en anden server hvor filen enten ikke findes eller den er placeret et andet sted.

Eksempelvis, hvis styresystemet er dansk og filen som standard er placeret i "programmer/..." eller engelsk og er placeret i "Program Files/...".
Avatar billede Slettet bruger
10. februar 2006 - 11:57 #7
Må jeg forresten spørge hvorfor du ikke bruger den nye gratis version af VS?
Den kan downloades gratis fra Microsofts hjemmeside og hedder Visual Web Developer 2005 Express Edition og med et mildt ord, så sparker den r.. :-)

Det gør i det hele taget ASP.NET 2.0, så med mindre der er en god grund til at udvikle i det gamle miljø er det bare at komme i gang.

Du kan hente den her: http://msdn.microsoft.com/vstudio/express/vwd/

Den indeholder også Sql Server Express Edition 2005, som er en letvægtsversion af den nye Sql Server 2005.
Jeg har netop selv skiftet fra MySql til Sql Server, da bindingen mellem VS og Sql server er rigtig god.
Avatar billede spottie Nybegynder
10. februar 2006 - 12:51 #8
Ved jeg ikke måske jeg også prøver det.

Hvordan gør man at man får en værdi fra en mysql select sætning ud i en textbox i en form, hvad er koden for det?
Avatar billede Slettet bruger
10. februar 2006 - 13:05 #9
Fx:

string connectionString = "Database=DitDatabaseNavn;Data Source=localhost;User Id=root;Password=ditPassword";

MySqlConnection = new MySqlConnection(connectionString);
        MySqlCommand command = MySqlCommand();

        command.CommandText = "SELECT Id, Dato, Overskrift";
        command.CommandText += " FROM Nyheder WHERE Id = '" + id + "'";
        command.Connection = connection;
        command.Connection.Open();

MySqlDataReader reader = command.ExecuteReader(CommandBehavior.CloseConnection);
if(reader.Read())
{
int id = reader.GetInt32(0);
string dato = reader.GetDateTime(1).ToString();
string overskrift = reader.GetString(2);
}

// Indsæt i en textbox
txtbox_Overskrift.Text = overskrift;

Noget i den retning.
Avatar billede Slettet bruger
10. februar 2006 - 13:08 #10
MySqlConnection = new MySqlConnection(connectionString); skal selvfølgelig være:

MySqlConnection connection = new MySqlConnection(connectionString);

Og så glemte jeg at lukke reader-objektet:

if(reader.Read())
{
int id = reader.GetInt32(0);
string dato = reader.GetDateTime(1).ToString();
string overskrift = reader.GetString(2);
}
reader.Close();

command.Dispose();
connection.Dispose() eller connection = null;
Avatar billede Slettet bruger
20. februar 2006 - 15:40 #11
Kunne noget af det vi skrev bruges?
Avatar billede spottie Nybegynder
06. april 2006 - 16:15 #12
lukker
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