|
|
|
| Доброго времени суток.
Гляжу – форум. Думаю, дай, зайду, спрошу...
Перетаскиваю я базу с 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 …
Может это все как-то по другому делать надо?
Подскажите. | |
|
| |
|
|
|
|
Таблица1.Юзер='" & CurU & "')
|
| |
|
| |
|
|
|
| О как...
А в mdb такого не было. Строковый тип выделялся в SQL двойными кавычками.
Большое спасибо!!! | |
|
| |
|
|
|
|
Строковый тип выделялся в SQL двойными кавычками
|
В самом деле? А! Я наверное тогда тему пропустил | |
|
| |
|
|
|
| Ну, может это частный случай.
Просто в mdb конструкция вида (Таблица1.Юзер=""" & CurU & """) чудненько работает. Я и не заморачивался никогда поиском других решений. | |
|
| |
|
|
|
| Вощето-да и то и другое работает. | |
|
| |
|
|
|
| Когда я по наивности поверив мелкософтам, что mdb в adp перенести легче легкого - запустил мастер - и готово, взял да и запустил его... И здорово же я обломался! Молотил, молотил мастер - половину запросов потерял, а из оставшихся половинау покорежил.
Прикол потом еще такой оказался: мастер нафиг не нужен - гомор с ним один. Формы и отчеты затащить проще и быстрее обычным импортом. Таблицы на сервак кинуть лучше через... блин забыл, как называется, вообщем в самом серваке есть прибабмбас - импорт данных. А запросы лучше таскать по одному: защел в mdb в конструктор запросов, переключился в режим SQL, скопировал, защел в adp и в том же режиме вставил. Потом, если надо, отредактировал. | |
|
| |