powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Связать текстовые файлы Join
11 сообщений из 11, страница 1 из 1
Связать текстовые файлы Join
    #34487289
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как связать в запросе текстовые (csv) файлы?

Код: 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.
Public Sub TestConnection(pth As String)
    Dim cnt As New ADODB.Connection, rs As New ADODB.Recordset
    
    cnt.Open "DRIVER={Microsoft Text Driver (*.txt; *.csv)};" & _
        "DBQ=" & pth & ";" & _
        "Extended Properties=text;" & _
        "HDR=YES;" & _
        "FMT=FixedLength"
            
    With rs
        .CursorLocation = adUseClient
        .Open "SELECT top 30 A.[ObjName], A.[ObjType], A.[ControlName], A.[ControlType], A.[TextType], " & _
                "A.[AmpersandPos], A.[Width], A.[Height], A.[FontSize], A.[FontWeight], A.[LabelAlign], " & _
                "A.[LWidth], A.[LHeight], A.[LFontSize], A.[LFontWeight], A.[LLabelAlign], " & _
                "A.[Text] " & vbCrLf & _
                "FROM AllTexts.csv As A OUTER JOIN Dutch.csv As L ON A.TextID = A.ID " & vbCrLf & _
                "WHERE A.[ObjType] <> '2'", cnt, adOpenKeyset, adLockReadOnly, - 1 
                
        Set .ActiveConnection = Nothing
    
        While Not .EOF
            Debug.Print !Text
        
            .MoveNext
        Wend
        
    End With
            
     
    Set rs = Nothing
    Set cnt = Nothing


End Sub

На .Open "SELECT ... получаю ошибку Syntax error in FROM clause.Где моя ошибка?
...
Рейтинг: 0 / 0
Связать текстовые файлы Join
    #34487375
Ashton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А с OLEDB провайдером та же ошибка?
...
Рейтинг: 0 / 0
Связать текстовые файлы Join
    #34487405
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AshtonА с OLEDB провайдером та же ошибка?

Сейчас проверю!
...
Рейтинг: 0 / 0
Связать текстовые файлы Join
    #34487427
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, та же ошибка. Я полагаю, что проблема в определениях в файле schema.ini, но не вижу в чем
...
Рейтинг: 0 / 0
Связать текстовые файлы Join
    #34487524
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может быть, вообще нельзя применять Join? Но я нигде пока не прочел этого. Если я открываю таблицы по отдельности (без Join), проблем нет!
...
Рейтинг: 0 / 0
Связать текстовые файлы Join
    #34488006
Фотография Magnus23
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может я что-то пропустил, но не нужно ли указывать тип? В смысле Right Join, Left Join. Outer - внешний , его то как раз указывать не обязательно, но нужно указать левый или правый.
Собственно я такой синтакс почти не использовал применительно к файлам но смысл должен быть тот же.


Magnus
...
Рейтинг: 0 / 0
Связать текстовые файлы Join
    #34488440
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Действительно, есть ошибка: ... ON A.TextID = A.ID, а должно быть ON A.TextID = L .ID!
Давненько я так не лопухался - день промучался. То ли прошедшие праздники виноваты, то ли водка не свежая...
...
Рейтинг: 0 / 0
Связать текстовые файлы Join
    #34488572
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Magnus23Может я что-то пропустил, но не нужно ли указывать тип? В смысле Right Join, Left Join. Outer - внешний , его то как раз указывать не обязательно, но нужно указать левый или правый.
Собственно я такой синтакс почти не использовал применительно к файлам но смысл должен быть тот же.
По умолчанию используется inner join.
...
Рейтинг: 0 / 0
Связать текстовые файлы Join
    #34488727
Melkiades
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Antonariy Magnus23Может я что-то пропустил, но не нужно ли указывать тип? В смысле Right Join, Left Join. Outer - внешний , его то как раз указывать не обязательно, но нужно указать левый или правый.
Собственно я такой синтакс почти не использовал применительно к файлам но смысл должен быть тот же.
По умолчанию используется inner join.
Откуда инфа?
...
Рейтинг: 0 / 0
Связать текстовые файлы Join
    #34488901
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Во всех базах, с которыми я работал, по умолчанию inner. Вероятно спецификация SQL. Вряд ли текстовый драйвер будет не соответствовать ей в такой мелочи.
...
Рейтинг: 0 / 0
Связать текстовые файлы Join
    #34489626
Фотография Magnus23
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Antonariy Magnus23Может я что-то пропустил, но не нужно ли указывать тип? В смысле Right Join, Left Join. Outer - внешний , его то как раз указывать не обязательно, но нужно указать левый или правый.
Собственно я такой синтакс почти не использовал применительно к файлам но смысл должен быть тот же.
По умолчанию используется inner join.
Я имел ввиду другое, если указывается тип Outer то необходимо указать левый или правый.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Связать текстовые файлы Join
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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