|
запрос
|
|||
---|---|---|---|
#18+
ВладимирМНесколько ошибок 1. Два раза подряд ключевое слово Where 2. В FoxPro одну команду нельзя "разорвать" строкой комментария. В результате, у Вас отдельно команда SELECT и отдельная команда INTO. Не вставляйте комментарии в "середину" команд. Либо "до", либо "после" 3. Точка с запятой - это символ переноса команды. У Вас команда BROWSE записана как опция команды INTO И еще, это менее принципиально, но, тем не менее, желательно указывать алиас таблицы у всех полей, участвующих в запросе. Это уменьшает неопределенность. Если я правильно понимаю, то все поля без алиасов относятся к таблице vklad_banka. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
Я бы Вам советовал на первых порах отделять команды друг от друга пустой строкой. т.е. в фоксе комментировать тоже надо с умом? насчет команд учту:) Where STR(vklad_banka.nomer_chet) = ch ; я ввожу число, предположим 2-х значное(которое точно есть в полном номере счета) но мне все ровно ни чего не выводит. А если я захочу добавить еще 1 условие vd=vud_vklad.kod(на форме я ввожу еще название вклада) ..... ..... Where STR(vklad_banka.nomer_chet) = ch .and. vklad_banka.bid_cheta = vd; правильно будет? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2011, 19:03 |
|
запрос
|
|||
---|---|---|---|
#18+
Woolf42Where STR(vklad_banka.nomer_chet) = ch ; я ввожу число, предположим 2-х значное(которое точно есть в полном номере счета) но мне все ровно ни чего не выводит. "Точно есть" где? В смысле, в каком месте счета? Это первый символ или может быть где угодно? Приведенный Вами синтаксис предполагает, что речь идет о первом символе. Только вот, функция STR() при переводе числа в строку автоматически дополняет его ведущими пробелами. В данном случае до 10 символов. Как следствие, если номер счета имеет меньше 10 символов, то Вы сравниваете пробел и символ "2". Естественно, ничего не находите. Кстати, если речь идет о банковском счете, то они обычно 20-значные, а это значит, что, во-первых, поле для его хранения не может быть числовым. FoxPro не может хранить числа с точностью выше 16 значащих цифр. А, во-вторых, даже если Вы записали его как число, то функция STR() без указания размерности, по-умолчанию, преобразует его в строку из 10 символов, что опять-таки приведет к искажениям результата. Woolf42А если я захочу добавить еще 1 условие vd=vud_vklad.kod(на форме я ввожу еще название вклада) ..... ..... Where STR(vklad_banka.nomer_chet) = ch .and. vklad_banka.bid_cheta = vd; правильно будет? Вообще-то, проще попробовать. Впрочем, синтаксически это правильно. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.12.2011, 20:20 |
|
запрос
|
|||
---|---|---|---|
#18+
ВладимирМWoolf42Where STR(vklad_banka.nomer_chet) = ch ; я ввожу число, предположим 2-х значное(которое точно есть в полном номере счета) но мне все ровно ни чего не выводит. "Точно есть" где? В смысле, в каком месте счета? Это первый символ или может быть где угодно? Приведенный Вами синтаксис предполагает, что речь идет о первом символе. Только вот, функция STR() при переводе числа в строку автоматически дополняет его ведущими пробелами. В данном случае до 10 символов. Как следствие, если номер счета имеет меньше 10 символов, то Вы сравниваете пробел и символ "2". Естественно, ничего не находите. Кстати, если речь идет о банковском счете, то они обычно 20-значные, а это значит, что, во-первых, поле для его хранения не может быть числовым. FoxPro не может хранить числа с точностью выше 16 значащих цифр. А, во-вторых, даже если Вы записали его как число, то функция STR() без указания размерности, по-умолчанию, преобразует его в строку из 10 символов, что опять-таки приведет к искажениям результата. Woolf42А если я захочу добавить еще 1 условие vd=vud_vklad.kod(на форме я ввожу еще название вклада) ..... ..... Where STR(vklad_banka.nomer_chet) = ch .and. vklad_banka.bid_cheta = vd; правильно будет? Вообще-то, проще попробовать. Впрочем, синтаксически это правильно. № счета у меня 4 значный, щас попробую еще с лайк по мучится ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2011, 00:31 |
|
запрос
|
|||
---|---|---|---|
#18+
За место Код: plaintext 1. 2.
LIKE(*ch*, STR(vklad_banka.nomer_chet))[/SRC] и фокс ругается ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2011, 14:51 |
|
запрос
|
|||
---|---|---|---|
#18+
Woolf42, Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2011, 19:11 |
|
запрос
|
|||
---|---|---|---|
#18+
alextashk, Спс теперь выводится пустая табличка ( ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2011, 19:25 |
|
запрос
|
|||
---|---|---|---|
#18+
alextashk, подскажи в чем касяк,почему не работает( Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2011, 19:31 |
|
запрос
|
|||
---|---|---|---|
#18+
А почему это должно работать? По сути, Вы выполняете такой поиск Код: plaintext 1.
Т.е. ищите символьную строку внутри числа. Естественно, получаете ошибку. Сначала надо привести оба сравниваемых выражения к символьному виду. Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2011, 20:20 |
|
запрос
|
|||
---|---|---|---|
#18+
Кстати, а Вы уверены, что переменная ch не содержит ведущих или концевых пробелов? Попробуйте сделать так Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2011, 20:22 |
|
запрос
|
|||
---|---|---|---|
#18+
Т.е. ищите символьную строку внутри числа. Естественно, получаете ошибку. Сначала надо привести оба сравниваемых выражения к символьному виду. Код: plaintext 1.
[/quot] у меня ch и nomer cheta чаровского типа, пробелов не должно быть т.к. всего 4 символа выделил. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2011, 04:20 |
|
запрос
|
|||
---|---|---|---|
#18+
1. что за ошибка? 2. ну не сложно ведь исправить запрос на что-то вот такое: ... WHERE AT(ALLTRIM(ch),vklad_banka.nomer_chet)#0 ; и посмотреть на результат, ага? :) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2011, 04:37 |
|
запрос
|
|||
---|---|---|---|
#18+
Все исправил, работает:) Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.
Надо вывести тех вкладчиков у которых более 2 вкладов, ... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2011, 06:39 |
|
запрос
|
|||
---|---|---|---|
#18+
написал как смог,больше не хватило мозгов) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2011, 07:33 |
|
запрос
|
|||
---|---|---|---|
#18+
Woolf42у меня ch и nomer cheta чаровского типа, пробелов не должно быть т.к. всего 4 символа выделил. "Не должно быть" и "нет" - это "две большие разницы". Хотя бы смотрели в отладчике на значения, ну или количество символов? PS: Вы бы для начала попробовали то, что Вам предлагают, а потом уже выдумывали бы всякие ужасы. Неужели так трудно написать Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2011, 15:56 |
|
запрос
|
|||
---|---|---|---|
#18+
Woolf42Все исправил, работает:) Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.
у меня взрыв мозга, всю клавиатуру и дисплей забрызгал! по поводу 2-х счетов, надеюсь программа не для СберБанка! Код: plaintext 1. 2. 3. 4. 5. 6. 7.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2011, 21:30 |
|
запрос
|
|||
---|---|---|---|
#18+
[quot alextashk]Woolf42Все исправил, работает:) у меня взрыв мозга, всю клавиатуру и дисплей забрызгал! по поводу 2-х счетов, надеюсь программа не для СберБанка! Код: plaintext 1. 2. 3. 4. 5. 6. 7.
Написал как сумел:) В селекте ошибку пишет "Мисинг экспесион" ... |
|||
:
Нравится:
Не нравится:
|
|||
06.12.2011, 06:38 |
|
запрос
|
|||
---|---|---|---|
#18+
[quot Woolf42]alextashkпропущено... Написал как сумел:) В селекте ошибку пишет "Мисинг экспесион" COUNT(*) ... |
|||
:
Нравится:
Не нравится:
|
|||
06.12.2011, 09:55 |
|
запрос
|
|||
---|---|---|---|
#18+
IgorNG, Спасибо Блин... щас ругается на Код: plaintext 1.
"Command contains unrecognized phrase/keyword" ... |
|||
:
Нравится:
Не нравится:
|
|||
06.12.2011, 10:59 |
|
запрос
|
|||
---|---|---|---|
#18+
Подскажите еще почему после добавление 1 вклада, у меня текстбоксы типа нумерик и дата меняются в чаровский тип,именно после их очистки? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.12.2011, 11:02 |
|
запрос
|
|||
---|---|---|---|
#18+
Woolf42IgorNG, Спасибо Блин... щас ругается на Код: plaintext 1.
"Command contains unrecognized phrase/keyword" Блин, ну справку открой, почитай про назначение опций ... |
|||
:
Нравится:
Не нравится:
|
|||
06.12.2011, 12:06 |
|
запрос
|
|||
---|---|---|---|
#18+
Woolf42, Опция HAVING не использует BY ... |
|||
:
Нравится:
Не нравится:
|
|||
06.12.2011, 12:07 |
|
запрос
|
|||
---|---|---|---|
#18+
Woolf42Подскажите еще почему после добавление 1 вклада, у меня текстбоксы типа нумерик и дата меняются в чаровский тип,именно после их очистки? А как ты их чистишь? THISFORM.Text1.Value = "" ? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.12.2011, 12:08 |
|
запрос
|
|||
---|---|---|---|
#18+
IgorNGWoolf42Подскажите еще почему после добавление 1 вклада, у меня текстбоксы типа нумерик и дата меняются в чаровский тип,именно после их очистки? А как ты их чистишь? THISFORM.Text1.Value = "" ? *thisform.Combo1.Value=' ' thisform.Text1.Value=' ' thisform.Text2.Value=' ' *thisform.Combo2.Value=' ' thisform.Text3.Value=' ' если убрать очистку,то типы не меняются,тогда приходится самому очищать ... |
|||
:
Нравится:
Не нравится:
|
|||
06.12.2011, 12:46 |
|
запрос
|
|||
---|---|---|---|
#18+
Woolf42, Если символьное поле, то thisform.Text1.Value=' ' Если числовое, то thisform.Text1.Value=0 или thisform.Text1.Value=0.00 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.12.2011, 13:13 |
|
|
start [/forum/search_topic.php?author=byzg&author_mode=last_posts&do_search=1]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
45ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
56ms |
get tp. blocked users: |
2ms |
others: | 692ms |
total: | 864ms |
0 / 0 |