0

Visual Studio 2010 を使用して、データベースを追加した VB Web アプリケーションを作成しました。名前を取り、ストアド プロシージャを介してデータベースに追加する VB クラスがあります。コードを実行すると、変数が vb クラスに渡されますが、プログラムの実行を停止するとテーブルが変更されないようです。

私はvbとビジュアルスタジオのことは初めてなので、http://www.macronimous.com/resources/calling_stored_procedures_from_ASP.NET_and_VB.NET.aspをガイドとして使用しているため、コードはそのままです。

ここにvbクラスがあります

Imports System.Data
Imports System.Data.SqlClient

Public Class human

Private name As String
Private id As Integer

Public Function sendName(ByVal nm As String)

    Dim SQLCon As New SqlClient.SqlConnection
    Dim SQLCmd As New SqlCommand
    SQLCon.ConnectionString = "Data Source=.\SQLEXPRESS;AttachDbFilename=
 C:\Documents and Settings\user\my documents\visual studio 2010\Projects\
 WebApplication3\WebApplication3\App_Data\Database1.mdf;
 Integrated Security=True;User Instance=True"

    SQLCon.Open()
 'I want to to execute the procedure addName using the variable nm
    SQLCmd.CommandText = "addName"
    SQLCmd.CommandType = CommandType.StoredProcedure
    SQLCmd.Parameters.AddWithValue("@name", nm)
    SQLCmd.Connection = SQLCon 'Active Connection
    SQLCon.Close()

    Return (nm)
End Function

End Class

and here's my stored procedure "addName"
Alter PROCEDURE addName (@GivenName varchar(100))
AS
BEGIN
SET NOCOUNT ON;
Insert into tableA (name) values (@GivenName);
END
return

アプリケーションのデバッグを停止した後、テーブルに更新が表示されない原因は何ですか?

4

3 に答える 3

4

偉大な。コマンドを定義し、接続を作成して開きます。しかし、コマンドの実行に失敗します。

SQLCmd.Connection = SQLCon 'Active Connection
SQLCmd.ExecuteNonQuery()
SQLCon.Close()
于 2013-01-13T18:23:15.940 に答える
2

ステートメントを省略しましたSQLCmd.ExecuteNonQuery()

SQLCmd.ExecuteNonQuery()  'You need this line
SQLCon.Close()
于 2013-01-13T18:24:09.357 に答える
2

ExecuteNonQuery() メソッドがありませんでした。

SQLCon.Open()
SQLCmd.CommandText = "addName"
SQLCmd.CommandType = CommandType.StoredProcedure
SQLCmd.Parameters.AddWithValue("@name", nm)
SQLCmd.Connection = SQLCon 'Active Connection
SQLCmd.ExecuteNonQuery()  'This one is missing
SQLCon.Close()
于 2013-01-13T18:26:59.613 に答える