Se connecter à une base de données MySQL depuis une page aspx
Si vous voulez vous connecter à une base de données MySQL depuis une page aspx, le texte ci-dessous peut vous aider à établir d'abord une connexion de test simple, avant de lancer votre propre projet.
Dans cet exemple, le .net connector 6.0 est installé. Vous devez placer le fichier Mysql.Data.dll dans votre répertoire racine (httpdocs/bin). Sinon, vous obtiendrez ce message lors du test : Compiler Error Message: BC30002: Type 'MySqlConnection' is not defined.
Veillez à avoir au moins ces paramètres dans votre web.config, sinon aucun message d'erreur ne s'affichera :
<configuration>
<system.web>
<customErrors mode="Off"/>
</system.web>
</configuration>
Vous pouvez télécharger le fichier Mysql.Data.dll via le lien ci-dessous : choisissez le téléchargement Windows Binaries, no installer (ZIP), extrayez le fichier manuellement et placez-le dans le répertoire bin mentionné plus haut :
http://dev.mysql.com/downloads/connector/net
Créez ensuite dans httpdocs le fichier test_mysql.aspx avec ce contenu (remplacez test64user par votre propre utilisateur de base de données, et remplacez aussi le mot de passe et la base de données dans la chaîne par vos propres valeurs) :
<%@ Page Language="VB" debug="true" %>
<%@ Import Namespace = "System.Data" %>
<%@ Import Namespace = "MySql.Data.MySqlClient" %>
<script language="VB" runat="server">
Sub Page_Load(sender As Object, e As EventArgs)
Dim myConnection As MySqlConnection
Dim myDataAdapter As MySqlDataAdapter
Dim myDataSet As DataSet
Dim strSQL As String
Dim iRecordCount As Integer
myConnection = New MySqlConnection("server=localhost; user id=test64user; password=testing; database=webawere_test64db; pooling=false;")
strSQL = "SELECT * FROM testtabel;"
myDataAdapter = New MySqlDataAdapter(strSQL, myConnection)
myDataSet = New Dataset()
myDataAdapter.Fill(myDataSet, "testtabel")
MySQLDataGrid.DataSource = myDataSet
MySQLDataGrid.DataBind()
End Sub
</script>
<html>
<head>
<title>Requête simple sur une base de données MySQL</title>
</head>
<body>
<form runat="server">
<asp:DataGrid id="MySQLDataGrid" runat="server" />
</form>
</body>
</html>
Pour le test, nous avons créé une petite base de données MySQL contenant 2 enregistrements :
CREATE TABLE `webawere_test64db`.`testtabel` (
`id` SMALLINT NOT NULL AUTO_INCREMENT ,
`veld1` VARCHAR( 30 ) NOT NULL ,
PRIMARY KEY ( `id` )
) ENGINE = InnoDB
INSERT INTO `webawere_test64db`.`testtabel` (
`id` ,
`veld1`
)
VALUES (
NULL , 'Waarde1'
), (
NULL , 'Waarde2'
);
