我的SQL数据库表中没有什么?

时间:2011-11-02 14:01:13

标签: c# asp.net visual-studio-2010 sql-server-2008

这是我的第一个需要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());
}

然而我桌上什么都没有?!

3 个答案:

答案 0 :(得分:3)

你从未执行过命令。

由于您只想执行命令,因此应直接使用SqlConnectionSqlCommand,并致电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中找到它  这是将数据插入数据库

的好例子