这个问题在这里被问了好几次。我阅读发布的问题,但我仍然有问题。我试图从ASP.Net窗体插入值到SQL Server。我创建了一个示例网站来将数据插入到Sql表中。 SQL数据库的名称是“TestDatabaseDB”,它有一个名为“Person”的表。人员表格有4列。他们是ID,FirstName,LastName,NationalID。 ID的类型是“int”。我设置了“是身份:是”。所以SQL将为每个插入的记录分配一个ID。它只是不起作用。当我点击按钮什么都没有发生。它必须将数据插入到数据库表中或至少清除文本框,但它不会。 我试图如何将数据从ASP.Net插入MS SQL Server?
SqlConnection conn= new SqlConnection(@"Data source=.\SQLEXPRESS; AttachDBFilename=""|DataDirectory|\TestWebSiteDB.mdf""; integrated user=true; User Instance=true")
它没有工作。所以我改变了这一切为:
SqlConnection conn = new SqlConnection("Data Source=. ; Database=TestWebSiteDB; Integrated Security=true");
没有任何区别。这里是我的代码:
using System;
using System.Data.SqlClient;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void btnRegister_Click(object sender, EventArgs e)
{
SqlConnection conn = new SqlConnection("Data Source=. ; Database=TestWebSiteDB; Integrated Security=true");
SqlCommand insert = new SqlCommand("insert into Person(FirstName, LastName, NationalID) values(@Name, @Surname, @ID)" ,conn);
insert.Parameters.AddWithValue("@Name", txtboxName.Text);
insert.Parameters.AddWithValue("@Surname", txtboxFamilyName.Text);
insert.Parameters.AddWithValue("@ID", txtboxNationalCode.Text);
try
{
conn.Open();
insert.ExecuteNonQuery();
}
catch
{
LMsg.Text="Error when saving on database";
conn.Close();
}
txtboxName.Text="";
txtboxFamilyName.Text = "";
txtboxNationalCode.Text = "";
}
}
任何帮助,将不胜感激。
“它没有工作”是从来没有足够的信息。大概你在某个时候会得到一个异常 - 如果你抓住并记录完整的话,你会得到更多的细节。 –
你试过SqlConnection conn = new SqlConnection(“Data Source =。\ SQLExpress; Database = TestWebSiteDB; Integrated Security = true”);前提是您在运行应用程序的本地机器上使用SQLExpress作为数据库。否则改变“。”与该机器的IP地址。 –
什么是您的Sql Server版本?(例如2008,2012 ..) – jdev