|
|
|
ASP+ADO форматы данных.
|
|||
|---|---|---|---|
|
#18+
ТАкая проблема. Есть процедура по поиску данных в таблице. Сделана довольно просто Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. и соответственно asp Код: plaintext 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. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. Все это работает при переменных формата nvarchar Но если я начинаю доставлять другие например @CustomerID smallint and c.CustomerID like '%'+@CustomerID+'%' и в asp cmd.Parameters.Append cmd.CreateParameter("CustomerID",adSmallInt,adParamInput,2,sCustomerID) начинает ругаться на set rs=cmd.Execute Error Type: (0x80040E07) Чего я неправилбно делаю? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2002, 10:11:54 |
|
||
|
ASP+ADO форматы данных.
|
|||
|---|---|---|---|
|
#18+
1. like определена только для строк 2. Нельзя складывать строку и число: '%'+@CustomerID+'%'. А Вы как думали? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2002, 10:38:49 |
|
||
|
ASP+ADO форматы данных.
|
|||
|---|---|---|---|
|
#18+
А как надо...я начинающий поэтому мало чего знаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2002, 11:14:23 |
|
||
|
ASP+ADO форматы данных.
|
|||
|---|---|---|---|
|
#18+
Я так понял что нужно использовать команду convet а куда ее вставлять? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2002, 11:40:23 |
|
||
|
ASP+ADO форматы данных.
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. Разве так не проще? Накой приводить к стоке числа,если поле в таблице числовое то и передавайте число,операции сравнения для чисел никто не отменял,да и работать будет быстрее. Думаеться что c.NameID у вас ,по идее,число,так перепишите ето по людски ...... @NameID nvarchar(20), -> @NameID int, ....... and c.NameID like '%'+@NameID+'%' - >and c.NameID = @nameID Да еще set nocount on в начало ХП впишите. Удачи ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2002, 12:19:45 |
|
||
|
ASP+ADO форматы данных.
|
|||
|---|---|---|---|
|
#18+
Понятно...а как быть с форматами данных типа smalldatetime ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2002, 12:30:05 |
|
||
|
ASP+ADO форматы данных.
|
|||
|---|---|---|---|
|
#18+
Да тогода и не совсем так c.x = @x будет ведь работать тока на сравнение....чисто.. то есть ведь над было чтоб если число заказывалось 85 например то выдавалось не только 85 но и 685 и 856...? То как быть Вот так? c.x = *@x* ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2002, 12:33:32 |
|
||
|
ASP+ADO форматы данных.
|
|||
|---|---|---|---|
|
#18+
Просьба обясниться внятнее! Для дат есть ф-ции сравнения тоже(datepart,datediff......) А вот с поиском чисел я не понял,что ето за поиск такой,нафиг он нужен,зачем передавать конкретно NameId если вам нужно чтобы вернулось пол таблы.Определитесь что должна возвращать процедура,а то не логично получаеться.Если хооите получить всех продавцов по данной компании,то запрос должен иметь вид где следующий: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. и не зачем передавать для етой задачи столько параметров ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2002, 12:43:52 |
|
||
|
ASP+ADO форматы данных.
|
|||
|---|---|---|---|
|
#18+
Необходима была форма поиска по таблице. по каждому полю. Могло заполнятся не только одно поле а несколько полей для поиска... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2002, 12:50:56 |
|
||
|
ASP+ADO форматы данных.
|
|||
|---|---|---|---|
|
#18+
Первое что приходит на ум ,так ето if.....else в Хп поставить и параметры по умолчанию и проверять их , если совпадают,то формировать нужный селект. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2002, 13:03:28 |
|
||
|
ASP+ADO форматы данных.
|
|||
|---|---|---|---|
|
#18+
Тут же дело состоит не только в прямом совпадении но и частитчном. А параметров на самом деле больше. Их 14 штук, это я тут выложил для простоты мало. Вот...так вот наверно лучше может CONVERT всетаки использовать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2002, 13:24:57 |
|
||
|
ASP+ADO форматы данных.
|
|||
|---|---|---|---|
|
#18+
Ну еще по анзванию фирмы,ето еще понятно,по названию города не понятно:) Разнестите логику поиска на несколко процедур и не мучайтесь. А вот с цыфрами не ясно - если передают 1 то что должно вернуться ,все цыфровые значения где присутствует 1? - не странно? тут диапазон значений нужен в такой ситуации,а не like. Хорошо подумайте над логикой работы приложения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2002, 13:36:08 |
|
||
|
ASP+ADO форматы данных.
|
|||
|---|---|---|---|
|
#18+
С числами естесвенно никто вводить один не будет так как саим понятно что выдаст все. Но есть например есть номер счета в банке по которому что то проплачили из которых часть чисел забыли или например номер фирмы из 4 знаков тока три помнит...а названия не помнит...... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.10.2002, 13:54:31 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32061134&tid=1819385]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
27ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 198ms |
| total: | 311ms |

| 0 / 0 |
