Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Вызов хранимых процедур Добавлено: 14.05.07 10:56  

Автор вопроса:  Оксана
У меня есть хранимая процедура на сервере. В нее передаються 2 параметра Дата начала и Дата конца. Я пытаюсь вызвать ее из VB.Net. Выдается ошибка при работе типа: „Синтаксическая ошибка возле .2007.” Что я не так делаю? И если можно по другому (может через Параметры) то как потом результат подсоединить к DataGrid
        
Dim Sire As Object
Dim str As String
Dim d1, d2 As date
d1 = RTrim(t_d.Text)’ передается дата „01.01.2007”
d1 = LTrim(d1)
d2 = RTrim(t_d_end.Text)’ передается дата „13.01.2007”
d2 = LTrim(d2)

TConnection = New System.Data.OleDb.OleDbConnection(conect)
str = "Exec " & "Sire " & CDate(d1) & " , " & CDate(d2)
TCommand = New System.Data.OleDb.OleDbDataAdapter(str, TConnection)
     '////////////////////////
TCommand.Fill(Ds) ‘ Ds это DataSet
TConnection.Close()
table.SetDataBinding(Ds, "")
table.Refresh()
table.NavigateTo(0, "Table")

Ответить

  Ответы Всего ответов: 4  

Номер ответа: 1
Автор ответа:
 iLLyuzor



ICQ: 223685087 

Вопросов: 9
Ответов: 77
 Профиль | | #1 Добавлено: 14.05.07 11:56
Код для VB2005

Private Sub SampleStoredProcedure(ByVal Data1 As Date, ByVal Data2 As Date)

        ;Dim strConnectionString As String = “твоя строка подключения”

        Using cn As SqlConnection = New SqlConnection(strConnectionString)

            ;Dim new_DataTable As New DataTable
            
            ' колонки таблицы new_DataTable совпадают с колонками, которые возвращает хранимая процедура
            With new_DataTable
                .Columns.Add("COLUMN1", GetType(Integer))
                .Columns.Add("COLUMN2", GetType(String))
            End With

            ;Dim comm As New SqlCommand("[ИмяХранимойПроцедуры]", cn)
            comm.CommandType = CommandType.StoredProcedure
            comm.Parameters.Add(New SqlParameter("@Data1", Data1))
            comm.Parameters.Add(New SqlParameter("@Data2", Data2))

            ;Dim new_DataAdapter As New SqlDataAdapter(comm)

            Try
                cn.Open()
                new_DataAdapter.Fill(new_DataTable)
            Catch ex As Exception
                MessageBox.Show("Ошибка! " & ex.Message, "Внимание", MessageBoxButtons.OK, MessageBoxIcon.Error)
            End Try

         End Using

End Sub

Ответить

Номер ответа: 2
Автор ответа:
 -АлександР-



Вопросов: 55
Ответов: 1008
 Web-сайт: sham.clan.su
 Профиль | | #2
Добавлено: 14.05.07 13:37
Я не понял, что за ошибка и где она получается, на какой строчке?

d1 = RTrim(t_d.Text)’ передается дата „01.01.2007”
d1 = LTrim(d1)
d2 = RTrim(t_d_end.Text)’ передается дата „13.01.2007”
d2 = LTrim(d2)
попробуй удалить этот кусок кода. Не пойму, зачем обрезать текст, если потом все равно приводишь к исходному типу данных (CDate)

Ответить

Номер ответа: 3
Автор ответа:
 Оксана



Вопросов: 4
Ответов: 3
 Профиль | | #3 Добавлено: 14.05.07 13:55
Ошибка не в какойто строчке а когда уже запусщена на выполнение

Ответить

Номер ответа: 4
Автор ответа:
 -АлександР-



Вопросов: 55
Ответов: 1008
 Web-сайт: sham.clan.su
 Профиль | | #4
Добавлено: 14.05.07 14:20
Я понял, но можно полный текст ошибки?

и когда она уже на выполнении - и появ. ошибка, то все равно выделяет ту строчку, в которой эта ошибка возникает, это как правило облегчает отладку приложения....

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам