powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / SQL запрос к HTML таблице
47 сообщений из 47, показаны все 2 страниц
SQL запрос к HTML таблице
    #38636220
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, УВАЖАЕМЫЕ форумчане.
Столкнулся с проблемой подключения к HTML таблице. Подключаюсь к ней через Microsoft.Jet.OLEDB.4.0, мне нужно выбрать неповторяющиеся значения из конкретного столбца, но работает только запрос вида
Код: vbnet
1.
Select * From [export]

, то есть, выборка из конкретного поля не проходит. Возможно ли это?
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38636247
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как подключаетесь, что значит "не проходит" и т.п., пример кода...

Не жалейте букв описывать проблему - они бесплатные
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38636257
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: vbnet
1.
cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & MyPath & MyName & ";Extended Properties='HTML Import;HDR=YES;IMEX=1';"


Подключаюсь средствами VB6, пробовал выборку следующим запросом:
Код: sql
1.
Select DISTINCT export.id From export


но в ответ получаю ошибку: Отсутствует значение для одного или нескольких требуемых параметров
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38636261
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IvanC,

подозреваю пробелы в MyPath & MyName
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38636267
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я пробовал непосредственным адресом задавать. Тем более, запрос на выборку всех полей работает нормально.
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38636294
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно все-таки полный код подключения и запроса и образец таблицы, чтобы попробовать у себя?
маловато данных, похоже на проблему формирования самого запроса...
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38636410
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset

Set cn = New ADODB.Connection
Set rs = New ADODB.Recordset

 
 cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & MyPath & MyName & ";Extended Properties='HTML Import;HDR=YES;IMEX=1';"
 cn.Open

 SQL = "Select export.id From export"

rs.Open SQL, cn, adOpenStatic, adLockReadOnly
 
rs.Close
cn.Close



таблицу чуток позже
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38636453
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хотя нет, таблицу не получится, там данные не для широкого круга. Попробовал ради интереса на другой HTML-таблице, все нормально работает. Значит, дело именно в таблице. Пойду тогда окольными путями.
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38636502
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну так таблицу можно урезать, данные заменить на бред (хоть с помощью Ctrl+H)...
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38636562
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Отредактировал. Выкладываю. Заранее спасибо.
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38636589
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ибо в таблице нет поля "id"
Код: vbnet
1.
SQL = "Select "" id "" From export", cn, adOpenStatic, adLockReadOnly



так работает
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38636591
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у тебя названия колонок другие (неразрывные пробелы)
вот такие нужно делать:

Код: sql
1.
SELECT [ id ] FROM [export]
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38636595
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: html
1.
2.
3.
4.
5.
  <td nowrap style='background:#DEDEDE;padding:2.25pt 2.25pt 2.25pt 2.25pt'>
  <p class=MsoNormal align=center style='text-align:center'><b><span
  style='font-size:9.0pt;font-family:"Arial","sans-serif";mso-fareast-font-family:
  "Times New Roman"'>&nbsp;<span class=SpellE>id</span>&nbsp;<o:p></o:p></span></b></p>
  </td>
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38636605
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_One
Код: sql
1.
[ id ]

не канает ))
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38636610
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а ну да, тут провайдер другой =)
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38636657
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
что-то у меня со строкой
Код: vbnet
1.
SQL = "Select "" id "" From export", cn, adOpenStatic, adLockReadOnly

вытаскивает одни только "id" в значениях.
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38636675
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а что вы хотели?
Вот ваш код (нерабочий)IvanC
Код: vbnet
1.
SQL = "Select export.id From export"


я написал, как его исправить, чтобы он работал
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38636719
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
может, неправильно выразился, но там вся таблица с одним только словом id в каждой ячейке получается. То есть, работает, но некорректно.
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38636788
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А, это я тупанул.

Вот так корректно будет работать
Код: vbnet
1.
SQL = "Select " + Chr(160) + "id" + Chr(160) + " AS id From export"
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38638680
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
На последний запрос пишет, что отсутствует значение для одного или нескольких требуемых параметров. Я понять не могу, почему через recordset возвращает имена полей:
Код: vbnet
1.
rs.Fields(i).Name

, а в запросе к конкретному полю ругается...
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38638688
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что возвращает Asc(rs.Fields(i).Name)?
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38638697
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
160
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38638712
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а как вы пытаетесь обратиться к полю по имени?
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38638729
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так же, как и выше описывал
Код: vbnet
1.
SELECT id FROM export

, я понимаю, что это неправильно, но меня больше интересует, почему это не работает? Хочется понять.
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38638740
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
уже объясняли же: имя поля у вас не id , а  id 

  = это символ неразрывного пробела (код 160)
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38638741
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
& nbsp;
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38638743
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IvanCя понимаю, что это неправильно, но меня больше интересует, почему это не работает? Хочется понять.Ну здрасьти, приехали!
Вы ответы выше читали? поле "id" отсутствует в вашей таблице!!!!

Почему оно отсутствует и как правильно обратиться, я уже написал выше.

Перечитайте топик пожалуйста.
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38638789
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ну а почему тогда даже ваш запрос не обрабатывается?
Код: vbnet
1.
SQL = "Select " + Chr(160) + "id" + Chr(160) + " AS id From export"

.
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38638798
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что в вашем понимании "не обрабатывается"?

В любом случае, тот пример кода, который вы прислали, с тем примером таблицы, который вы прислали, и моей строкой работает. Скиньте код, который у вас не работает.
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38638808
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Используйте CursorLocation adUseClient (3).

можно так:

Код: vbnet
1.
SQL = "Select [" & Chr(160) & "id" & Chr(160) & "] AS id From export"
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38638809
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
Set cn = New ADODB.Connection
 Set rs = New ADODB.Recordset

    Do While MyName <> ""
           If MyName Like "*.html" Then 

 cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & MyPath & MyName & ";Extended Properties='HTML Import;HDR=YES;IMEX=1';"

  
 SQL = "Select " + Chr(160) + "id" + Chr(160) + " AS id From export"
cn.Open

  rs.Open SQL, cn, adOpenStatic, adLockReadOnly
 
 Do Until rs.EOF
 
 Debug.Print rs.Fields(0)
 
 rs.MoveNext
 Loop

 rs.Close
cn.Close
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38638819
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: vbnet
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.
Set cn = New ADODB.Connection
 Set rs = New ADODB.Recordset

    Do While MyName <> ""
           If MyName Like "*.html" Then 

cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & MyPath & MyName & ";Extended Properties='HTML Import;HDR=YES;IMEX=1';"
cn.CursorLocation = adUseClient
cn.Open
  
SQL = "Select [" & Chr(160) & "id" & Chr(160) & "] AS id From export"

SET rs.ActiveConnection = cn
rs.Open SQL, , adOpenStatic, adLockReadOnly
 
 Do Until rs.EOF
 
 Debug.Print rs.Fields(0)
 
 rs.MoveNext
 Loop

rs.Close
cn.Close

Set rs = Nothing
Set cn = Nothing
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38638837
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А у меня работает код автора и без квадратных скобок.
Впрочем, с ними все-таки правильнее, возможно другая версия драйвера и заругается.
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38638846
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ого! Это чудо! Со скобками заработало... Я б в жизни не додумался до этого! Спасибо!!!!
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38640554
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И еще вопрос из этой темы назрел. В этот же запрос добавляю условие:
Код: vbnet
1.
SQL = "Select [" & Chr(160) & "id" & Chr(160) & "] AS id From export Where id<>'0'"

, но тут же получаю ошибку, что нет значения для одного или нескольких требуемых параметров. Пробовал и так:
Код: vbnet
1.
SQL = "Select [" & Chr(160) & "id" & Chr(160) & "] AS id From export Where [" & Chr(160) & "id" & Chr(160) & "]<>'0'"

, но получаю ошибку о несоответствии типов данных. Что опять ему не нравится?
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38640598
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IvanCнесоответствии типов данныхну так поле целочисленное, не надо брать ноль в кавычки
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38640606
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну это я для примера, на самом деле у меня там текстовое поле, и в запросе я тоже текст пишу в кавычках.
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38640610
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну на "для примера" я и ответил для примера
будет другой пример, может будет другой ответ
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38640619
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Применимо к той таблице, которую я раньше выгружал, запрос будет выглядеть так:
Код: vbnet
1.
SQL = "Select DISTINCT [" & Chr(160) & "Получатель" & Chr(160) & "] AS usr From export Where usr<>' server';"
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38640622
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не, where с алиасом работать не будет
надо либо использовать оригинальное имя поля, либо делать вложенный подзапрос
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38640682
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
С оригинальным именем
Код: vbnet
1.
SQL = "Select DISTINCT [" & Chr(160) & "Получатель" & Chr(160) & "] AS usr From export Where [" & Chr(160) & "Получатель" & Chr(160) & "]<>' server';"

получаю несоответствие типов данных, а вот с вложенными запросами не встречался, поэтому буду разбираться.
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38640696
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IvanCполучаю несоответствие типов данных
Код: vbnet
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.
Set cn = New ADODB.Connection
 Set rs = New ADODB.Recordset

  

cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=v:\1.html;Extended Properties='HTML Import;HDR=YES;IMEX=1';"
cn.CursorLocation = adUseClient
cn.Open
  
SQL = "Select DISTINCT [" & Chr(160) & "Получатель" & Chr(160) & "] AS usr From export Where [" & Chr(160) & "Получатель" & Chr(160) & "]<>' server';"

Set rs.ActiveConnection = cn
rs.Open SQL, , adOpenStatic, adLockReadOnly
 
 Do Until rs.EOF
 
 Debug.Print rs.Fields(0)
 
 rs.MoveNext
 Loop

rs.Close
cn.Close

Set rs = Nothing
Set cn = Nothing

вот этот код на вашей таблице у меня исправно выдает " fdhghgh ". Даже не знаю, что сказать
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38640702
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какая версия ADO подключена к проекту?
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38640745
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ADO 2.8. А проблема в 64-разрядной винде может быть?
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38640770
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я сейчас пробую на Win7/64
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38640772
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а если попробовать
Код: vbnet
1.
" where [" & Chr(160) & "id" & Chr(160) & "] = 5"
...
Рейтинг: 0 / 0
SQL запрос к HTML таблице
    #38640958
IvanC
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Извиняюсь, сначала с адресом напутал, не те таблицы брал, а потом и подавно увидел, что на самом деле там тип поля не совпадал с тем, что я запрашивал. Опять подвела невнимательность. Всем очередной раз спасибо!
...
Рейтинг: 0 / 0
47 сообщений из 47, показаны все 2 страниц
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / SQL запрос к HTML таблице
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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