Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / гуру поделитесь опытом / 6 сообщений из 6, страница 1 из 1
30.04.2004, 13:12
    #32504391
guest
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
гуру поделитесь опытом
покажите пожайлуста пример программного кода на VB6 по импорту данных из MSSQL.
...
Рейтинг: 0 / 0
30.04.2004, 13:25
    #32504437
Alexey Kudinov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
гуру поделитесь опытом
Поймите, ясновидящих здесь нет.

Фраза "импорт данных из MSSQL" не говорит ни о чем, кроме того, что где-то в MSSQL хранятся какие-то данные и с ними что-то нужно сделать.

Что конкретно нужно сделать ?

Ну вот вам пример кода :

Код: 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.
'**********************************************************************************
' Процедура: RunDTS
' Создана  : 02.12.2003 15:06 в версии 1.0.0 Автор: AKU
'**********************************************************************************
' Параметры:
'   None
'**********************************************************************************
' Описание : Запускает DTS на сервере
'**********************************************************************************
Public Sub RunDTS()
On Error GoTo err_proc
    Dim dtsPackage As DTS.Package
    Dim strComputers As String
    
    Screen.MousePointer = vbHourglass
    Set dtsPackage = New DTS.Package
    'Создается соединение с DTS пакетом
    dtsPackage.LogFileName = App.Path & "\" & "DTSErrors.Log"
    dtsPackage.LoadFromSQLServer ServerName:=l_Settings.ConsolidServer, _
                                 Flags:=DTSSQLStgFlag_UseTrustedConnection, _
                                 PackageName:="GatherConsolid"
                               
    Dim oSourceDatabase As clsSourceDatabase
    Dim oMessage As clsStatManagerMessage
    Set oMessage = New clsStatManagerMessage
    oMessage.MesssageType = eiInfo
    
    'Цикл - выполнение переноса данных из каждой БД источника
    For Each oSourceDatabase In l_Settings.SourceDatabases
On Error GoTo StaticPlaceFailed
        Set oMessage.SourceDatabase = oSourceDatabase
        oMessage.Message = "Data Transfer started"
        RaiseEvent StatisticsMessage(oMessage)
        Dim oConnection As DTS.Connection
           For Each oConnection In dtsPackage.Connections
            If oConnection.Name = "SourceConnection" Then
                oConnection.DataSource = oSourceDatabase.File
            End If
        Next
        dtsPackage.Execute
        oMessage.Message = "Data Transfer comleted"
        strComputers = strComputers + oSourceDatabase.Place + " "
        RaiseEvent StatisticsMessage(oMessage)
NextSourceDB:
        RaiseEvent SourceDatabaseProceded
On Error GoTo err_proc
    Next
    'Теперь запишем инфо. об успешно сконсолидированных базах в консолид
    WriteSummaryToConsolid strComputers
    '... и сообщим об этом всем
    RaiseEvent AllSourceDatabasesProceded
    Screen.MousePointer = vbArrow

Exit Sub
err_proc:
    l_Error.SaveErrorInStack "clsStatisticsManager.RunDTS"
    Screen.MousePointer = vbArrow
    l_Error.RaiseError "clsStatisticsManager.RunDTS"
    Exit Sub
StaticPlaceFailed:
    oMessage.Tag = Err.Description
    oMessage.MesssageType = eiError
    RaiseEvent StatisticsMessage(oMessage)
    Resume NextSourceDB
End Sub


правда это импорт данных в MSSQL.
...
Рейтинг: 0 / 0
30.04.2004, 13:35
    #32504464
guest
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
гуру поделитесь опытом
спасибо большое Алексей Кудинов, за пример, но все таки DTS наверное правильнее применять при импорте\экспорте достаточно больших объемов данных, у меня просто несколько иная ситуация: данные с технологического оборудования пишутся в sql, и их надо оттуда выцепить на клиент, написанный на vb. вот интересно, можно ли из вб получать данные при помощи select или еще может быть как.
все равно Алексей, большое спасибо за отклик
...
Рейтинг: 0 / 0
30.04.2004, 13:57
    #32504507
Alexey Kudinov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
гуру поделитесь опытом
guestнадо оттуда выцепить на клиент, написанный на vb. вот интересно, можно ли из вб получать данные при помощи select или еще может быть как.

Ага, т.е. просто на клиент. Конечно можно, смотрите MSDN о технологии ADO. В MSDN и форумах великое множество примеров на эту тему.
Есть и другие методы, но ADO проще всего освоить.
...
Рейтинг: 0 / 0
30.04.2004, 14:42
    #32504604
HiddenCat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
гуру поделитесь опытом
Пишешь хранимую процедуру и к ней обращаешься из кода:

With cm
.ActiveConnection = Conn
.CommandType = adCmdStoredProc
.CommandText = "Отчет1"

.Parameters.Append cm.CreateParameter("@ДатаНачала", adDate, _
adParamInput, 8, mdtBeginDate)

Set mrst = .Execute

End With
...
Рейтинг: 0 / 0
30.04.2004, 15:35
    #32504758
guest
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
гуру поделитесь опытом
спасибо всем большое, Вы очень помогли
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / гуру поделитесь опытом / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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