【发布时间】:2018-07-30 14:17:14
【问题描述】:
我已在本地计算机上安装 MySQL,并尝试在 Visual Studio 2017 上从我的 ASP.NET Web 应用程序将数据插入到创建的 MySQL 表中。我已成功设置 MySQL 连接并创建表称为“事件”。
最初,使用下面的代码,我没有任何语法或系统错误,但每当我尝试在单击时从我的 Web 表单插入数据时,都没有数据插入到 MySQL 表中。如果我的代码或任何其他文件配置有任何问题,有什么建议吗?
稍后,在我尝试安装 Connector for .NET 后,我仍然无法将数据插入 MySql,并且在命名空间 MySqlConnection 中出现以下错误,指出“the-type-mysqlconnection-exists-in-both-mysql-data-issue ' 如下所示
有什么建议可以更正以将数据插入我的表中?是在我的插入代码中还是问题出在其他地方?以下是我的代码:
AddEvent.aspx.cs:
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using MySql.Data.MySqlClient;
namespace Prototype3
{
public partial class AddEvent : System.Web.UI.Page
{
//convert event date input into DateTime format on back-end of page
string dateStr = dateinput1.Value;
DateTime date;
//Saving data on added event into MySQL database
string constring = "server=localhost;user id=***********;
password=***********!;
persistsecurityinfo=True;database=homesecretary";
//Connection to database below-check!!
string Query = "INSERT into events (eventTitle) VALUES
('"+tb_eventTitle.Text+"')"; //Parse date input from jQuery
datepicker
MySqlConnection connDataBase = new MySqlConnection(constring);
MySqlCommand cmdDataBase = new MySqlCommand(Query, connDataBase);
MySqlDataReader myReader;
try
{
connDataBase.Open();
myReader = cmdDataBase.ExecuteReader();
connDataBase.Close();
}
Web.config:
<configuration>
<connectionStrings>
<add name="homesecretaryConnectionString"
connectionString="server=localhost;user
id=********; password=********; persistsecurityinfo=True;
database=homesecretary" providerName="MySql.Data.MySqlClient" />
</connectionStrings>
.....
</configuration>
【问题讨论】:
-
请注意,visual-studio 标记描述说 “不要在有关代码的问题上使用此标记,而这些代码恰好是用 Visual Studio 编写的。” 请edit您的删除它的问题。
-
不相关的提示:SqlConnection 和 SqlCommand 都是 IDisposable,所以每个都应该在
using块中。然后你不需要显式地关闭它,因为退出块调用 Dispose 调用 Close。避免字符串连接构造查询,否则代码容易受到 SQL 注入攻击:使用 SQL 参数。 -
尽管您已将连接字符串放入配置中,但代码并未使用它,它只是复制了它 - 添加对
System.Configuration的引用并使用 ConfigurationManager.ConnectionStrings。
标签: c# mysql asp.net visual-studio