ник: Lvm
Доброго времени суток.
Гляжу – форум. Думаю, дай, зайду, спрошу...
Перетаскиваю я базу с mdb на adp (В adp я новичок). Вопросов конечно – куча.
Вот один, из них:
Открываю я рекордсет из таблицы по SQL-запросу. Делаю это так:
Dim Rs As ADODB.Recordset, StRs As String
Set Rs = New ADODB.Recordset
StRs = "SELECT * FROM Таблица1 WHERE (Таблица1.Ид=" & Me.Ид & ")AND(Таблица1.Юзер=""" & CurU & """)AND(NOT EXISTS(SELECT * FROM Таблица2WHERE (Таблица1.Ид = Таблица2.Ид)));"
Rs.Open StRs, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
Ругается так: Invalid column name ‘АХО’
Это ему не нравится условие (Таблица1.Юзер=""" & CurU & """). Без этого условия все проходит на ура.
Почему “column name”? Ведь “АХО” – это вовсе не имя колонки, а содержимое строковой переменной CurU, с которым сравнивается поле Таблица1.Юзер.
Поле Таблица1.Ид – типа int.
Поле Таблица1. Юзер – типа nvarchar (31).
Почему ему строковый тип не нравится? В дебагере строка SQL выглядит правильно:
... AND(Таблица1.Юзер="АХО")AND(NOT EXISTS …
Может это все как-то по другому делать надо?
Подскажите.