Hej, Hur du ansluter till databasen beror förstås på vilken databas du vill ansluta till :) Måste du köra MySql eller kan du lika gärna köra SQL Server/Express?VS2012, C#.NET och MySQL - Jag har fastnat
Har i många år arbetat med Klassisk ASP och har under de senaste 5 åren försökt till och från att gå över till .NET (C#).
Har baskunskaperna i C# och VS då jag läste en kurs på högskolan. Då var det bara applikationer vi gjorde.
Alla gånger jag har försökt så har mitt största problem varit databaserna. *gaa*
Och så har det slutat där. Gör ett försök till, för jag vill verkligen lägga klassiska ASP bakom mig :)
Mina frågor är då:
1. Hur pratar jag enklast med databasen? MySQL Connector, har jag ramlat in på några gånger.
Men jag tror inte riktigt jag förstår. Även om jag fått kopplingen att funka ibland/oftast.
2. När jag vill ställa en fråga till databasen likt i ASP set rs = db.execute... osv...
Hur gör jag det i C#.
3. Hur kör jag en UPDATE sats...
Det är säkert jätte enkelt, men jag har fastnat, helst hade jag velat sitta brevid någon som visar.. :)
Men det är tyvärr tomt med C# utv i min bekantskapskrets.
Har läst böcker, kollat på Youtube videos, och googlat det mesta. Men... exception occured :)
Mvh
DanneSv: VS2012, C#.NET och MySQL - Jag har fastnat
Oavsett vilket lär du nånstans jobba med klasser som implementerar interfacen i System.Data, såsom IDbConnection, IDbCommand och IDataReader.
using System.Data.SqlClient;
static void DoIt()
{
// SqlConnection implementerar IDbConnection
var conn = new SqlConnection(@"Data source=???"); // TODO: Sätt rätt connection string
conn.Open();
// SqlCommand implementerar IDbCommand
var cmd = new SqlCommand("CREATE TABLE Users (userid int, password nvarchar(8))", conn);
cmd.ExecuteNonQuery();
cmd = new SqlCommand("INSERT INTO Users (userid, password) VALUES (1, 'asdasd')", conn);
cmd.ExecuteNonQuery();
cmd = new SqlCommand("UPDATE Users SET password='abc123'", conn);
cmd.ExecuteNonQuery();
cmd = new SqlCommand("SELECT * FROM Users", conn);
var reader = cmd.ExecuteReader(); // returnerar en IDataReader
while (reader.Read())
{
Console.WriteLine("User id = {0}, password = {1}", reader.GetInt32(0), reader.GetString(1));
}
}
Sen finns det förstås en uppsjö av sätt att *slippa* jobba med en massa rörmokeri för att läsa/skriva saker i nån tabell nånstans (det är ju när allt kommer kring inte särskilt upphetsande). Ett approach är att använda Entity Framework och då med relativt liten insats få nåt åt det här hållet:
foreach(var user in myDataContext.Users)
{
user.Password = 'abc123';
}
myDataContext.Save();
// Vem sa nånting om en databas?