powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Синтаксис в строке select при вызове из VB
1 сообщений из 26, страница 2 из 2
Синтаксис в строке select при вызове из VB
    #36423697
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: Май
> Буду просто вместо параметров создавать строку запроса конкатенацией с переменными.

Не понял, как

> Вопрос конечно остался, но для дальнейшей работы над задачей не так важно.

В виду того, что я не нашел такого синтаксиса в Акцессе, я бы сделал так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
Function GetData_TRIO(ByVal Par As 
ParIndTRIO, ByVal d As Date, ByVal Seccode As String) As Ind_TRIO
        Dim TR As Ind_TRIO
        Dim Vol As Double
        Dim Kol As Double
        Dim lcn As New OleDb.OleDbConnection(ConnStringInfo)
        Dim qstr As String = "select sum(колво) as KOL, sum(объем) as VOL  from сделки where код_бумаги = ? "
        Dim str As String = " and DATEDIFF(""s"", время, ?) <= "
        Dim str_buy As String = " and операция = 'Покупка' and DATEDIFF(""s"", время, ?) <= "
        Dim str_sell As String = " and операция = 'Продажа' and DATEDIFF(""s"", время, ?) <= "

        Dim cmd As New OleDb.OleDbCommand(qstr, lcn)

        Dim pD As New OleDb.OleDbParameter

        Dim pSec As New OleDb.OleDbParameter
        Dim pT As New OleDb.OleDbParameter

        Dim dr As OleDb.OleDbDataReader

        REM===========================================================================
        REM Проверка открытости соединения
        REM===========================================================================
        Try

            If lcn.State = ConnectionState.Closed Then
                lcn.Open()
            End If
        Catch e1 As Exception ' Ошибка открытия соединения
            MsgBox(e1.Message)
        End Try

        REM===============================================
        REM Формируем параметры запроса
        REM===============================================

        pSec.ParameterName = "@SEC"
        pSec.DbType = DbType.String
        pSec.Direction = ParameterDirection.Input
        pSec.Value = Seccode
        cmd.Parameters.Add(pSec)


        pD.ParameterName = "@D"
        pD.DbType = DbType.Date
        pD.Direction = ParameterDirection.Input
        pD.Value = d
        cmd.Parameters.Add(pD)

        pT.ParameterName = "@P"
        pT.DbType = DbType.Double
        pT.Direction = ParameterDirection.Input
        pT.Value = Par.T_Long
        cmd.Parameters.Add(pT)


        cmd.CommandType = CommandType.Text
        cmd.CommandText = qstr & str & "?"

        Try
            dr = cmd.ExecuteReader()
            Kol = dr("Kol").Value ' Здесь я не знаю правильно синтаксиса. Посмотри сам
            Vol = dr("Vol").Value ' Здесь я не знаю правильно синтаксиса. Посмотри сам
        Catch e2 As Exception ' Ошибка чтения
            MsgBox(e2.Message)
            Return TR
        End Try


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
1 сообщений из 26, страница 2 из 2
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Синтаксис в строке select при вызове из VB
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]