![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как выполнить SELECT * From table1 WHERE f=:nf, если в nf ' [D7, MySQL, FB]
Antoxa2005 © (2007-11-10 07:56:00)Т.е. SELECT * From table1 WHERE f=:nf;
передаем в nf значение Вас'я, при выполненнии - ошибка. Если передаем Вас''я, то все нормально - находит все записи с Вас'я. А как это "правильно делать"?
Antoxa2005 (2007-11-10 12:09:00) [1]ВОТ!!! ВОТ!!! То, что надо!!! Спасибо!!!
Виталий Панасенко(дом) (2007-11-10 11:46:00) [2]да и все равно, не пойму, что ты собираешься заменять ? просто правильно апостроф передавать ?
Если у тебя строка вводится в Editе, то можно так: QuotedStr(Edit1.Text)
Виталий Панасенко(дом) (2007-11-10 11:42:00) [3]а смысл ? ты что, запрос динамически формируешь ?
Antoxa2005 (2007-11-10 11:18:00) [4]ладно будем replace-ить!!!
Виталий Панасенко(дом) (2007-11-10 10:37:00) [5]Можно, конечно, написать и так
Q2.ParamByName('N').AsString := 'Вас'#39'я';
Q2.Open;
И так
Q2.ParamByName('N').AsString := 'Вас'+CHR(39)+'я';
Q2.Open;
И так
Q2.ParamByName('N').AsString := 'Вас'+CHR(ORD(''''))+'я';
Q2.Open;
Виталий Панасенко(дом) (2007-11-10 10:35:00) [6]ты гонишь ? это СТАНДАРТНЫЙ СПОСОБ ПРЕДСТАВЛЕНИЯ СИМВОЛА "АПОСТРОФ" В PASCALе!!!Любую книжку возьми почитай. Это означает, чтоя передаю параметр "Вас'я"
Antoxa2005 (2007-11-10 10:23:00) [7]Это с '' работает, т.е. выход один, если в nf есть ', то replace его на '' ?
Виталий Панасенко(дом) (2007-11-10 10:07:00) [8]Db.Open;
//T.ParamByName('SN').AsString := 'Вас''я';
T.OpenWP(['Вас''я']);
использую FIBPlus 6.5
Для "мускула" -использую AnyDAC
Q2.ParamByName('N').AsString := 'Вас''я';
Q2.Open;
DataSource1.DataSet := Q2;
выбирает все как положено
Виталий Панасенко(дом) (2007-11-10 10:03:00) [9]И в "мускуле" - то же
Antoxa2005 (2007-11-10 09:51:00) [10]Как??? SELECT * FROM Table1 WHERE f=Вас'я - Находит???
Виталий Панасенко(дом) (2007-11-10 09:47:00) [11]в ЖарПтице все находит