|
Чтение и запись *.SDF | ☑ | ||
---|---|---|---|---|
0
Ivan Bezdomnyi
13.09.12
✎
13:32
|
||||
1
Ёпрст
13.09.12
✎
13:36
|
Написать простейщий запрос к ней вестимо.
|
|||
2
Ёпрст
13.09.12
✎
13:36
|
через ado
|
|||
3
Ivan Bezdomnyi
13.09.12
✎
13:45
|
(2) есть пример?
|
|||
4
Ёпрст
13.09.12
✎
13:47
|
(3)
берешь любого провайдера из этих.. далее всё просто http://connectstr.ru/?page_id=21207 пример могу слепить, надо ? |
|||
5
Ivan Bezdomnyi
13.09.12
✎
13:50
|
(4) был бы признателен)
|
|||
6
andrewks
13.09.12
✎
13:55
|
с момента введения декларирования у алкоголиков резко возрос интерес к xml, xsd и sdf )))
|
|||
7
Ivan Bezdomnyi
13.09.12
✎
13:58
|
(6) а почему бы и да)
|
|||
8
Ёпрст
13.09.12
✎
14:20
|
ОлеДБ = Новый COMОбъект("ADODB.Connection");
Соединение = "Provider=Microsoft.SQLSERVER.CE.OLEDB.3.5;Data Source="+СокрЛП(тут путь к *.sdf)+";SSCE:Database Password=тут пароля к базе"; ОлеДБ.Open(Соединение); Command = Новый COMОбъект("ADODB.Command"); Command.ActiveConnection = ОлеДБ; ТекстЗапроса = " |select * |from нужная табличка |"; Command.CommandText = ТекстЗапроса; RecordSet = Новый COMОбъект("ADODB.RecordSet"); RecordSet = Command.Execute(); Если not RecordSet.EOF() Тогда RecordSet.MoveFirst(); Пока RecordSet.EOF() = 0 Цикл Сообщить(RecordSet.Fields.Item(1).value);//тут нужные поля RecordSet.MoveNext(); КонецЦикла; КонецЕсли; RecordSet.Close(); RecordSet = Неопределено; Command = Неопределено; |
|||
9
Ivan Bezdomnyi
14.09.12
✎
05:52
|
(8) спасибо!
а как посмотреть какие там есть таблички в этой базе? и есть ли способ их не только читать, но и записывать/дополнять? |
|||
10
shuhard
14.09.12
✎
07:31
|
(9) [а как посмотреть какие там есть таблички в этой базе?]
ADOX [и есть ли способ их не только читать, но и записывать/дополнять?] у рекордсета 4 метода: Addnew Delete Update Edit |
|||
11
SmallDog
14.09.12
✎
07:43
|
||||
12
Ivan Bezdomnyi
14.09.12
✎
12:19
|
(10) прошу прощения, но не могу допереть как пользоваться этими методами?
и гуглил и так и сяк пробовал, может есть пример? |
|||
13
shuhard
14.09.12
✎
12:26
|
(12) примеров на мисте туча, что конкретно не получается ?
|
|||
14
Ivan Bezdomnyi
14.09.12
✎
12:35
|
Command = Новый ComОбъект("ADODB.Command");
Command.ActiveConnection= ОлеДБ; Command.CommandText = "select * from wrk_Contragents"; Recordset.CursorLocation = 3; Recordset.Open("select * from wrk_Contragents",ОлеДБ, 2,3); RecordSet.AddNew(); RecordSet.Fields("INN").value="1"; RecordSet.Fields("KPP").value="2"; RecordSet.Fields("OrgName").value="RECORDSET"; RecordSet.Fields("CCode").value="643"; RecordSet.Fields("RCode").value="01"; RecordSet.Update(); Произошла исключительная ситуация (Microsoft Cursor Engine): Произошли ошибки во время выполнения многошаговой операции. Проверьте значения всех состояний. Читать - читает, как в (8) написано. А записать не получается. |
|||
15
shuhard
14.09.12
✎
12:39
|
(14) база состоит из одних текстовых полей, да ещё не бланкированных [01] - не верю
|
|||
16
Ivan Bezdomnyi
14.09.12
✎
12:43
|
(15) не понял
|
|||
17
Ivan Bezdomnyi
17.09.12
✎
06:44
|
ОлеДБ = Новый COMОбъект("ADODB.Connection");
Соединение = "Provider=Microsoft.SQLSERVER.CE.OLEDB.3.5;Data Source="+СокрЛП("D:\base.sdf")+";SSCE:Database Password=asdf"; ОлеДБ.Open(Соединение); Command = Новый ComОбъект("ADODB.Command"); Command.ActiveConnection = ОлеДБ; Command.CommandText = "select * from wrk_Contragents"; RecordSet = Новый ComОбъект("ADODB.Recordset"); Recordset.CursorLocation = 3; Recordset.Open("select * from wrk_Contragents",ОлеДБ,2,3); RecordSet.AddNew(); RecordSet.Fields("INN").value=111; //RecordSet.Fields("KPP").value="2"; //RecordSet.Fields("OrgName").value="RECORDSET"; //RecordSet.Fields("CCode").value="643"; //RecordSet.Fields("RCode").value="01"; RecordSet.Update(); RecordSet.Close(); Возникает ошибка на строке Recordset.Open("select * from wrk_Contragents",ОлеДБ,2,3); Произошла исключительная ситуация (Microsoft Cursor Engine): Произошли ошибки во время выполнения многошаговой операции. Проверьте значения всех состояний. Что ему надо?( |
|||
18
Ivan Bezdomnyi
17.09.12
✎
08:32
|
хелп
|
|||
19
Ёпрст
17.09.12
✎
10:05
|
(18) а зачем вообще делать select * from wrk_Contragents ?
заняться нечем ? |
|||
20
Ivan Bezdomnyi
17.09.12
✎
10:37
|
(19) а как нужно делать? чтоб указать в какую таблицу нужно добавить?
|
|||
21
Ivan Bezdomnyi
17.09.12
✎
11:22
|
Попробовал сделать вот так:
ОлеДБ = Новый COMОбъект("ADODB.Connection"); Соединение = "Provider=Microsoft.SQLSERVER.CE.OLEDB.3.5;Data Source="+СокрЛП("D:\base.sdf")+";SSCE:Database Password=asdf"; ОлеДБ.Open(Соединение); Command = Новый COMОбъект("ADODB.Command"); Command.ActiveConnection = ОлеДБ; ТекстЗапроса = " |select * |from wrk_Contragents |"; Command.CommandText = ТекстЗапроса; RecordSet = Новый COMОбъект("ADODB.RecordSet"); RecordSet.CursorLocation=3; Recordset.CursorType=2; Recordset.LockType=3; RecordSet = Command.Execute(); RecordSet.AddNew(); RecordSet.Fields("INN").value=111; RecordSet.Update(); RecordSet.Close(); На строке AddNew() выдает "Произошла исключительная ситуация (ADODB.Recordset): Текущий объект Recordset не поддерживает обновление. Это связано с ограничением поставщика или с выбранным типом блокировки." хотя вроде же пишу Recordset.LockType=3; непоняааатно |
|||
22
shuhard
17.09.12
✎
11:28
|
(21) а на куя для открытия рекордсета команда ?
|
|||
23
Ivan Bezdomnyi
17.09.12
✎
11:38
|
(22) да я же говорю уже всё перепробовал.
и как тут пытался v8: ADODB RecordSet AddNew() не доходит как сделать надо |
|||
24
shuhard
17.09.12
✎
11:39
|
(23) ну так найди сайт СУБД и выясни причину [Произошли ошибки во время выполнения многошаговой операции. Проверьте значения всех состояний. ]
проблема к 1С отношения не имеет |
|||
25
chel3
24.09.12
✎
05:49
|
Товарищи! кто загонял напрямую данные из 1С в декларант алко, подскажите пожалуйста как обошли пароль на SDF файл в последних обновлениях, и второе, когда я переношу контрагентов в декларант алко, почему то в журнале справочника, поле "наименование" остается пустое, хотя когда заходишь в сам элемент справочника наименование стоит, в чем может быть проблема?
|
|||
26
Ёпрст
24.09.12
✎
09:44
|
(25)
1.пароль не проблема 2.нужно пихать все поля в инсёрте, т.е заместо null пихать пустые строки. |
|||
27
H A D G E H O G s
24.09.12
✎
09:44
|
На что не пойдут 1С-неги, чтобы декларацию сдать.
|
|||
28
kihanat
09.10.12
✎
21:31
|
пароль на base.sdf
7338a7e6-fd3b-49d1-8d90-ddbbc1b39fa1 |
|||
29
acsent
09.10.12
✎
21:40
|
делай insert или update
|
|||
30
Bugmenot
07.11.12
✎
12:49
|
(11) - он может модифицировать структуру таблиц?
|
|||
31
Bugmenot
07.11.12
✎
12:51
|
(11) - файлы уже удалены
|
|||
32
Bugmenot
07.11.12
✎
12:57
|
http://sqlcetoolbox.codeplex.com/documentation
Я так и не понял, есть ли тут версия для Visual Studio 2008 и SQL Server CE 3.5 |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |