Поиск апострофа

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
sergey-911
Постоялец
Постоялец
 
Сообщения: 545
Зарегистрирован: 17.01.2005 (Пн) 19:10

Поиск апострофа

Сообщение sergey-911 » 22.02.2006 (Ср) 20:06

Доброго времени суток уважаемые! Поздравляю Вас с наступающим праздником. :D
Прошу прощения за ламерский вопрос...
Нужно выполнить SQL запрос. В качестве критерия поиска используется апостроф, что, собственно, приводит к ошибке.

Код: Выделить всё
Dim query As String
query = "SELECT * FROM TABLE "
query = query & "WHERE COL LIKE '%1'5%'"   '!!!Ищем апостроф (') => ошибка!!!
query = query & "ORDER BY 1"

Dim cn As Connection
Dim rs As ADODB.Recordset
'Создание и инициализация объекта Connection
Set cn = New ADODB.Connection
cn.ConnectionString = "PROVIDER=MSDASQL;dsn=UserDSN;uid=User;pwd=***;"
cn.Open
'Создание и инициализация объекта Recordset
Set rs = New ADODB.Recordset
Set rs.ActiveConnection = cn
rs.CursorLocation = adUseClient
rs.LockType = adLockOptimistic
rs.CursorType = adOpenKeyset

'Выполняем запрос, который выдаст ошибку
rs.Source = (query)
rs.Open

'Разрыв соединения
Set rs.ActiveConnection = Nothing
cn.Close
Set cn = Nothing
Set rs = Nothing


Как избежать ошибку?
С уважением, Сергей.

shady
Постоялец
Постоялец
 
Сообщения: 461
Зарегистрирован: 09.11.2005 (Ср) 11:03

Сообщение shady » 22.02.2006 (Ср) 20:49

ну может быть попробывать искать по коду символа...

Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 22.02.2006 (Ср) 20:57

надо удваивать внутри строковой переменной ' '

sergey-911
Постоялец
Постоялец
 
Сообщения: 545
Зарегистрирован: 17.01.2005 (Пн) 19:10

Сообщение sergey-911 » 22.02.2006 (Ср) 21:43

Konst_One
Спасибо тебе ОГРОМНОЕ! Я долго бился над этой проблемой, а решение оказалось таким кратким...

Код: Выделить всё
Dim rez As String
rez = Replace(InputBox("Введите критерий поиска", _
"Полнотекстовый поиск"), Chr$(39), Chr$(39) & Chr$(39))
С уважением, Сергей.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот и гости: 34

    TopList