|
|
|
ADODB.Command&Null
|
|||
|---|---|---|---|
|
#18+
MSSQL Server 2000SP4, VB6.0SP6, ADO2.8SP1 Set MyParam = MyCommand.CreateParameter("@IDEmploy", adVariant, adParamInput, , Null) Set MyParam = MyCommand.CreateParameter("@EndDate", adVarChar, adParamInput, 8, Null) потом когда запускаю команду (это хп) в профайлере в первом случае ловлю -1, а во втором Null, как положено... почему -1 ?!?!???? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 18:02 |
|
||
|
ADODB.Command&Null
|
|||
|---|---|---|---|
|
#18+
d в первом случае правильная строка Set MyParam = MyCommand.CreateParameter("@IDEmploy", adSmallInt, adParamInput, , Null) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 18:04 |
|
||
|
ADODB.Command&Null
|
|||
|---|---|---|---|
|
#18+
заменять везде adSmallInt на adVarChar как-то не особо корректно... как передать NULL, если параметр имеет тип adSmallInt (соответственно в хп на серере тип параметра SMALLINT)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 18:27 |
|
||
|
ADODB.Command&Null
|
|||
|---|---|---|---|
|
#18+
авторкак передать NULL, если параметр имеет тип adSmallInt (соответственно в хп на серере тип параметра SMALLINT)? в ХП прописать значение по умолчанию = Null и этот параметр вообще не генерировать в программе I Have Nine Lives You Have One Only THINK! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2007, 09:30 |
|
||
|
ADODB.Command&Null
|
|||
|---|---|---|---|
|
#18+
вообще вот здесь Set MyParam = MyCommand.CreateParameter("@IDEmploy", adSmallInt, adParamInput, , Null) Null написан для наглядности, т.е. фактически там переменная, одним из значений которой может быть Null HandKot, это не тот случай, тогда параметра не было бы вообще, была бы переменная в хп... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2007, 16:52 |
|
||
|
ADODB.Command&Null
|
|||
|---|---|---|---|
|
#18+
не совсем понятно я имел следующее Код: plaintext 1. 2. т.е если переменная задает Null, то параметр не передавать а в ХП для этго параметра задать по умолчанию Null I Have Nine Lives You Have One Only THINK! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2007, 18:03 |
|
||
|
ADODB.Command&Null
|
|||
|---|---|---|---|
|
#18+
HandKot Код: plaintext Вот в этом вся соль. Если MyVar числовая переменная (integer, к примеру), то присвоить ей Null нельзя, только Empty. Можно, конечно, и Empty обрабатывать... Но дело в том, что на VB пишется OCX, который потом предполагается юзать из Delphi. Не уверен, что последний понимает, что такое vb-шный Empty... Остается Dim MyVar AS Variant, что как бы не есть хорошо... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2007, 11:40 |
|
||
|
ADODB.Command&Null
|
|||
|---|---|---|---|
|
#18+
авторНо дело в том, что на VB пишется OCX, который потом предполагается юзать из Delphi.Вот ведь завернул! Ну наоборот я бы еще понял. Может автору стоит пересмотреть всю концепцию приложения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2007, 12:52 |
|
||
|
ADODB.Command&Null
|
|||
|---|---|---|---|
|
#18+
да нет не стоит, ничего такого в этом нет. а про эффективность кода, готорый "генерит" делфи =) почитайте в инете смаостоятельно - это далеко не инструмент для разработки OCX-ов... клиент пишется другим человеком на делфи система подотчетности простая - на базе Excel, однако автор не особо разбирается как управлять Ecxel'ем программно, а мне проще на VB этот компонент больше ничего не делает, так сказать обертка - на входе ряд параметров, на выходе готовый отчет в Excel... так что не надо делать поспешных выводов, не зная задачи и ее условий ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2007, 19:03 |
|
||
|
|

start [/forum/topic.php?fid=60&msg=34964871&tid=2163025]: |
0ms |
get settings: |
9ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
86ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
| others: | 246ms |
| total: | 440ms |

| 0 / 0 |
