#c# #sql #asp.net #database #forms
#c# #sql #asp.net #База данных #формы
Вопрос:
Моя форма не сохраняет текст в текстовом поле в базу данных. Возможно, у меня что-то не так в моем файле кода .cs, но я не могу с этим разобраться.
Это вполне может быть моя строка подключения.
Моя веб-форма:
<form id="form1" runat="server">
<div>
<table>
<tr>
<td>
Enter selection text:
</td>
<td>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</td>
</tr>
<td colspan="2" align="center">
<asp:Button ID="Button1" runat="server" Text="Submit" />
</td>
</tr>
</table>
</div>
</form>
Вот мой код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Data;
using System.Configuration;
using System.Data.SqlClient;
public partial class _Default : System.Web.UI.Page
{
SqlConnection con = new SqlConnection(@"Data Source=db65225900.db.1and1.com; Initial Catalog=db211255182; User ID=dbo652259000; Password=Password");
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click1(object sender, EventArgs e)
{
con.Open();
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = "insert into homepageSelection values('" TextBox1.Text "')";
cmd.ExecuteNonQuery();
con.Close();
}
}
Мой MsSQL настроен следующим образом:
1 столбец: selectionText nvarchar(3000)
Комментарии:
1. Ваш запрос insert неверен
2. Это будет работать, если таблица содержит только один столбец
3. вы получаете какую-либо ошибку?
4. Вы получали какие-либо сообщения об ошибках при отладке? Инструкция Insert должна быть такой:
INSERT INTO tbl_name (a,b,c) VALUES(1,2,3),(4,5,6),(7,8,9);
5. Какую ошибку вы получаете?
Ответ №1:
Отсутствует определение события нажатия кнопки в aspx
<asp:Button ID="Button1" runat="server" Text="Submit" OnClick="Button1_Click1" />
---------------^
Ответ №2:
SqlConnection
для SQL Server. Вам нужно MySqlConnection
— это не часть .NET Framework. Так что это лучший подход, если вам также придется использовать MySqlCommand
объект, а не SqlCommand
объект.
Это MySQL, а не SQL. Итак, вам нужно подключиться к MySQL. Для этого вам необходимо загрузить и установить MySQL Connector / NET с официального сайта MySQL.
Тогда, вероятно, вы можете посмотреть на Connect C # to MySQL, чтобы узнать, как подключиться к базе данных MySQL и запустить различные команды Insert, Update, Select, Delete с использованием C#
Последнее, но не менее важное, что вы должны включить OnClick="Button1_Click1"
в свой asp:Button
Ответ №3:
Вам необходимо задать имя столбца в инструкции insert
cmd.CommandText = "insert into homepageSelection (ColumnName) values('" TextBox1.Text "')";
также вы пропустили событие щелчка
<asp:Button ID="Button1" runat="server" Text="Submit" OnClick="Button1_Click1" />