Обновлено: 02 мая 2007 г. | Главная страница Мои программы Прочее |
Часто, при разработке приложений возникает необходимость предоставить возможность выбора базы данных. При этом будет красиво, если в списке не будет системных и отключенных (остановленных) баз. Со вторым все очень просто: в статусе проверяем нужный бит на ниличие, и если он установлен, то база остановлена (первое условие в примере). А вот определения именно системности базы я не нашел. Поэтому предлагаются следущие решения (для второго условия):
Я знаю, что в Books-OnLine рекомендуют пользоваться INFORMATION_SCHEMA, а не прямым обращением в системные таблицы,
но в данном случае INFORMATION_SCHEMA.SCHEMATA работает скажем так "странно".
Поэтому решение было выбрано такое:
SELECT * FROM sysdatabases WHERE status&100000=0 AND sid<>1 ORDER BY name |
Цикл один из методов наглядной проверки скорости выполнения SQL-запроса. Лучше, конечно, использовать Profiler или анализировать план выполнения, но часто быстрее и проще "наглядная проверка". Итак, имеем два запроса. Надо определить какой из них предпочтительнее по скорости выполнения. Пишем два цикла в каждом, по одному запросу. Прогоняем каждый два-три раза и определяем среднюю скорость выполнения. Где меньше время, тот и быстрее, хотя не факт, что лучше. Количество выполнений запросов в цикле следует подбирать таким, чтобы время выполнения было около 20 секунд.
DECLARE @i INT
SET @i = 1
WHILE (@i < 500)
BEGIN
|
Часто необходимо обеспечить возможность выбора строк из Таблицы MSSQL при многопользовательской работе. Т.е. первый редактирует в транзакции, а второй в это время читает предыдущий вариант.
ADOQuery1.Connection.IsolationLevel := ilReadUncommitted; ADOQuery1.Connection.Execute( |
ADOQuery1.Close; ADOQuery1.SQL.Text:= |
Часто в SQL-запросах необходимо сделать выборку по дате, и тут многие сталкивались, наверное,
с проблемой что по разному настроенные MS SQL сервера "ожидают" дату в немного разном формате.
Я в своих программах использую выше приведенный пример, и с проблемами пока не сталкивался.
dtpFrom и dtpTo это компоненты типа TDateTimePicker с датой начала периода
и конца периода соответсвенно.
Программирование на Delphi | Мои программы | В начало |
Вы
посетитель этой странички с 07 октября 2006 года |
Copyright © 2000-2007 svv О сайте svv@narod.ru |