|
|
|
| Подскажите, если запрос к таблице возваращает всегда единственное значение, как его записать в переменную? | |
|
| |
|
|
|
| Help по фунции Dlookup
или по слову Recordset | |
|
| |
|
|
|
| т.е. просто присваиваю переменной рекордсет? Так:
recst As New ADODB.Recordset, TimeSab As Date
Set knk = CurrentProject.Connection
Sab = "SELECT Sabado FROM расписание WHERE " & _
"WDay = Forms!Заказы!Days " & _
"AND Время = Forms!Заказы!Время;"
recst.Open Sab, knk, adOpenKeyset, adLockOptimistic
TimeSab = recst
|
?? | |
|
| |
|
|
|
| в хелпе обычно примеры есть. по английски - example | |
|
| |
|
|
|
| у рекордсета есть свойство RecordCount
Вы присваиваете переменной TimeSab As Date
целочисленное значение
короче, ошибка на ошибке
нужно читать литературу | |
|
| |
|
|
|
| 1.RecordCount - считает записи рекордсета, не так ли? зачем он здесь.
2.Почему целочисленное? Sabado - поле с типом Date/Time
3.Нельзя ли более предметно? | |
|
| |
|
|
|
| тогда так
TimeSab = recst ("Sabado")
ну и добавить проверку, что рекодсет действительно что-то возвращает и тип поля соответствует типу Date | |
|
| |
|
|
|
|
On Error Resume Next
Dim TimeSab As Date
TimeSab = CurrentProject.Connection.Exequte("SELECT Sabado FROM расписание WHERE " _ & "WDay = " & Forms!Заказы!Days & " AND Время = " & Forms!Заказы!Время & ";").Field(0)
|
Еще проще:
Dim TimeSab As Variant
TimeSab = DLookup("[Sabado]", "[расписание]"; "WDay = " & Forms!Заказы!Days & " AND Время = " & Forms!Заказы!Время)
|
Предполагается, что поля "WDay" и "Время" - числовые. Если нет, то условие отбора должно выглядеть по-другому. | |
|
| |
|
7 Кб. |
|
| Забиндил кнопку:
Private Sub Кнопка_Click()
Dim TimeSab As Variant
TimeSab = CurrentProject.Connection.Execute("SELECT Sabado FROM Расписание WHERE " & _
"WDay = '" & Forms!Заказы!Days & "' AND Группа = " & Forms!Заказы!Группа & " " & _
"AND Время = " & Forms!Заказы!Время & ";").Fields(0)
MsgBox "rec:" & TimeSab
End Sub
|
Отображается ошибка (в прикрепленном рисунке) ???
Что интересно, ежели в комбобокс ставлю такой же запрос:
"SELECT Sabado FROM Расписание WHERE " & _
"WDay = Forms!Заказы!Days AND Группа = Forms!Заказы!Группа " & _
"AND Время = Forms!Заказы!Время;"
|
то замечательно выбираю из него необходимые мне значения времени...
Типы полей: Wday - текст
Группа - числовой
Время - Дата/Время
Sabado - Дата/Время
??? | |
|
| |
|
|
|
| а так?
TimeSab = CurrentProject.Connection.Execute("SELECT Sabado FROM Расписание WHERE " & _
"WDay = '" & Forms!Заказы!Days & "' AND Группа = " & Forms!Заказы!Группа & " " & _
"AND Время = '#" & Forms!Заказы!Время & "#';").Fields(0)
MsgBox "rec:" & TimeSab
|
| |
|
| |
|
|
|
| Да, точно, только без конкатенации апострофами (до, перед #). Спасибо OSMOR!
Спасибо Анатолий! | |
|
| |