【问题标题】:asp.net c# data to a databaseasp.net c# 数据到数据库
【发布时间】:2013-11-15 17:02:36
【问题描述】:

我已经在这两天没有运气了。 问题是我正在尝试通过 Web 表单将数据输入到我的 sql server 数据库中。每次我尝试运行时都会出错。

下面是我运行代码时遇到的错误

这是网络表单的代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Data;

namespace WebApplication1
{
    public partial class _Default : Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            SqlConnection cs = new SqlConnection ("Data Source = SQLEXSPRESS; Initial Catalog = OMS; Integrated Security = true");
            SqlDataAdapter da = new SqlDataAdapter ();
            da.InsertCommand = new SqlCommand("INSERT INTO Customer tbl (FirstName,LastName) Customer VALUES (@FirstName,@LastName)", cs);
            da.InsertCommand.Parameters.Add("@FirstName", SqlDbType.VarChar).Value = firstname.Text;
            da.InsertCommand.Parameters.Add("@LastName", SqlDbType.VarChar).Value = lastname.Text;

            cs.Open();
            da.InsertCommand.ExecuteNonQuery(); // Error occurs here
            cs.Close();
        }

        protected void firstname_TextChanged(object sender, EventArgs e)
        {

        }

        protected void lastname_TextChanged(object sender, EventArgs e)
        {

        }
    }
}

这是我的数据库表代码

CREATE TABLE [dbo].[Customer] (
[CustomerID] INT          IDENTITY (1, 1) NOT NULL,
[FirstName]  VARCHAR (50) NULL,
[LastName]   VARCHAR (50) NULL,
[Address]    VARCHAR (50) NOT NULL,
[City]       VARCHAR (25) NOT NULL,
[Postcode]   VARCHAR (10) NOT NULL,
[Country]    VARCHAR (50) NOT NULL,
[Modified]   ROWVERSION   NOT NULL,
PRIMARY KEY CLUSTERED ([CustomerID] ASC)

);

任何帮助将不胜感激。

【问题讨论】:

  • 粗略的猜测我会说你的连接字符串是错误的。
  • 是的,这就是我的想法,但连接字符串 SqlConnection cs = new SqlConnection ("Data Source = SQLEXSPRESS; Initial Catalog = OMS; Integrated Security = true");应该可以。我不知道还有什么可能。
  • 您的查询应该是 INSERT INTO Customer(FirstName,LastName) VALUES (@FirstName,@LastName)"
  • 谢谢克里斯托斯,我会试一试的。

标签: c# visual-studio-2012 database-connection asp.net-4.5


【解决方案1】:
SqlConnection cs = new SqlConnection ("Data Source = SQLEXSPRESS; Initial Catalog = OMS; Integrated Security = true");

应该是

SqlConnection cs = new SqlConnection ("Data Source = SQLEXPRESS; Initial Catalog = OMS; Integrated Security = true");

你拼写错了!

您可能还需要使用 Data Source = .\SQLEXPRESS

【讨论】:

  • 谢谢安德鲁,数据源 = SQLEXPRESS 仍然无法正常工作。当我尝试 Data Source = .\SQLEXPRESS 时,我收到一条错误消息,提示无法识别海景序列。知道如何解决这个问题吗?
  • 我假设您的意思是逃生而不是海景 :) ....无论如何 @"Data Source = .\SQLEXPRESS..." 应该解决它。
  • 关于您的查询错误的其他评论也是有效的,需要修复。
猜你喜欢
  • 1970-01-01
  • 2014-01-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-12-12
  • 1970-01-01
  • 1970-01-01
  • 2011-02-27
相关资源
最近更新 更多