Hej. Värdet som du lägger in i en parameter måste ju inte alls komma ifrån en textbox. Det kan vara vilken sträng som helst (eller vad du nu använder för datatyp i parametern). Ja, det är klart problemet är att jag får felmeddelandet "Undantagsinformation: MySql.Data.MySqlClient.MySqlException: Parameter '@Title' not found in collection". Så jag tolkade det som att det inte gick att göra så som jag har gjort bara för jag använder @Title och MySQL. <b>string sql = "INSERT INTO diary (title, date, note, picture)"; Okej, det är ändrat men problemet kvarstår. Jag får fortfarande samma felmeddelande. Jag skulle göra såhär... Tackar... det löste problemet....Problem med MySQL och asp.NET (MySqlCommand.Parameters)
Jag håller på med mitt ex jobb och har stött på problem som jag inte lyckas lösa. Problemet är att jag inte har utvecklat i kombinationen MySQL och asp.Net #C förrut.
I alla fall så har jag skrivit så här för att uppdatera databasen. "conn" är en string som hämtas från web.config och innehåller information om anv + lösen mm för att komma åt databasen. Den fungerar eftersom jag testat den utan att använda parametrar i sql koden.
string sql = "INSERT INTO diary (title, date, note, picture)";
sql += " VALUE (@Title)";
MySqlConnection myConnection = new MySqlConnection(conn);
MySqlCommand myCommand = new MySqlCommand(sql);
myCommand.Connection = myConnection;
myCommand.CommandType = CommandType.Text;
myCommand.Parameters.Add("@Title",MySqlDbType.String);
myCommand.Parameters["@Title"].Value = txtRubrik.Text;
try
{
myConnection.Open();
myCommand.ExecuteNonQuery();
}
catch (MySqlException ex)
{
lblDatum.Text = ex.Message;
}
finally
{
myCommand.Connection.Close();
}
Hur gör man om man vill använda parametrar i sql koden och inte hämta informationen direkt från tex en textbox? Den här koden fungerade utmärkt med viss modifikation i SQL Server 2000.
Tacksam för hjälp....
// MalinSv: Problem med MySQL och asp.NET (MySqlCommand.Parameters)
Sv:Problem med MySQL och asp.NET (MySqlCommand.Parameters)
Så det jag undrar är helt enkelt, hur löser man det?
// MalinSv: Problem med MySQL och asp.NET (MySqlCommand.Parameters)
sql += " VALUE (@Title)"; </b>
Det heter VALUES och eftersom du skall sätta in värden i fyra fält, skall du ange fyra värden inom parentesen.Sv:Problem med MySQL och asp.NET (MySqlCommand.Parameters)
// MalinSv: Problem med MySQL och asp.NET (MySqlCommand.Parameters)
string sql = "INSERT INTO errors VALUES (?info);";
MySqlConnection myConnection = new MySqlConnection(conn);
MySqlCommand myCommand = new MySqlCommand(sql);
myCommand.Connection = myConnection;
MySqlParameter parm1 = new MySqlParameter("?info", MySqlDbType.VarChar, 255);
parm1.Value = minTid;
myCommand.Parameters.Add(parm1);
Hoppas att du löser det!
Sv:Problem med MySQL och asp.NET (MySqlCommand.Parameters)
:)