2009-12-18 4 views
0

Используя SQL Server 2008, я создал хранимую процедуру под названием MyStoreProc и отлично работает с инструментами управления.Заполнение DataGridView из хранимой процедуры

В VB.Net 2008 я создал новый набор данных и новый TableAdaptor. В этом адаптере таблицы я создал новый запрос под названием FillByGrid и выбрал хранимую процедуру. Предварительно просмотренные данные, и они были просмотрены правильно.

На форме я создал DataGridView и выбрал Table Adapter из набора данных.

Я запустил приложение и данные не отображаются. Visual Studio autocreated код ниже, и я изменил его, чтобы выбрать на запрос я только что создал:

Me.MyTableAdapter.FillByGrid(Me.MyDataset.MyTableAdaptor) 

Никакие данные не отображаются на сетке, так что я не попробовал ручной подход:

' Create the dataset 
Dim da As New SqlDataAdapter, ds As New DataSet 
Dim conn As New SqlConnection 

conn.ConnectionString = opsData.DBConn.ConnectionString 
da.SelectCommand = New SqlCommand 
da.SelectCommand.Connection = conn 
da.SelectCommand.CommandType = CommandType.StoredProcedure 
da.SelectCommand.CommandText = "dbo.MyStoreProc" 
da.Fill(ds, "tbl1") 
DataGridView2.DataSource = ds.Tables("tbl1") 

Еще нет данных показано на рисунке. Однако, проходя через я вижу, что соединение открыто, и «da.Fill (ds,« tbl1 »)« занимает немного времени, поскольку он запускает хранимую процедуру, а таблица ds имеет правильное количество строк и столбцов , Его просто не показывают на datagrid.

Создание другого адаптера таблицы в наборе данных и возврат данных из таблицы базы данных с использованием стандартного выбора * из отображения команды таблицы в режиме datagridview.

Есть ли у кого-нибудь предложения?

Спасибо

+0

Является ли datagridview указанием столбцов, но нет данных или вообще ничего? – MartW

+0

datagridview ничего не показывает? – Belliez

ответ

0

Там, как представляется, множество ресурсов, о том, как это сделать. Лучшим источником будет: http://www.asp.net/learn/data-access/ -

Неисправность старого старомодного search yields lots too.

+0

Спасибо, ваша ссылка serach (жидкое желе) вернула меня на сайт, на котором я смотрел вчера ... отличный сайт для поиска! будет использовать снова! – Belliez

+0

Рад, что помогло - это был небольшой персональный проект, который я написал в JQuery :-) Не стесняйтесь присоединяться к группе пользователей Facebook, чтобы делать предложения по особенностям, которые вам бы хотелось: http://www.facebook.com/group.php? v = wall & viewas = 0 & gid = 31367684350 #/group.php? gid = 156909052881 –

1

попробуйте DataGridView2.DataBind(); в конце

+0

DataBind() не является функцией DataGridView? – Belliez

2

Мне удалось это сделать сейчас. Ниже я это сделал. Спасибо всем за вашу помощь. Это подтолкнуло меня в правильном направлении.

Dim strCon As String = myConnectionString 
Dim strSQL As String = "dbo.MyStoreProc" 
Dim dataAdapter As New SqlClient.SqlDataAdapter(strSQL, strCon) 
Dim table As New DataTable 
dataAdapter.Fill(table) 
DataGridView1.DataSource = table 
Смежные вопросы