1

こんにちは、Visual Studio 2012 内で接続文字列データベースのセットアップを使用しています。データベースにデータを送信しようとしていますが、コードにエラーはありませんが、実行されていません。数時間後、睡眠が必要です。ありがとう。

デフォルトのページ コード

    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 = (LocalDB)\v11.0; Initial Catalog = Database1; Integrated Security = true");
            SqlDataAdapter da = new SqlDataAdapter();
            da.InsertCommand = new SqlCommand("INSERT INTO Adopter (FIRSTNAME,LASTNAME) 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();
            cs.Close();
        }

        protected void firstname_TextChanged(object sender, EventArgs e)
        {

        }

        protected void lastname_TextChanged(object sender, EventArgs e)
        {

        }


        }
    }

SQL コード

 CREATE TABLE [dbo].[Adopter] (
    [FIRSTNAME]  VARCHAR (50)  NOT NULL,
    [LASTNAME]   VARCHAR (50)  NOT NULL,   
);

私はそれが何か単純なものになることを知っています...私はそれを見ることができません。

4

1 に答える 1

1

コメントで説明したように、問題は接続文字列にあるようです。あなたが持っている:

SqlConnection cs = new SqlConnection("Data Source = (LocalDB)\v11.0; 
Initial Catalog = Database1; Integrated Security = true");

必要なものは次のとおりです。

SqlConnection cs = new SqlConnection("Data Source = .\SqlInstanceName; 
Initial Catalog = Database1; Integrated Security = true");

データ ソースは、ローカル マシン上のインスタンス、ホストされたデータベース、または SQL インスタンスのその他のフレーバーであり、「初期カタログ」は実際のデータベース名です。

PS - usingキーワードを調べて、コマンドと接続オブジェクトをラップして、範囲外になったときに管理されるようにすることを強くお勧めします。それらを使用すると、次のようになります。

using (SqlConnection cs = new SqlConnection())
{
   // Some code can go here.

   using (SqlCommand cmd = new SqlCommand())
   {
      // More code can go here.
   }
}

この投稿については、より包括的な回答があります。ハッピーコーディング!

于 2013-11-15T03:28:28.183 に答える