|
|
|
Програмно создаваемый SQL-запрос
|
|||
|---|---|---|---|
|
#18+
Функции RangUser сидящей в DataModule1 (dm1) передается параметр LoginUser из разных форм (формы динамические). По идее функция должна шарить по БД и возвращать должность интересующего сотрудника. Но на самом деле как и с белыми медведями -они кусаются. Полагаю, что проблема в ковычках, т.к. при прямом присвоении значения TempParamUser все работает. Прошу помощи специалистов, а то мои молитвы до богов Delphi не доходят. Впал в ступор и буду благодарен за готовый код. Спасибо. Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. Модератор: Как мне оформить свое сообщение? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2019, 20:33 |
|
||
|
Програмно создаваемый SQL-запрос
|
|||
|---|---|---|---|
|
#18+
Sensor230, попробую тебе помочь, но как мне кажется у тебя проблема с передачей параметров в sql. Поэтому предлагаю следующее решение 1. Используй табуляцию. 2. Оформляй код на форуме Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. За оформление кода ставлю тебе 2 xD По твоим ковычкам, самому запросу они не нужны достаточно Код: sql 1. , если же всё же ты хочешь использовать свою ужасную конструкцию то пиши запрос так Код: sql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2019, 20:59 |
|
||
|
Програмно создаваемый SQL-запрос
|
|||
|---|---|---|---|
|
#18+
Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2019, 21:05 |
|
||
|
Програмно создаваемый SQL-запрос
|
|||
|---|---|---|---|
|
#18+
rgreat, Ну знаю так нельзя))) но я же код дал ему как нужно, по идее если так написать то работать будет же))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2019, 21:08 |
|
||
|
Програмно создаваемый SQL-запрос
|
|||
|---|---|---|---|
|
#18+
rgreat, тем более ответов в его теме нету, помогли бы)) а так да пусть почитает про sql инъекции. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2019, 21:09 |
|
||
|
Програмно создаваемый SQL-запрос
|
|||
|---|---|---|---|
|
#18+
RackotPro , по поводу оформления кода - сознаю свою вину, меру, степень, глубину... буду стараться. И большое спасибо за код , что то перемкнуло с этими ковычками и 2 недели ни с места. СПАСИБО!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2019, 21:12 |
|
||
|
Програмно создаваемый SQL-запрос
|
|||
|---|---|---|---|
|
#18+
RackotPro, Дык мало того что не ясно что у него там за проблема-то вообще, так и еше твой код принципиально работать не будет. :-) Ибо кавычки таки нужны. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2019, 21:12 |
|
||
|
Програмно создаваемый SQL-запрос
|
|||
|---|---|---|---|
|
#18+
а про медведей - что их по идее тоже е...., а на деле они кусаются (старая русская поговорка) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2019, 21:14 |
|
||
|
Програмно создаваемый SQL-запрос
|
|||
|---|---|---|---|
|
#18+
rgreat, нуко нуко, ошибку у меня увидел??? Код: pascal 1. 2. 3. 4. Либо я гений и мастер телепатии и один я понял, что проблема у него с кавычками, а вот по поводу мой пример кода не будет работать, извольте, объясните почему? С помощью двоеточия объявляем в запросе (:LoginUser) входной параметр далее, берём функцию ParamByName и ищем наш параметр, изи рил толк синк эбаут мен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2019, 21:17 |
|
||
|
Програмно создаваемый SQL-запрос
|
|||
|---|---|---|---|
|
#18+
RackotPro, так же отпишусь о своей грубой ошибке да кавычки правда нужны для сходного параметра, в любой IDE для любого sql. Мы пишем запросы вида Select FIO from People where Name = 'Маша'. Так вот что бы в делфи присвоить ADOQuery2.SQL.Text тот же результат, нам нужно воспользоваться имеющейся в делфи конкатенацией ковычек, выглядит это следующим образом Код: sql 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2019, 21:24 |
|
||
|
Програмно создаваемый SQL-запрос
|
|||
|---|---|---|---|
|
#18+
Да уж. Профайлер - вообще слов незнакомое ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2019, 21:58 |
|
||
|
Програмно создаваемый SQL-запрос
|
|||
|---|---|---|---|
|
#18+
RackotProrgreat, нуко нуко, ошибку у меня увидел??? Код: pascal 1. 2. 3. 4. Я не rgreat, но ошибку увидел - 2-я строка бессмысленна. Я лично считаю код, эквивалентный вызову функции DoNothing, ошибочным. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2019, 22:59 |
|
||
|
Програмно создаваемый SQL-запрос
|
|||
|---|---|---|---|
|
#18+
RackotProпо поводу мой пример кода не будет работать, извольте, объясните почему? 21806855 Код: pascal 1. Чтоб заработало в самой LoginUser - уже должны быть кавычки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2019, 23:36 |
|
||
|
Програмно создаваемый SQL-запрос
|
|||
|---|---|---|---|
|
#18+
А нельзя в отладчике, или даже в профайлере сервера БД, если доступен, посмотреть результирующую строку запроса и средствами же сервера БД посмотреть, что в ней не так? Сообразить, что там у тебя склепалось, и почему оно не работает бывает сложно, а Delphi синтаксического анализа строки запроса не производит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2019, 08:33 |
|
||
|
Програмно создаваемый SQL-запрос
|
|||
|---|---|---|---|
|
#18+
Если путаешься в кавычках, то можно использовать QuotedStr() Код: pascal 1. Но лучше, как уже подсказали выше - это параметрические запросы. Еще совет: не используй *, а перечисляй поля. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2019, 09:35 |
|
||
|
Програмно создаваемый SQL-запрос
|
|||
|---|---|---|---|
|
#18+
Sensor230TempParamUser:='''SELECT * FROM users WHERE Ulogin="'+LoginUser+'" '''; Интересно, что будет если... Код: pascal 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2019, 09:44 |
|
||
|
Програмно создаваемый SQL-запрос
|
|||
|---|---|---|---|
|
#18+
Всем СПАСИБОЧКИ, что сдвинули меня с мертвой точки. Все заработало вот так: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2019, 09:59 |
|
||
|
Програмно создаваемый SQL-запрос
|
|||
|---|---|---|---|
|
#18+
Sensor230, Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. Насчет "*" уже сказали, лучше перечисляй селектируемые поля по именам ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2019, 10:16 |
|
||
|
Програмно создаваемый SQL-запрос
|
|||
|---|---|---|---|
|
#18+
wadmanSensor230TempParamUser:='''SELECT * FROM users WHERE Ulogin="'+LoginUser+'" '''; Интересно, что будет если... Код: pascal 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2019, 12:08 |
|
||
|
Програмно создаваемый SQL-запрос
|
|||
|---|---|---|---|
|
#18+
rgreat, да ладно вам про sql-инъекции)) этож ПО скорее всего для себя)) или для учёбы, пусть пишет так))) а потом создаст сайт и будут уже над ним глумиться, вставлять на сайт всякие непотребства)). Так процесс обучения станет более увлекательным)). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2019, 12:24 |
|
||
|
Програмно создаваемый SQL-запрос
|
|||
|---|---|---|---|
|
#18+
Док Код: pascal 1. Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2019, 15:47 |
|
||
|
Програмно создаваемый SQL-запрос
|
|||
|---|---|---|---|
|
#18+
_Vasilisk_, ага. Человек азы не освоил, а ты ему спагетти подсовываешь :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2019, 17:36 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39772522&tid=2039815]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
153ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
62ms |
get tp. blocked users: |
1ms |
| others: | 238ms |
| total: | 493ms |

| 0 / 0 |
