|
Записать значение в поле DBF файла с типом MEMO | ☑ | ||
---|---|---|---|---|
0
Так мало знающий
26.10.18
✎
08:44
|
Добрый день. Не получается записать значение в поле с типом Memo. Работу с файлами веду через OLE DB.
Вот создаю файл: Соединение = Новый COMОбъект("ADODB.Connection"); Соединение.ConnectionString="Provider=vfpoledb.1;data source="+КаталогДляВыгрузки+";"; //"Driver={Microsoft Visual FoxPro Driver};" Соединение.CursorLocation = 3;// client side Соединение.Mode = 3;// adModeReadWrite Соединение.Open(); Соединение.Execute("create table Calculation.dbf (CODE2 C(10) NOT NULL, INFO M NOT NULL)"); Вот таким кодом пытаюсь записать: ЗаписьМ = ЗаписатьДанныеВФорматеXML(Секция,Кофе); Соединение.Execute("insert into Calculation.dbf (CODE2, INFO) values ('"+Строка(Кофе.Код)+"', REPLICATE('"+ЗаписьМ+"',100)"); Значение реквизита "ЗаписьМ" строка, длинна которой может быть больше 254 символов. |
|||
1
Так мало знающий
26.10.18
✎
08:46
|
Ошибка:
Произошла исключительная ситуация (Microsoft OLE DB Provider for Visual FoxPro): Command contains unrecognized phrase/keyword. |
|||
2
asady
26.10.18
✎
08:52
|
(0)
а вот так ошибка есть? Соединение.Execute("insert into Calculation.dbf (CODE2, INFO) values ('"+Строка(Кофе.Код)+"', REPLICATE('1234567890',100)"); |
|||
3
Так мало знающий
26.10.18
✎
08:57
|
(2) Да. Вот: Произошла исключительная ситуация (Microsoft OLE DB Provider for Visual FoxPro): Syntax error.
|
|||
4
Так мало знающий
26.10.18
✎
08:59
|
(2) Исправил синтаксическую. Ошибок не выдало, но и в поле "INFO" значения нет
|
|||
5
Так мало знающий
26.10.18
✎
09:00
|
(2) Вру. Есть значение
|
|||
6
Так мало знающий
26.10.18
✎
09:02
|
(2) Только как мне записать мое значение. Как я понял в одинарных кавычках не может быть строка больше 254 символов, типа это константа.
|
|||
7
asady
26.10.18
✎
09:10
|
(6) а так тоже ошибка?
Соединение.Execute("insert into Calculation.dbf (CODE2, INFO) values ('"+Строка(Кофе.Код)+"','"+ЗаписьМ+"')"); |
|||
8
Так мало знающий
26.10.18
✎
09:16
|
(7) Да: Произошла исключительная ситуация (Microsoft OLE DB Provider for Visual FoxPro): Command contains unrecognized phrase/keyword.
|
|||
9
asady
26.10.18
✎
09:27
|
(8) попробуй в строке подключения указать:
Extended properties=dBase IV |
|||
10
Так мало знающий
26.10.18
✎
09:31
|
(9) Он же вроде не поддерживает мемо поля, да и готовлю я их для загрузки в сервио, обмен с которым на этой библиотеке
|
|||
11
asady
26.10.18
✎
09:32
|
(8) вообще поиском ты видимо не пользовался совсем
Запись данных из ДБФ с мемо полями |
|||
12
Так мало знающий
26.10.18
✎
09:33
|
(11) Пользовался и эту тему видел. В ней вопрос о чтении, а запись не обсуждается
|
|||
13
asady
26.10.18
✎
09:36
|
||||
14
Так мало знающий
26.10.18
✎
10:02
|
(13) Если бы вот здесь дописали ответ, было бы самое то http://forum.foxclub.ru/read.php?46,546786,546830,quote=1
|
|||
15
Так мало знающий
26.10.18
✎
11:15
|
А кто-то может подсказать как должен выглядеть текст команды с применением функции "APPEND MEMO"
|
|||
16
Так мало знающий
26.10.18
✎
15:47
|
Как решение думаю пригодится и такой вариант:
Соединение = Новый COMОбъект("ADODB.Connection"); Соединение.ConnectionString="Provider=vfpoledb.1;data source="+КаталогДляВыгрузки+";"; //"Driver={Microsoft Visual FoxPro Driver};" Соединение.CursorLocation = 3;// client side Соединение.Mode = 3;// adModeReadWrite Соединение.Open(); Соединение.Execute("create table Calculation.dbf (CODE2 C(10) NOT NULL, INFO M NOT NULL)"); Command = Новый COMОбъект("ADODB.Command"); Command.ActiveConnection = Соединение; Command.CommandText = "Insert Into Calculation (CODE2,INFO) Values ('"+Строка(Кофе.Код)+"',?)"; param = Новый COMОбъект("ADODB.Parameter"); param.Value = ЗаписьМ;//Текст или строка, значение которой может быть больше 254 символов param.Name = "PINFO"; param.Type = 129; //adChar param.Size = 10000; Command.Parameters.Append(param); Command.Execute(); Соединение.Close(); |
|||
17
Сияющий в темноте
28.10.18
✎
18:57
|
Через параметры можно все,а еще можно открыть таблицу напрямую и через RecordSet в нее писать.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |