Чтение онлайн

на главную - закладки

Жанры

Советы по Delphi. Версия 1.4.3 от 1.1.2001

Озеров Валентин

Шрифт:

• 100 блокировок на запись на одной таблице dBASE (16 and 32 Bit)

• 100 записей, учавствующих в транзакции на таблицу (32 Bit)

• 1 миллиард записей в таблице

• 2 миллиарда байт в файле .DBF (таблица)

• 4000 Размер записи в байтах (dBASE 4)

• 32767 Размер записи в байтах (dBASE for Windows)

• 255 Количество полей в таблице (dBASE 4)

• 1024 Количество полей в таблице (dBASE for Windows)

• 47 Количество тэгов индексов на один .MDX-файл.

• 254 Размер символьных полей

• 10 открытых

основных индексов (.MDX) на таблицу

• 220 Длина ключевого выражения в символах 

В процессе работы программы изменилась структура БД (alter table etc.). Программа продолжала успешно открывать таблицы, но запросы посылались в соответствии со старой схемой данных

Nomadic отвечает:

В установках BDE (Configuration utility или BDEAdmin) можно выставить SCHEMA CACHE = FALSE (не кэшировать схему данных).

Но в некоторых случаях ошибки такого рода все-таки происходят. В таком случае необходимо воспользоваться методом TDatabase.FlushSchemaCache после каждого изменения метаданных. 

Как в Delphi сбросить кэш БД на диск?

Nomadic отвечает:

uses BDE {в Delphi 1.x не помню, но вроде bdeprocs};

dbiSaveChanges

На Delphi 1.x (16bit) дополнительно вызовите эту процедуру -

procedure DropCache; assembler;

asm

 mov ah,$0D

 int $21

end;
 

Как настроить MS SQL Server 6.5 на корректную работу с числами и BDE при выполнении UPDATE?

Nomadic отвечает:

Дело в том, что SQL Links на NT-ишном клиенте шлет на сервер дату как 1-янв-97, что сервер не пpиемлет. Совершенно случайно я нашел системный скрипт, который подключает русский и болгарский языки.

1. выполни sp_configure и убедись, что у тебя default sortorder id==106 (rus case insens) или 105 (rus case sens). Если нет – переставь сервер.

2. найди в каталоге c:\mssql\install скрипт instlang.sql и запусти его.

3. либо руками каждому проставь каждому логину, работающему с NT, язык русский, либо поставь его как default language серверу. В этом случае 95-м клиентам придется руками прописать в логине язык us_english, иначе они перестанут работать.

Для установки russian как default надо выполнить скрипт:

exec sp_configure 'default language', 2

go

reconfigure

go

Как научить VCL делать Refresh для запросов правильно?

Особенно

интересует Refresh для связки Master-Detail.

Nomadic отвечает:

Старо как мир, и нет ничего военного:

procedure RefreshQuery(Query: TQuery; F: boolean);

var B: TBookMark;

begin

 with Query do if Query.Active then begin

B := GetBookMark;

try

Close;

Unprepare; {Если не поставить этого, то если используется select SP, то иногда последующая операция вешает сервер. Кто скажет почему?!}

Active:=True;

if F then begin

try

GotoBookMark(B)

except on EDatabaseError do First;

end

end else First;

finally

FreeBookmark(B);

end;

 end;

end;

Уфф! Кажется, лучше уже не сделать. :)

dbtables можно опционально пропатчить (см. в конце), чтобы иметь такой вот рyлезный Detail query.

Update for dbtables.pas

New interface function DoRefreshQuery can Refresh TQuery component in master-detail scheme and alone.

TQuery.RefreshParams should be updated

function GetFieldNamesStr(DataSet: TDataSet): String;

var I: Integer;

begin

 Result := '';

 with DataSet do for I := 0 to FieldCount - 1 do begin

Result := Result + Fields[ I ].FieldName + ';';

 end;

end;

procedure DoRefreshQuery(Query: TQuery; KeyFields: String; BookMarkSearch: Boolean);

Поделиться:
Популярные книги

Свадьба по приказу, или Моя непокорная княжна

Чернованова Валерия Михайловна
Любовные романы:
любовно-фантастические романы
5.57
рейтинг книги
Свадьба по приказу, или Моя непокорная княжна

Сборник коротких эротических рассказов

Коллектив авторов
Любовные романы:
эро литература
love action
7.25
рейтинг книги
Сборник коротких эротических рассказов

Отец моего жениха

Салах Алайна
Любовные романы:
современные любовные романы
7.79
рейтинг книги
Отец моего жениха

Вадбольский

Никитин Юрий Александрович
1. Вадбольский
Фантастика:
попаданцы
5.00
рейтинг книги
Вадбольский

Бастард Императора. Том 7

Орлов Андрей Юрьевич
7. Бастард Императора
Фантастика:
городское фэнтези
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Бастард Императора. Том 7

Повелитель механического легиона. Том VIII

Лисицин Евгений
8. Повелитель механического легиона
Фантастика:
технофэнтези
аниме
фэнтези
5.00
рейтинг книги
Повелитель механического легиона. Том VIII

В зоне особого внимания

Иванов Дмитрий
12. Девяностые
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
В зоне особого внимания

Таня Гроттер и магический контрабас

Емец Дмитрий Александрович
1. Таня Гроттер
Фантастика:
фэнтези
8.52
рейтинг книги
Таня Гроттер и магический контрабас

Бастард Императора. Том 2

Орлов Андрей Юрьевич
2. Бастард Императора
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Бастард Императора. Том 2

Кодекс Крови. Книга ХI

Борзых М.
11. РОС: Кодекс Крови
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Кодекс Крови. Книга ХI

Третий

INDIGO
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
Третий

Возвышение Меркурия. Книга 16

Кронос Александр
16. Меркурий
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Возвышение Меркурия. Книга 16

Идеальный мир для Лекаря 9

Сапфир Олег
9. Лекарь
Фантастика:
боевая фантастика
юмористическое фэнтези
6.00
рейтинг книги
Идеальный мир для Лекаря 9

Потусторонний. Книга 1

Погуляй Юрий Александрович
1. Господин Артемьев
Фантастика:
фэнтези
попаданцы
5.00
рейтинг книги
Потусторонний. Книга 1