这是我的第一个需要sql数据库的asp.net Web应用程序。我使用表和我在网络服务器上需要的所有列配置了数据库。
我到目前为止所做的是在web.config中:
<connectionStrings>
<add name="MyConnectionString" connectionString="Data Source=; Initial Catalog=; User ID=; Password=;"
providerName="System.Data.SqlClient" />
</connectionStrings>
以简单的申请表格:
protected void Button1_Click(object sender, EventArgs e)
{
SqlDataSource nexusdb = new SqlDataSource();
nexusdb.ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings["MyConnectionString"].ToString();
nexusdb.InsertCommandType = SqlDataSourceCommandType.Text;
nexusdb.InsertCommand = "INSERT INTO Windows (Firstname, Lastname, Email, Phone, Company, Date, IPAddress) VALUES (@Firstname, @Lastname, @Email, @Phone, @Company, @Date, @IPAdress)";
nexusdb.InsertParameters.Add("Firstname", FirstNametxtbox.Text);
nexusdb.InsertParameters.Add("Lastname", LastNametxtbox.Text);
nexusdb.InsertParameters.Add("Email", Emailtxtbox.Text);
nexusdb.InsertParameters.Add("Phone", Phonetxtbox.Text);
nexusdb.InsertParameters.Add("Company", Companytxtbox.Text);
nexusdb.InsertParameters.Add("Date", DateTime.Now.ToString());
nexusdb.InsertParameters.Add("IPAddress", Request.UserHostAddress.ToString());
}
然而我桌上什么都没有?!
答案 0 :(得分:3)
你从未执行过命令。
由于您只想执行命令,因此应直接使用SqlConnection
和SqlCommand
,并致电command.ExecuteNonQuery()
。
using (var connection = new SqlConnection(connection string))
using (var command = new SqlCommand("INSERT ... ", connection)) {
command.Parameters.AddWithValue("name", someValue);
connection.Open();
command.ExecuteNonQuery();
}
答案 1 :(得分:1)
看起来你实际上并没有执行命令。尝试使用该insert语句创建SqlCommand,按照现在的步骤填充参数,然后执行命令。
答案 2 :(得分:1)
请阅读有关Inserting Data Into a SQL Database的文章。您会在C#
和VB
中找到它
这是将数据插入数据库