Jag försöker ansluta till en MySQLdatabas. detta vill sig dock inte. Min kod: Har du kunnat ansluta till MySQL från andra klienter, t.ex. från PHP? Jag får felmeddelanden när jag ska kompilera koden. Ja, måste jag inte det? Jag skriver koden i VS och använder code behind. Jag hade precis gjort det när du skrev svaret. Jag hade glömt bort det...:( Jag lade till detta protected System.Web.UI.WebControls.DataGrid myGrid; så fungerar det så långt. Men jag får följande felmeddelande när jag försöker öppna sidan. Jag lyckades lösa det med att använda Odbc istället. >Jag lyckades lösa det med att använda Odbc istället. Hej jag har samma problem, Anslutning till MySQL?
<code>
namespace salongninette
{
using System;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using MySql.Data.MySqlClient;
/// <summary>
/// Summary description for ucHeadMenu.
/// </summary>
public class ucHeadMenu : System.Web.UI.UserControl
{
private void Page_Load(object sender, System.EventArgs e)
{
// Anslutningssträngen...
string strConn = "";
strConn += "Data Source = localhost";
strConn += "DataBase = DATABASNAMN";
strConn += "User ID = ANVÄNDARNAMN";
strConn += "Password = LÖSENORD";
// En ny instans av MySql...
MySqlConnection objConn = new MySqlConnection(strConn);
string strSQL = "SELECT * FROM ninheadmenu";
try
{
objConn.open();
}
catch(Exeption ex)
{
throw ex;
}
MySqlCommand objCmd = new MySqlCommand(strSql, objConn);
myGrid.DataSource = objCmd.ExecuteReader();
myGrid.DataBind();
objConn.Close();
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
}
}
</code>
jag har laddat ner och installerat drivrutinen från MySQL och kopierat över filen MySql.data.dll till bin-katalogen på webbplatsen. Vad gör jag för fel? Finns det nåt annat sätt an ansluta till MySql?Sv: Anslutning till MySQL?
Sv:Anslutning till MySQL?
"The type or namespace 'MySql' could not be found (are you missing a using directive or an assamble reference)?
Det är en usercontrol om det har någon betydelse.
Jag kan ansluta till MySql från båda klassisk ASP och PHP.Sv:Anslutning till MySQL?
Sv:Anslutning till MySQL?
En annan fråga, nu får jag inte det felmeddelandet, men jag får samma felmeddelande på min datagrid!
<code>
myGrid.DataSource = objCmd.ExecuteReader();
myGrid.DataBind();
</code>
PÅ HTML-sidan <asp:DataGrid ID="myGrid" Runat="server"></asp:DataGrid>. Jag har startat om VS men det hjälper inte.Sv: Anslutning till MySQL?
<b>The requested name is valid and was found in the database, but it does not have the correct associated data being resolved for
</b>
Felet ska vara på rad 38 och det är throw(ex);
Vad är det som blir fel? Jag har provat att ta bort try and catch, men då får jag samma fel på objConn.Open() istället.Sv:Anslutning till MySQL?
<code>
private void Page_Load(object sender, System.EventArgs e)
{
// Anslutningssträngen...
string MyConString = "DRIVER={MySQL ODBC 3.51 Driver};" +
"SERVER=localhost;" +
"DATABASE=DATABASNAMN;" +
"UID=ANVÄNDARNAMN;" +
"PASSWORD=LÖSENORD;" +
"OPTION=3";
// SQL-frågan...
string strSQL = "SELECT * FROM ninheadmenu";
OdbcConnection MyConnection = new OdbcConnection(MyConString);
try
{
MyConnection.Open();
}
catch(Exception ex)
{
throw(ex);
}
OdbcCommand objCmd = new OdbcCommand(strSQL, MyConnection);
myGrid.DataSource = objCmd.ExecuteReader();
myGrid.DataBind();
MyConnection.Close();
}
</code>Sv: Anslutning till MySQL?
> // Anslutningssträngen...
> string MyConString = "DRIVER={MySQL ODBC 3.51 Driver};" +
> "SERVER=localhost;" +
> "DATABASE=DATABASNAMN;" +
> "UID=ANVÄNDARNAMN;" +
> "PASSWORD=LÖSENORD;" +
> "OPTION=3";
Kanske var det inte ODBC som gjorde susen, utan det faktum att du nu använde en mer korrekt connection string med semikolon mellan de olika värdena.
Den ursprungliga såg ju ut så här:
> // Anslutningssträngen...
> string strConn = "";
> strConn += "Data Source = localhost";
> strConn += "DataBase = DATABASNAMN";
> strConn += "User ID = ANVÄNDARNAMN";
> strConn += "Password = LÖSENORD";
d.v.s. så här:
strConn = "Data Source = localhostDataBase = DATABASNAMNUser ID = ANVÄNDARNAMNPassword = LÖSENORD";
/ TomasSv:Anslutning till MySQL?
hur lägger till dll i projektets referenser?
/robin