Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Получение свободного пространства в БД
|
|||
|---|---|---|---|
|
#18+
Может ли приложение, писаное на Delphi и использующее для доступа ActiveX, достаточно простым и понятным образом получить объем свободного пространства в БД. Вроде судя по документации все должно быть просто и прозрачно Пробовал играться с методами GetFreeSpace и GetDatabaseFreeSpace класса SYS.Database, Пробовал играться классом (название запамятовал, заканчивается на .FreeSpace), но ничего, кроме исключений, пока не получил. Виктор ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.03.2009, 21:43 |
|
||
|
Получение свободного пространства в БД
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2009, 09:05 |
|
||
|
Получение свободного пространства в БД
|
|||
|---|---|---|---|
|
#18+
Примерно так я и пытался делать. Но на вызове GetDatabaseFreeSpace вылетает с ошибкой. Правда в голову сейчас одна мысль пришла. А можно ли на одном потоке иметь более одного экземпляра factory, соединенных с разными БД? Виктор. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2009, 21:28 |
|
||
|
Получение свободного пространства в БД
|
|||
|---|---|---|---|
|
#18+
Нашел причину, по которой получал исключение. Оказывается, созданные мной БД требуют передачи в функцию GetDatabaseFreeSpace не имени БД, а подкаталога, по которому БД расположена. Пробовал зайти с другой стороны, открыть экземпляр класса через %OpenId, но там тоже потребовалось задавать подкаталог. Как можно получить этот подкаталог по имени БД? Виктор ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.03.2009, 11:37 |
|
||
|
Получение свободного пространства в БД
|
|||
|---|---|---|---|
|
#18+
Hisbreht VictorКак можно получить этот подкаталог по имени БД? Cache 5.0.X: Код: plaintext 1. 2. Cache 2008: Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.03.2009, 13:45 |
|
||
|
Получение свободного пространства в БД
|
|||
|---|---|---|---|
|
#18+
Вернее приведенный выше код - получение дефолтной директории по namespace-у. Для DATABASE, похоже, можно определить так: Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.03.2009, 14:47 |
|
||
|
Получение свободного пространства в БД
|
|||
|---|---|---|---|
|
#18+
Спасибо, заработало. Виктор ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.03.2009, 19:28 |
|
||
|
Получение свободного пространства в БД
|
|||
|---|---|---|---|
|
#18+
Заметил следующие проблемы. Из базы удаляются данные а метод GetDatabaseFreeSpace возвращает все одно и то же значени. С чем это может быть связано? С фрагментацией? Или реально пространство не освобождается? Есть ли способ получить правильное значение свободного пространства? При попытке вызвать метод GetFreeSpace через Fctive""вообще возникает ошибка "method does not exist", хотя в документации он описн. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2011, 10:06 |
|
||
|
Получение свободного пространства в БД
|
|||
|---|---|---|---|
|
#18+
Это нормально Вы удаляете узлы глобалов - блоки разрежаются, но количество блоков остается тем же. место увеличится после полного удаления глобалов (или уменьшение его во много раз, когда каше начнет соединять блоки), либо после программы ^GCOMPACT из области %SYS ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2011, 10:27 |
|
||
|
Получение свободного пространства в БД
|
|||
|---|---|---|---|
|
#18+
Hisbreht Victor, при полном удалении глобала оба метода выдают новое значение свободного места. Правда, вызывал я их из терминала, но не думаю, что это принципиально. Насчёт "разреженного" удаления полностью согласен с Блоком А.Н. Кстати, Портал, судя по набору полей в таблице "Свободное место", использует не эти методы, а запрос SYS.Database:FreeSpace. P.S. Cache for Windows (x86-64) 2010.2.2 (Build 600) Wed Dec 8 2010 16:37:18 EST ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2011, 11:18 |
|
||
|
|

start [/forum/topic.php?fid=39&msg=35866959&tid=1557829]: |
0ms |
get settings: |
8ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
140ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
58ms |
get tp. blocked users: |
1ms |
| others: | 219ms |
| total: | 462ms |

| 0 / 0 |
