Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
15 дек 2024, 17:40

Изменение записей в базе sdf

Автор Amfiaray, 21 янв 2014, 10:05

0 Пользователей и 1 гость просматривают эту тему.

Amfiaray


Добрый день!
Необходимо изменить записи в базе декларант-алко, попробовал сделать вот так:

ОлеДБ = Новый COMОбъект("ADODB.Connection");
ОлеДБ.Provider = "Microsoft.SQLSERVER.CE.OLEDB.3.5";
Соединение  = "Provider=Microsoft.SQLSERVER.CE.OLEDB.3.5; Data Source="+СокрЛП(ПутьКДА)+"; SSCE:Database Password=7338a7e6-fd3b-49d1-8d90-ddbbc1b39fa1";
Попытка
        ОлеДБ.Open(Соединение);
Исключение
Сообщить(ОписаниеОшибки());
Возврат;
КонецПопытки;

ТекстЗапроса= "UPDATE wrk_org SET [INN] ='"+INN+"',[KPP]='"+KPP+"',[OrgName]='"+Наименование+"',
|[Phone]='"+Phone+"',[CCode] ='"+CCode+"', [Index] ='"+Index+"', [Rcode] ='"+Rcode+"', [Area] ='"+Area+"',
|[City]='"+City+"', [Place]='"+Place+"',[Street]='"+Street+"',[Building]='"+Building+"',[Korp]='"+Korp+"',
  |[Flat]='"+Flat+"',[Head_id]='"+Head_id+"',[OrgType]='"+OrgType+"',[DirID]='"+DirID+"',[BuhID]='"+BuhID+"',
|[Liter]='"+Liter+"' WHERE OrgName = "+Наименование+"";
cmd = Новый COMОбъект("ADODB.Command");
cmd.ActiveConnection = ОлеДБ;
cmd.CommandText=ТекстЗапроса;
RecordSet = Новый COMОбъект("ADODB.RecordSet");
RecordSet=cmd.Execute();

Выходит ошибка:

{Форма.Форма.Форма(87)}: Ошибка при вызове метода контекста (Execute)
RecordSet=cmd.Execute();
по причине:
Произошла исключительная ситуация (Microsoft SQL Server Compact OLE DB Provider): В команде имеется одна или несколько ошибок. [,,,,,]
Подскажите как реализовать?

Vit1501

Ну я бы для начала с помощью отладчика получил бы полную строку запроса и попробовал бы выполнить этот запрос например в Майкрософтовской СУБД.

Amfiaray

ЦитироватьНу я бы для начала с помощью отладчика получил бы полную строку запроса и попробовал бы выполнить этот запрос например в Майкрософтовской СУБД.
Нет СУБД чтобы проверить :( только Microsoft SQL Server Compact Edition из поставки декларанта
Добавлено: 21 янв 2014, 10:48


А текст запроса получается вот такой:
UPDATE wrk_org SET [INN] ='2204057496',[KPP]='223745005',[OrgName]='Аватар с.Б.Исток ул.Партизанская 5а',
[Phone]='',[CCode] ='643', [Index] ='659560', [Rcode] ='22', [Area] ='Быстроистокский р-н',
[City]='', [Place]='Быстрый Исток с',[Street]='Партизанская ул',[Building]='5',[Korp]='а',
[Flat]='',[Head_id]='1',[OrgType]='0',[DirID]='0',[BuhID]='0',[Liter]='' WHERE OrgName = Аватар с.Б.Исток ул.Партизанская 5а

Vit1501

Попробуй имена полей не брать в квадратные скобки и значение поля, которое стоит в условии, взять в апострофы как все другие поля

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск