0

私は、完成したリンク データベースを保持する Visual Basic 2008 アプリケーションに取り組んでいます。動作し、完全に表示されるストアド プロシージャをいくつか作成しました。ただし、ユーザーが 2 年を入力できるストアド プロシージャが 1 つあります。開始年と終了年は、datagridview に結果を表示します。これは、ストアド プロシージャで実行すると完全に機能しますが、Visual Basic で実装すると、2 列目にのみ結果が表示され、年列は空白のままになります。

データベースではパラメーターがDateTimeデータ型にあるためかどうか疑問に思っていましたが、ストアドプロシージャで呼び出すと整数です。何か提案はありますか?

  @book_category Varchar(30),

  @start_date INTEGER,

  @end_year integer 

AS


SELECT DATEPART(yyyy,Author.date_first_book), COUNT(DATEPART(yyyy,Author.date_first_book)) AS new_year_date

FROM Book

INNER JOIN Author

ON Book.book_ID = Author.author_ID

WHERE Author.category = @book_category

AND DATEPART(yyyy,Author.date_first_book) > @start_date AND DATEPART(yyyy,Author.date_first_book) < @end_year

GROUP BY DATEPART(yyyy,Author.date_first_book)

ORDER BY DATEPART(yyyy,Author.date_first_book) ASC

RETURN

Heres VB のコードです。これは、私が使用してきた他のすべてのコードと同じであり、これは機能していないようです

プライベート セルとしての新しいトレンドCategoryDataContext

Private Sub searchBtn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles searchBtn.Click

    Dim selTrends = sel.trendsCategory(trendsCategoryNametxt.Text)
    trendsCategoryResults.DataGridView1.DataSource = selTrends
4

0 に答える 0