2011-11-02 71 views
1

这是我第一个需要sql数据库的asp.net web应用程序。我使用表格和我的Web服务器上需要的所有列来配置数据库。我的sql数据库表中没有什么?

我做了什么至今在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

你在哪里执行命令? – lluismontero

+0

在提交按钮中:<%@ Page Language =“C#”AutoEventWireup =“true”CodeFile =“contact_us.aspx.cs”Inherits =“contact_us”%> –

回答

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(); 
} 
+0

请给我一个例子吗? –

1

它看起来并不像你实际执行的命令。尝试使用该插入语句创建SqlCommand,像现在这样填充参数,然后执行该命令。

+0

可否请给我一个例子 –

相关问题