Pracuję w VB6 na pulpicie systemu Windows 7, aby czytać i pracować na plikach tekstowych i napotkać problem przekazując zmienną do instrukcji SELECT. Kod mam to:VB6 wstawia ścieżkę pliku do instrukcji SQL FROM
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim cm As ADODB.Command
Set conn = New ADODB.Connection
conn.Open _
"Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & App.Path & ";" & _
"Extended Properties=""text;HDR=No;FMT=Delimited()"""
inputFile = "C:\test data\test data.asc"
Set cm = New ADODB.Command
cm.ActiveConnection = conn
cm.CommandType = adCmdText
cm.CommandText = "SELECT * FROM " & inputFile
Set rs = New ADODB.Recordset
rs.Open cm, , adOpenKeyset, adLockOptimistic
Problemem jest to, że nazwa ścieżki do pliku wejściowego zawiera spacje i kiedy uruchomić powyższy kod, to nie na rs.OPen zgodnie z błędu mówiąc błąd składni w OD klauzula. Jeśli ścieżka w pliku inputfile nie zawiera spacji, wszystko działa bez problemu.
Próbowałem wielu kombinacji " '[] itd wokół plik_wejściowy ale zawsze pojawia się błąd składni lub inny błąd mówiąc, że inputFile.txt nie można znaleźć.
Może mi ktoś podać prawidłowy sposób obchodzenia ścieżki/nazwy plików ze spacjami w SQL proszę?
FYI podczas dodawania kodu do kwestii idzie między znacznikami lub wciąć go przez 4 spacji –
Co to nazwa tabeli, który próbujesz wybrać od? Wygląda na to, że próbujesz wybrać z pliku w systemie plików, co nie ma sensu. – recursive
Próbuję odczytać dane z pliku tekstowego. Jak już powiedziałem, jeśli ścieżka w pliku inputfile nie zawiera spacji, mogę bez problemu odczytać dane pliku tekstowego. Po otwarciu rs używam polecenia rs.GetRows do umieszczenia danych w tablicy, którą następnie przetwarzam. – blueflash