Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как отфильтровать или выбрать записи в таблице с помощью строки SQL / 20 сообщений из 20, страница 1 из 1
15.12.2006, 10:41
    #34202084
klen_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отфильтровать или выбрать записи в таблице с помощью строки SQL
Всем привет!
Есть таблица с символьным полем MES .
Как выбрать только, например MES="01"
То есть как написать строку SQL
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Dim TBL As String:   TBL = "t1"
Dim SQL As String:   SQL = "SELECT * From  " & TBL & " ORDER BY MES WITH OWNERACCESS OPTION"
Dim conn As ADODB.Connection
Dim rst As ADODB.Recordset
Set conn = New ADODB.Connection
conn.ConnectionString = "DRIVER={Microsoft dBase Driver (*.dbf)};" & "DBQ=" & App.Path & ";" & "DefaultDir=" & App.Path & "\"
conn.Open
    
Set rst = New ADODB.Recordset
rst.Open SQL, conn
Заранее БОЛЬШОЕ САПАСИБО!
...
Рейтинг: 0 / 0
15.12.2006, 12:26
    #34202583
AndreyMp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отфильтровать или выбрать записи в таблице с помощью строки SQL
Странно слышать такой вопрос от klen
Код: plaintext
"SELECT * From  " & TBL & " WHERE MES='01' ORDER BY MES WITH OWNERACCESS OPTION"
или я неправильно понял вопрос?
...
Рейтинг: 0 / 0
15.12.2006, 12:29
    #34202596
AndreyMp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отфильтровать или выбрать записи в таблице с помощью строки SQL
Гы... выделение жирным не сработало в тегах кода. Баг! -лишние получились.
...
Рейтинг: 0 / 0
15.12.2006, 12:34
    #34202619
klen_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отфильтровать или выбрать записи в таблице с помощью строки SQL
ей богу не работает команда WHERE
при выполнении
Код: plaintext
rst.Open SQL, conn

выдаёт Слишком мало параметров требуется один
...
Рейтинг: 0 / 0
15.12.2006, 12:57
    #34202725
klen_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отфильтровать или выбрать записи в таблице с помощью строки SQL
Код: plaintext
SQL = "SELECT Таблица.MES From Таблица Where (((Таблица.mes) = '01')) WITH OWNERACCESS OPTION"
Это строка скопированная из ACCESS-а.
Всё равно не хочет работать.
А в самом ACCESS-е работает!
...
Рейтинг: 0 / 0
15.12.2006, 14:11
    #34203139
vkodor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отфильтровать или выбрать записи в таблице с помощью строки SQL
klen_

Код: plaintext
SQL = "SELECT * From Таблица Where mes = '01'" 
А так работает?
...
Рейтинг: 0 / 0
15.12.2006, 14:30
    #34203244
shady
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отфильтровать или выбрать записи в таблице с помощью строки SQL
Код: plaintext
conn.ConnectionString = "DRIVER={Microsoft dBase Driver (*.dbf)};" & "DBQ=" & App.Path & ";" & "DefaultDir=" & App.Path & "\"
автор
Код: plaintext
SQL = "SELECT Таблица.MES From Таблица Where (((Таблица.mes) = '01')) WITH OWNERACCESS OPTION"
Это строка скопированная из ACCESS-а.
Всё равно не хочет работать.
А в самом ACCESS-е работает!
Че-то я не понял, запрос-то к чему идет??
...
Рейтинг: 0 / 0
15.12.2006, 15:23
    #34203475
klen_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отфильтровать или выбрать записи в таблице с помощью строки SQL
vkodor
Код: plaintext
SQL = "SELECT * From Таблица Where mes = '01'" 
А так работает?
При выполнении команды
Код: plaintext
rst.Open SQL, conn
так то же ругается:
[Driver ODBC dBase] Слишком мало параметров. Требуется 1.
...
Рейтинг: 0 / 0
17.12.2006, 14:21
    #34205658
ВasiС
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отфильтровать или выбрать записи в таблице с помощью строки SQL
1. Обычно такая ошибка бывает, если указанного поля нет. Проверь как записано поле: mes (а лучше заново перепиши название)
2. Попробуй убрать лишние пробелы в запросе:
SQL = "SELECT * From Таблица Where mes='01'"
3. Проверь - может есть таблица messages или любая другая (или поле), в названии которого встречается: mes
Не знаю почему, но схожие названия лучше не использовать (из области mes, messages) - сам долго вылавливал такие глюки на Акцессе
...
Рейтинг: 0 / 0
18.12.2006, 08:46
    #34206305
Rustygold
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отфильтровать или выбрать записи в таблице с помощью строки SQL
klen_ей богу не работает команда WHERE
при выполнении
Код: plaintext
rst.Open SQL, conn

выдаёт Слишком мало параметров требуется один
Klen, дело не в sql запросе, а в недостающих параметрах для rst.Open

Код: plaintext
rst.Open SQL, conn, adOpenKeyset, adLockOptimistic

Во всяком случае когда у меня когда-то там такое вылезло, это помогло.
...
Рейтинг: 0 / 0
18.12.2006, 11:35
    #34206757
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отфильтровать или выбрать записи в таблице с помощью строки SQL
Сомневаюсь, что помогло именно это. При неуказании параметров используются по умолчанию adOpenForwardOnly, adLockReadOnly.
...
Рейтинг: 0 / 0
18.12.2006, 11:39
    #34206779
klen_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отфильтровать или выбрать записи в таблице с помощью строки SQL
Спасибо. Но не помогло.
...
Рейтинг: 0 / 0
18.12.2006, 11:57
    #34206842
klen_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отфильтровать или выбрать записи в таблице с помощью строки SQL
Интересно что и DAO не помогло
Код: plaintext
1.
2.
3.
Dim sSQL As String
sSQL = "SELECT * From  " & basa & " where MESAZ='11'"
Set DB = OpenDatabase(App.Path, True, False, "dBASE III")
Set RS = DB.OpenRecordset(sSQL)
ругается что Выбранная последовательность сортировки не поддерживается системой
хотя я нарочно отказался от сортировки.
...
Рейтинг: 0 / 0
18.12.2006, 12:16
    #34206929
shady
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отфильтровать или выбрать записи в таблице с помощью строки SQL
Может попробывать перечислить поля поименно?
ЗЫ тоже была такая проблема, только не помню как решил :(
...
Рейтинг: 0 / 0
18.12.2006, 12:27
    #34206969
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отфильтровать или выбрать записи в таблице с помощью строки SQL
Короче, выкладывай базу, разберем по байтикам)).
...
Рейтинг: 0 / 0
18.12.2006, 13:37
    #34207287
klen_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отфильтровать или выбрать записи в таблице с помощью строки SQL
Люди добрые ! Помогите ! Кому не лень .
Вот эта злосчастная база.
Надо выбрать какой-нибудь месяц.
Менял название поля MES
Отказывался от сортировки.
Пробовал ADO, затем DAO.
Но команда
Код: plaintext
1.
2.
Dim TBL As String
TBL = "grafik"
SELECT * From  " & TBL & " WHERE MES=' 01 '"
упрямо не хочет работать.
А в ACCESS-е, всё прекрасно, работает. Причём с этим же файликом grafik.dbf
...
Рейтинг: 0 / 0
18.12.2006, 13:38
    #34207293
klen_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отфильтровать или выбрать записи в таблице с помощью строки SQL
простите. вот база.
...
Рейтинг: 0 / 0
18.12.2006, 14:08
    #34207424
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отфильтровать или выбрать записи в таблице с помощью строки SQL
Трепанация базы показала, что названия полей чувствительны к регистру.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Private Sub Form_Load()
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
    cn.CursorLocation = adUseClient
    cn.Open "dsn=qwe"
    rs.Open "select * from grafik where MES='01'", cn, adOpenStatic, adLockBatchOptimistic
    Set DataGrid1.DataSource = rs
End Sub
Такой код работает.
rs.Open "select * from grafik where mes ='01'" - такой нет.
...
Рейтинг: 0 / 0
18.12.2006, 14:09
    #34207428
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отфильтровать или выбрать записи в таблице с помощью строки SQL
Подключался через dbase 5.
...
Рейтинг: 0 / 0
18.12.2006, 15:09
    #34207647
klen_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отфильтровать или выбрать записи в таблице с помощью строки SQL
Antonariy Благодарю
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как отфильтровать или выбрать записи в таблице с помощью строки SQL / 20 сообщений из 20, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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