|
|
|
Run-time error 3027. База данных доступна только для чтения :(
|
|||
|---|---|---|---|
|
#18+
Никакак не могу сделать UPDATE базы данных Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. Возникает ошибка в строчке с .Edit Run-time error '3027' Обновление невозможно. База данных или объект доступны только для чтения. Как побороть ??? Пробовал подключить другую базу (не Oracle, а просто DBF) - результат аналогичный :( Что я делаю не так ??? Нашел тут ответ, что все дело - в отсутствии индекса. Ко мне - не подходит - таблица person индексирована по полю code ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2004, 11:08:11 |
|
||
|
Run-time error 3027. База данных доступна только для чтения :(
|
|||
|---|---|---|---|
|
#18+
Проблему с UPDATE я всетаки решил - иначе бы с работы уволили - (дело было срочное и важное). Сделал так - вместо строчек с .Edit написал так Код: plaintext 1. И хотя в таком варианте каждое найденное значение (а их несколько тысяч) инициирует новый sql-запрос к БД, отработало на удивление быстро :) Правда, как мне кажется, первоначальный вариант (с .Edit) смотрится как то логичнее и отрабатывать, наверное, должен еще быстрее... Хотя, с другой стороны, как этот Recordset обновленные данные назад в базу возвращает? Да и не работает с этим .Edit ни в какую... Если кто ТОЧНО знает КАК ответьте - хоть и проблема решена по другому - интересно все таки... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2004, 09:27:13 |
|
||
|
Run-time error 3027. База данных доступна только для чтения :(
|
|||
|---|---|---|---|
|
#18+
msdn Set recordset = object.OpenRecordset (source, type, options, lockedits) по умолчанию type=dbOpenForwardOnly принудительно выставьте все параметры про скорость само собой - при edit вы тащите на клиента весь курсор, меняете его, а потом отдаете обратно на сервер, в случае же "прямого" обращения - все действия происходят на сервере, напрямую на движке сервера баз данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2004, 11:30:27 |
|
||
|
Run-time error 3027. База данных доступна только для чтения :(
|
|||
|---|---|---|---|
|
#18+
Методом научного тыка перебрал все возможные параметры и получил вполне рабочий код :) Привожу полностью - (мож кому сгодится). Не смущайтесь то, что Оракл - в большинстве случаев отработает и на любой другой базе (только строчку ODBC - подключения подправить). Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2004, 12:07:37 |
|
||
|
Run-time error 3027. База данных доступна только для чтения :(
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2004, 12:29:29 |
|
||
|
Run-time error 3027. База данных доступна только для чтения :(
|
|||
|---|---|---|---|
|
#18+
big-dukeа зачем нужен iNumRec имхо вроде было RecordCount у RecordSet. Не то RecordCount Property Returns the number of records accessed in a Recordset object, or the total number of records in a table-type Recordset or TableDef object. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.11.2004, 16:31:17 |
|
||
|
|

start [/forum/topic.php?fid=60&msg=32788788&tid=2168585]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
57ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
49ms |
get tp. blocked users: |
2ms |
| others: | 232ms |
| total: | 382ms |

| 0 / 0 |
