|
Выполнение процедуры, хранимой на sql сервере | ☑ | ||
---|---|---|---|---|
0
kathleen
06.06.16
✎
15:19
|
Помогите пожалуйста. Нужно в 1с прописать выполнение процедуры хранимой на sql сервере. В процедуру нужно передать много параметров. Нашла код:
DataBaseConnection = Новый COMObject("ADODB.Connection"); DataBaseConnection.ConnectionString = "Driver={SQL Server}; Password='111'; User ID = 'sa'; Data Source = MSDASQL.1; SERVER=server"; DataBaseConnection.Open(); Command = Новый COMОбъект("ADODB.Command"); Command.ActiveConnection = DataBaseConnection; par = Command.CreateParameter("@param1",3,1,4,0); Command.parameters.append(par); Command.CommandText = "InsertData"; Command.Parameters(0).Value=777; sp = Command.Execute(); Не понятно как передаются параметры для процедуры, а именно что значат записи par = Command.CreateParameter("@param1",3,1,4,0); Command.parameters.append(par); Разъясните кто-нибудь |
|||
1
В тылу врага
06.06.16
✎
15:24
|
||||
2
kathleen
06.06.16
✎
15:32
|
(1)А в direction что ставить,1?
|
|||
3
sitex
naïve
06.06.16
✎
15:55
|
(2) 1 идет по умолчению, значит можно ничего не ставить.
|
|||
4
kathleen
06.06.16
✎
15:55
|
спасибо
|
|||
5
kathleen
07.06.16
✎
10:56
|
В описании процедуры указаны типы параметров, например bit, nvarchar. В описании возможных значений type я их не нахожу, как их сопоставить, что указывать в этом поле, когда буду передавать значение параметра?
|
|||
6
ovrfox
07.06.16
✎
12:27
|
Посмотри описание (1)
https://msdn.microsoft.com/ru- ru/library/ms675318(v=vs.85).aspx https://msdn.microsoft.com/ru-ru/library/ms678273(v=vs.85).aspx |
|||
7
В тылу врага
07.06.16
✎
12:32
|
||||
8
kathleen
07.06.16
✎
13:38
|
(7)я его видела, и какую цифру нужно поставить в поле type, если мне нужно передать параметр типа bit?
|
|||
9
organizm
07.06.16
✎
13:53
|
почему бит, может булево подойдет?
|
|||
10
kathleen
07.06.16
✎
14:11
|
(9)дело в том, что мне дали процедуру и описание передаваемых параметров. В описании указаны такие типы как bit, nvarchar и т.д. И я не знаю какие цифры указывать для этих типов в CreateParameter. Можно ли например вместо bit, которого нет в
http://www.w3schools.com/asp/ado_datatypes.asp указывать другие и как их сопоставить? |
|||
11
Shrek_yar
07.06.16
✎
14:13
|
||||
12
kathleen
07.06.16
✎
14:17
|
(11)я спрашиваю про параметр type, а не value
|
|||
13
Shrek_yar
07.06.16
✎
14:27
|
(12) ствавь int , передавай число 0 или 1
|
|||
14
Shrek_yar
07.06.16
✎
14:28
|
или adSmallInt
2 Indicates a two-byte signed integer (DBTYPE_I2). |
|||
15
Shrek_yar
07.06.16
✎
14:31
|
||||
16
kathleen
07.06.16
✎
16:27
|
Спасибо, то что надо
|
|||
17
В тылу врага
07.06.16
✎
16:58
|
(8) там написано adBoolean
|
|||
18
kathleen
09.06.16
✎
09:40
|
У меня еще вопрос. В процедуру нужно передать параметр типа TEXT, причем это будет текст xml. Я создаю записьxml, записываю ее в строку и передаю. Этот текст может быть очень большой. Какой тип лучше указать в CreateParameter в данном случае?
|
|||
19
В тылу врага
09.06.16
✎
09:44
|
adLongVarWChar 203
|
|||
20
kathleen
09.06.16
✎
09:46
|
(19)ага, он требует указать size, че туда написать?
|
|||
21
kathleen
09.06.16
✎
09:50
|
(20)Поставила 1000000, скушал, надеюсь хватит
|
|||
22
kathleen
09.06.16
✎
12:11
|
Прописала все параметры при выполнении Command.Execute() ругается что нет первого параметра. Что я не так делаю, в Command.parameters.Count 64 штуки, в том числе и первый?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |