Отправляет email-рассылки с помощью сервиса Sendsay

MS SQL Server

  Все выпуски  

MS SQL Server - дело тонкое...


Информационный Канал Subscribe.Ru


#200<<  #201

СОДЕРЖАНИЕ

1.СОВЕТЫ
1.1.Повышение доступности SQL Server 2000: Failover кластеры (Продолжение)
1.2.MSSQL Server 2000 Reporting Services: Фаза разработки: Обзор. Часть II (Продолжение)
2.ССЫЛКИ НА СТАТЬИ
2.1.Статьи на русском языке
2.2.Англоязычные статьи
3.ФОРУМ SQL.RU
3.1.Самые популярные темы недели
3.2.Вопросы остались без ответа
4.ПОЛЕЗНОСТИ
4.1.Visual Basic .NET и SQL Server 2000. Эффективный уровень данных
4.2.Базы данных

СОВЕТЫ

Повышение доступности SQL Server 2000: Failover кластеры. (Продолжение)

По материалам статьи Microsoft: SQL Server 2000 High Availability Series: Implementing Failover Clustering

Содержание

Добавление дисков в кластер для нужд SQL Server

Что бы обеспечить отказоустойчивость, нужно вручную включить каждый планируемый для использования SQL Server диск, в список зависимых от SQL Server дисков. Если какой - либо диск не будет включен в этот список, SQL Server не сможет использовать его после отказа. Добавьте в него зеркальные тома, используемые для файлов журнала транзакций, резервных копий и дополнительных файлов баз данных. Эта процедура требуется для того, чтобы все дисковые ресурсы были включены в одну кластерную группу.

[В начало]

Добавление дополнительных, зависимых дисков в кластер

1. Нажмите кнопку Start, и в пункте Programs выберите Cluster Administrator.
2. В Cluster Administrator, выберите кластерную группу, содержащую виртуальный SQL Server.
3. Нажмите правую кнопку мыши на SQL Server, а затем Take Offline.
4. Для внесения изменений в список зависимых от SQL Server дисков, SQL Server должен быть автономен.
5. Нажмите правую кнопку мыши на SQL Server, а затем выберите Properties.
6. На закладке Dependencies в окне SQL Server Properties, посмотрите на заданные по умолчанию зависимые ресурсы. Должны быть видны ресурсы Network Name и не менее одного дискового ресурса.
7. Нажмите Modify.
8. В окне Available Resources, дважды щелкните мышью по каждому из дополнительных дисковых ресурсов, от которых зависит работа SQL Server, а затем нажмите кнопку OK.
9. Опять нажмите кнопку OK, чтобы закрыть окно SQL Server Properties.
10. Нажмите правую кнопку мыши на группе, содержащей ресурсы SQL Server, а затем выберите Bring Online.

[В начало]

Применение последнего SQL Server Service Pack

Перед запуском SQL Server в промышленную эксплуатацию, необходимо установить последний SQL Server service pack.

[В начало]

Установка последнего SQL Server service pack

1. Зарегистрируйтесь на одному из узлов кластера под учётной записью пользователя домена, которая входит в локальную группы Administrators этого узла.
2. Вставить в CD-ROM диск, содержащий сервисных пакет.
Если установка сервисного пакета не начнется автоматически, перейдите в каталог \X86\Setup, а затем дважды щёлкните по программе setupsql.exe.
3. В окне Welcome, нажмите Next.
4. В окне SQL Server Name, введите имя виртуального SQL Server, а затем нажмите Next.
5. В окне Authentication Mode, нажмите Next, чтобы подключиться к SQL Server с использованием режима аутентификации Windows.
6. В окне Domain Administrator, введите имя администратора домена, пароль и название домена, а затем нажмите Next.
Программа установки должна использовать учетную запись администратора домена, чтобы установить сервисный пакет на всех узлах виртуального сервера.
7. После того, как сервисный пакет будет установлен, нажмите OK.
8. Нажмите кнопку Yes, а затем Finish, чтобы перезапустить узел.
9. Вручную перезапустите каждый дополнительный узел, на котором был установлен сервисный пакет.
10. Сделайте резервные копии баз msdb и master, т.к. они были изменены при инсталляции сервисного пакета.
Обратите внимание на то, что эта процедура описана для применения SQL Server 2000 Service Pack 2. Прочитайте файл ReadMe, поставляемый с более поздними сервисными пакетами, что бы узнать нюансы установки этого пакета в кластерной конфигурации.

[В начало]

Дополнительные настройки кластера

После того, как Вы установили виртуальный сервер, обратитесь к дополнительным вариантам конфигурации и применяете те из параметров настройки, которые необходимы в Вашем случае. Эти варианты конфигурации включают следующие параметры:

  • Распределение памяти между виртуальными серверами.
  • Установка новых свойств базы данных.
  • Установка TCP/IP порта для SQL Server.
  • Установка расширенных настроек отказоустойчивости.
  • Установка свойств SQL Server, работающего в кластере

Используйте представленные далее рекомендации при выполнении этих дополнительных настроек.

[В начало]

Распределение памяти

Если у Вас используются несколько экземпляров SQL Server на одном или нескольких узлах кластера, Вы должны определить общую сумму оперативной памяти, требуемую для каждого экземпляра и задать соответствующее распределение памяти для каждого экземпляра SQL Server. Производительность SQL Server непосредственно зависит от объёма используемой им оперативной памяти, выделяемой ему операционной системой. SQL Server имеет два режима управления памятью: динамический и фиксированный. Динамическое распределение памяти позволяет SQL серверу захватывать и высвобождать память по мере необходимости, при этом сервер способен забирать максимально-возможный объём оперативной памяти, которую операционная система может предоставить для SQL Server. Это механизм позволяет резервировать оставшуюся часть памяти для других целей, например, для операционной системы и других экземпляров SQL Server. Фиксация объёма выделяемой экземпляру памяти позволяет ограничить используемую SQL Server память и обеспечить такой режим, что размер этой памяти не будет расти или уменьшаться.
Выделите каждому серверу необходимый объём оперативной памяти, а затем распределите эту память для каждого экземпляра SQL Server таким образом, чтобы обеспечить необходимый резерв для поддержки отказавшего экземпляра SQL Server другого узла кластера. Если сервер использует малую часть доступной оперативной памятью, установите для него динамическое выделение память, и укажите максимальный её объём, который операционная система буде ему выделять. Сделав так, Вы оставите достаточно памяти для поддержания отказоустойчивости, механизм которой будет срабатывать быстро и успешно. Если экземпляр будет использовать всю доступную оперативную память, отказоустойчивость будет выполняться медленно и может даже потерпеть неудачу, если память для поддержки отказавшего узла не будет высвобождена достаточно быстро.
Чтобы определять необходимый для каждого сервера объем памяти, протестируйте ваши приложения, установив максимально-возможный объем памяти для SQL Server, а затем оцените её утилизацию. Необходимо выделить достаточно памяти каждому серверу, чтобы дать возможность всем экземплярам работать на одном сервере и обеспечивать при этом минимальный уровень сервиса для каждого экземпляра. Использование динамического распределения памяти позволяет экземпляру SQL Server на любом узле использовать максимум памяти этого узла. Если Вы используете фиксированный объём выделяемой памяти, не распределённая сверх фиксированного размера память будет использоваться только во время отказа.
В системе, работающей под непрерывной и высокой нагрузкой, установите достаточный объём памяти, который будет гарантировать, что каждый экземпляр SQL Server сможет использовать хотя бы минимально необходимый для его эффективной работы размер оперативной памяти. Используйте фиксированное распределение памяти для гарантии того, что бы экземпляр SQL Server не захватит ту память, которая зарезервирована для поддержки работы отказавших экземпляров. Чтобы определить соответствующие значения выделяемой памяти, инициируйте отказ узла, и проверьте показатели работы каждого виртуального сервера. Если операционная система нестабильна после отказа узла кластера, уменьшите объём память, выделяемый каждому экземпляру, чтобы увеличить объём памяти, доступный операционной системе.
Чтобы определить установленный размер оперативной памяти для каждого экземпляра, используйте SQL Server Enterprise Manager или системную хранимую процедуру sp_configure. При определении объема памяти, распределяемого для нужд SQL Server, не забудьте оставить достаточно памяти для операционной системы. Для больших баз данных, для нужд операционной системы оставьте не менее 2Гбайт.
Если объем памяти, установленный на каждом узле превышает 4Гб, добавьте ключ /PAE в файле Boot.ini, что разрешит использование операционной системой расширенного адресного пространства Address Windowing Extensions (AWE), а также поддержку AWE нужно включить и в параметрах SQL Server. Для получения более подробной информации о поддержке AWE, см. статьи Microsoft Knowledge Base 268363 "Intel Physical Addressing Extensions (PAE) in Windows 2000" и 274750 "Configure Memory for More Than 2 GB in SQL Server".

[В начало]

Установка свойств новой базы данных

Вы можете указать расположение для новых баз данных на дисках кластера, которые Вы ранее определили для данных и журналов.

[В начало]

Установка свойств для новых баз данных

1. На одном из узлов, нажмите кнопку Start, выберите пункт Programs, затем перейдите в Microsoft SQL Server, а потом запустите оснастку Enterprise Manager.
2. Раскройте корневой узел Microsoft SQL Servers, а затем узел SQL Server Group.
3. Нажмите правую кнопку мыши на экземпляре SQL Server, и выберите пункт Properties.
4. На закладке Database Settings, в текстовом поле Default Data Directory, укажите диск и каталог, который был выбран для размещения файлов баз данных кластера. Что бы упростить эту процедуру, можно воспользоваться кнопкой с многоточием, которая вызывает мастера поиска каталогов на доступных дисках.
5. В текстовом поле Default Log Directory, аналогично предыдущему пункту, укажите каталог для размещения журналов транзакций и нажмите кнопку OK.
6. Закройте SQL Server Enterprise Manager.

[В начало]

Установка TCP/IP порта для SQL Server

По умолчанию, экземпляр SQL Server прослушивает порт 1433. Если Вы устанавливаете в кластере несколько экземпляров, Вы должны использовать разные порты для каждого из них. Хотя SQL Server может устанавливать для себя порт динамически при запуске, Вы можете захотеть назначить каждому именованному экземпляру свой порт для прослушивания. Проконсультируйтесь в выборе этих портов со своим администратором сети. Задайте статический порт, если нужно открыть его на межсетевом экране и этот порт не должен, поэтому, изменяться.

[В начало]

Закрепление TCP/IP порта за экземпляром

1. Нажмите кнопку Start, выберите Programs, перейдите в Microsoft SQL Server, а затем запустите оснастку Server Network Utility.
2. В оснастке SQL Server Network Utility, выделите экземпляр SQL Server, для которого Вы хотите указать порт.
3. В списке Enabled Protocols, выберите TCP/IP, а затем пункт Properties.
4. В текстовом поле Default Port, введите номер выбранного порта, а затем нажмите OK.
5. Нажмите кнопку OK, чтобы закрыть окно оснастки SQL Server Network Utility.
6. Повторите эти шаги для каждого узла, участвующего в виртуальном SQL Server.

[В начало]

Установка расширенных опций кластера

Расширенные варианты отказоустойчивости определяют поведение отказоустойчивого кластера с SQL Server в кластере MSCS.

[В начало]

Настройка реакции на отказ

1. Нажмите кнопку Start, выберите Programs, а затем запустите оснастку Cluster Administrator.
2. В Cluster Administrator, выберите кластерную группа, содержащую SQL Server.
3. Нажмите правую кнопку мыши на SQL Server, и выберите Properties.
4. На закладке Advanced, для настройки расширенных возможностей отказоустойчивого кластера, используйте представленную ниже информацию. Заданные по умолчанию значения не стоит изменять без тщательного изучения возможности их применения и тестирования их работы:

  • Do Not Restart/Restart - Выбор Restart (значение по умолчанию) говорит о том, что при обнаружении отказа нужно перегрузить сервер.
  • Affect the Group - Выберите этот переключатель, если отказ SQL Server должен восприниматься как отказ всех ресурсов кластерной группы.
  • Threshold - Введите число попыток, которые MSCS должен предпринять, чтобы перезапустить SQL Server перед переключением его на другой узел.
  • Period - Введите число секунд между попытками повтора перезапуска. Это значение игнорируется, если период равен 0.
  • Looks Alive Poll Interval - Выберите Use Value from Resource Type, чтобы использовать для SQL Server значение по умолчанию - 5 000 миллисекунд (5 секунд).
  • Is Alive Poll Interval - Выберите Use Value from Resource Type, чтобы использовать для SQL Server значение по умолчанию - 60 000 миллисекунд (60 секунд).
  • Pending Timeout - определяет время задержки, которое необходимо выждать до перевода SQL Server в активное или отключенное состояние, прежде чем MSCS переведёт ресурсы в активное или в состояние отказа. Значение по умолчанию - 180 секунд.

5. Когда все изменения будут закончены, нажмите кнопку OK, чтобы закрыть окно SQL Server Properties в оснастке Cluster Administrator.

[В начало]

Изменение свойств сервисов в кластере

В кластере нужно использовать специализированные инструменты управления, с помощью которых настраиваются сервисы SQL Server, делается это следующим образом:

  • Используйте оснастку Cluster Administrator, чтобы запускать и останавливать сервисы.
  • Для указания запускающей экземпляр SQL Server учетной записи и её пароля, используйте Enterprise Manager и его диалоговое окно Properties.

Использование других инструментов для изменения свойств SQL Server может вызвать проблемы при запуске SQL Server. Кроме того, в кластере не стоит устанавливать для SQL Server Agent автоматический перезапуск. Если SQL Server Agent будет перезапускаться автоматически, это может создать конфликт между сервисами кластера при запуске сервера на другом узле после отказа.

ПРОДОЛЖЕНИЕ СЛЕДУЕТ

[В начало]

MSSQL Server 2000 Reporting Services: Фаза разработки: Обзор. Часть II (продолжение)

По материалам статьи William Pearson: MSSQL Server 2000 Reporting Services: The Authoring Phase: Overview Part II
Перевод Виталия Степаненко

Содержание

Изменение набора данных

Мы хотим изменить наш набор данных. Вряд ли мы захотим вернуться к запросу SQL, который был создан в первой части. Поэтому давайте рассмотрим более простой способ добавления таблицы - по крайней мере, более визуальный способ - и одновременно альтернативный способ проектирования наборов данных.

1. Выберите вкладку Data.
Открывается запрос SQL, который был создан в первой части. Мы добавим таблицу так же, как могли бы написать запрос - и будем это делать во многих последующих статьях, в которых рассмотрим специфические методы проектирования отчетов.

2. Нажмите кнопку Generic Query Designer в верхней части вкладки Data.
Кнопка Generic Query Designer показана на рис.12.


Рис.12. Кнопка Generic Query Designer

Открывается дизайнер запросов, как показано на рис.13.


Рис.13. Дизайнер запросов - начальный вид

Дизайнер запросов немного напоминает дизайнер в MS Access. Этот инструмент скорее всего станет популярным у тех, кто не готов писать SQL запросы. Мне нравится использовать дизайнер, даже когда я могу легко написать запрос, потому что он обеспечивает наглядный внешний вид источника данных и простую для понимания визуализацию связей между таблицами в источнике данных.
Мы добавим таблицу Sales Order Detail, которая содержит данные о сделках с товарами. Хотя мы могли бы сделать отчет очень сложным, в целях нашего обзора мы только рассмотрим создание промежуточных и общих итогов, опустив большое количество других возможностей, которые были бы необходимы для создания отчета уровня предприятия, таких, как ограничения по датам, фильтры, параметры, и др. Для нашего обзора мы добавим только те значения, которые нужны для создания итогов в отчете.

3. Нажмите кнопку Add Table (добавить таблицу) в верхней части вкладки Data.
Кнопка Add Table показана на рис.14.


Рис.14. Кнопка Add Table

Откроется диалоговое окно Add Table (добавление таблицы), в котором мы можем выбрать любую из таблиц, находящихся в источнике данных (который был создан в определении соединения в первой части).

4. Выберите таблицу Sales Order Detail.
Окно Add Table с выбранной таблицей будет выглядеть, как показано на рис.15.


Рис.15. Выбор таблицы Sales Order Detail

5. Нажмите кнопку Add, чтобы добавить выбранную таблицу в дизайнер запросов.

6. Нажмите кнопку Close, чтобы закрыть диалоговое окно и вернуться в дизайнер запросов.
В дизайнере запросов добавится таблица Sales Order Detail, автоматически дополненная отношением, как показано на рис.16.


Рис.16. Дизайнер запросов с добавленной таблицей

Возможно, нам не захочется, чтобы отношения автоматически создавались при добавлении таблиц, но в данном случае нет необходимости менять настройки.

7. Сдвиньтесь к последним столбцам таблицы Sales Order Detail и установите флажок слева от столбца LineTotal, как показано на рис.17.


Рис.17. Выбор столбца таблицы для включения его в набор данных

Это помечает столбец для его включения в набор данных. Мы видим, что столбец сразу появляется в области редактирования под окном диаграмм.

8. Нажмите кнопку Run над вкладкой Data, как показано на рис.18.


Рис.18. Кнопка Run

Выполняется измененный запрос, и мы видим новый результирующий набор данных в окне результатов под окном запросов. Мы также легко можем увидеть изменения в SQL запросе, т.к. я использовал букву "T" для наименования таблиц в начальном запросе (это соглашение, которое многие используют в SQL) и оставил стандартное название добавленного столбца.
Дизайнер запросов, с его множеством окон, добавляет возможности и преимущества, которые я едва видел в других приложениях отчетности предприятий, и эти приложения скоро будут заменены Reporting Services во многих организациях. Легкость, с которой мы можем реализовать наши идеи в этой небольшой "лаборатории", делает ее очень полезной - я иногда работаю с Reporting Services, чтобы проверить идеи, которые в стандартном отчете нельзя сделать в принципе. Разработчики этого отличного инструмента явно ориентировались на функциональные возможности MSSQL Server 2000 Query Analyzer; мы это еще увидим в более поздних статьях.

[В начало]

Фильтрация набора данных

Давайте сделаем фильтрацию набора данных, чтобы сделать его меньше для нашего отчета.

1. На вкладке Data нажмите на кнопку "..." справа от выпадающего меню наборов данных, как показано на рис.19.


Рис.19. Нажмите на кнопку "..."...

Откроется диалоговое окно Dataset (набор данных), как показано на рис.20.


Рис.20. Диалоговое окно Dataset

2. Выберите вкладку Filters (фильтрация).

3. Щелкните мышью на первой строке столбца Expressions.
Станет доступным выпадающее меню.

4. Выберите следующий из доступных вариантов в выпадающем меню Expressions:
=Fields!Category.Value

5. В столбце Operator той же записи выберите знак "=", если он не выбран

6. Выберите <Expression..." в столбце Value той же записи.
Откроется редактор выражений.

7. Введите следующее слово в список:
Clothing

Мы определили, что хотим отфильтровать набор данных, чтобы вернуть только категорию товаров Clothing (одежда). Заметьте, что это фильтрация набора данных и она влияет только на отчеты, в которых используется этот набор данных; это не фильтрация источника данных, как мы увидим далее.

Откроется диалоговое окно Edit Expression (редактирование выражения), как показано на рис.21.


Рис.21. Диалоговое окно Edit Expression

8. Нажмите кнопку OK, чтобы подтвердить введенное выражение и закрыть диалоговое окно.
Мы возвращаемся во вкладку фильтрации диалогового окна набора данных, которое теперь выглядит, как показано на рис.22.


Рис.22. Диалоговое окно набора данных - вкладка фильтрации

9. Нажмите кнопку OK еще раз.
Диалоговое окно набора данных закрывается, и мы видим вкладку Data дизайнера отчетов.

10. Нажмите на кнопку Run, чтобы увидеть результирующий набор данных.
В окне результатов появляется результирующий набор данных. Мы видим не только категорию Clothing, но и все другие из начального запроса. Как я упоминал ранее, это произошло из-за того, что фильтр находится между набором данных (который мы видим в окне результатов) и самим отчетом.

11. Выберите вкладку предварительного просмотра, чтобы увидеть наш отчет.
Начинается построение отчета, и мы видим, что категория Clothing - единственная, возвращенная в отчете, как это частично показано на рис.23.


Рис.23. Часть предварительного просмотра отчета

Наше понимание фильтрации подтвердилось.

12. Выберите вкладку внешнего вида Layout, чтобы вернуться в область проектирования.

Новый столбец, Line Total, появился в окне столбцов и доступен для выбора, как показано на рис.24.


Рис.24. Столбец Line Total теперь тоже доступен для выбора

Теперь мы можем добавить столбец Line Total в отчет. Но сначала сохраним нашу работу, чтобы освободить системные ресурсы и избежать ошибок.

13. Выберите File --> Save RS02_Authoring.rdl As ... в главном меню.

14. Перейдите к месту сохранения в диалоговом окне Save File As.

15. Назовите файл следующим образом:
RS03_Authoring.rdl

Теперь добавим новые поле данных и промежуточный итог.

ПРОДОЛЖЕНИЕ СЛЕДУЕТ

[В начало]

ССЫЛКИ НА СТАТЬИ

Статьи на русском языке

Производительность фондового рынка
Алтан Арслан
Фондовый рынок из-за своего переменчивого характера создал немало проблем для команды разработчиков программного обеспечения. Прежде всего, для того чтобы успевать за стремительным изменением цен, транзакции заказа акций должны быть предельно быстрыми. А система должна передавать изменения состояния заказа соответствующим клиентам так быстро, как только это возможно. Некоторые специфические, индивидуальные особенности системы ТЕВ Investment в дальнейшем создали проблемы для команды. Несмотря на то, что клиенты выполняют деловые операции с ценными бумагами при помощи SQL Server, некоторые из счетов клиентов находятся в базе данных Oracle ТЕВ Bank. Кроме того, клиенты одновременно могут использовать более одного канала рассылки, значит, система должна проверять каждый заказ в соответствии с деловым регламентом, изменяющимся в зависимости от того, находится счет клиента в MS SQL Server, Oracle или в обеих системах. Из-за такого усложнения сделки с ценными бумагами в автономном режиме становятся невозможными. Наконец, система должна работать стабильно, так как приложение на SQL Server, разработанное командой, координирует все направления компании ТЕВ Investment. В случае какого-либо сбоя в работе системы разработчики должны суметь быстро заменить базу данных на резервную без потери данных. Из-за этих требований были сделаны следующие предположения в разработке базы данных

[В начало]

Англоязычные статьи

Reducing Round Trips - Working with HTML Checkboxes
David Poole
Imagine a contacts database where we need to indicate whether or not a particular contact has a particular attribute of a dynamic list of attributes
An Introduction to InfoPath 2003
Dinesh Asanka
Recently I got Microsoft Office Professional Edition 2003 Installed. I found a new tool which was not in the previous versions of MS Office. Curiosity makes me want to get more information on this. Still I am learning and I would like to share my little knowledge with you all from which you and I can learn more about Info Path
SQL Server 2000 Replication 101: Replication Agents
Ron Talmage
Replication agents are SQL Agent jobs that often invoke external executables to do the work of the agent. Understanding how replication agents work is invaluable for understanding replication as a whole
Build an XML Data Extension for SQL Server Reporting Services
Enrico Sabbadin
Get to know the main features of SQL Server Reporting Services and learn how to extend it with an XML Data Provider Extension
Be Prepared - Part 2
Stefan Popovski
Error Handling blocks in stored procedures depending on nested level. Using Hierarchy of Stored Procedures we can generate hierarchical report of nested procedures
Mini Disaster - AC Failure
Andy Warren
I bet you've all had what I call a mini disaster, something that entirely disrupts production for a minute to a day or so. Sometimes it's user error, a bad patch, user error, hardware failure, or user error! These mini's are times that will often test your character. As much as I hate to admit the ones that occur, I think it's good to talk about them, maybe it will save someone else some pain someday
Control of Flow with TSQL
Don Schlichting
Transact SQL statements are usually executed in sequential order. When a long stored procedure or statement is created, line 1 will run, followed by line 2, followed by line 3. In many cases, we will want to interrupt this normal flow. Special processing may be needed depending on the results just received. We may want to branch or loop for example. Like other programming languages, Transact SQL has key words for controlling this order of execution. Collectively, these key words are called a Control of Flow language. This article examines these key words and how they are used to interrelate and connect separate statements into a traditional programming like structure
SQL Server Connection Pooling Myths
Shawn Kresal
Many of us are already familiar with connection pooling and understand to some degree its importance in web and SQL Server programming. We’ve all heard the adage that “connections are expensive” and “pooling is good”. This article will examine the topic in more detail, bringing to light some of the finer points of connection pooling
Working with SQL Server Date/Time Variables: Part Two - Displaying Dates and Times in Different Formats
Gregory A. Larsen
In my first article in this series, I discussed different aspects of entering date/time data into SQL Server DATETIME and SMALLDATE columns. This article will expand my discussion of date/time data by exploring how to use different SQL Server functions to display dates and times in different formats
Relationships Should NOT Be Natural!
Peter Petroski
Using naturally occurring data can have negative impact on database performance. We should restrict ourselves to using cold, hard, sequential numbers, and forget about those warm, comfortable relationships with data that are so familiar
Introduction to Triggers
Mayank Gupta
A trigger is a database object that is Bind to a table. In many aspects it is similar to a stored procedure. As a matter of fact, triggers are often referred to as a "special kind of stored procedure."
Configure Disks for High Availability
Allan Hirt, Cathan Cook, Kimberly L. Tripp, Frank McBath
Configure SQL Server properly to ensure high availability and optimal performance. This article is excerpted from Chapter 4 of Microsoft SQL Server 2000 High Availability ISBN: 0-7356-1920-4
117 SQL Articles
Check out these essential articles on SQL Server to help with your database programming needs, including speeding up queries, writing stored procedures, and improving performance. You'll find the best new information as well as tried-and-true techniques from Visual Studio Magazine's database experts. Check back for regular updates
Add Images to SQL Server
Jason Beres
Drag images from the file system over a WinForms PictureBox and trap their file information when you drop them. Drag-and-drop is one of the most productive computer features since the Apple Lisa. You're sure to keep your users happy if you implement drag-and-drop features in your applications. In this article, I'll show you several cool and useful tricks. First, I'll demonstrate how to drag images from the file system over a Windows Forms PictureBox control and trap the file information for the images when you drop them. From there, I'll discuss how to add the images from the file system to a SQL Server database. I've coined the end product the "Cool and Fancy Image Manager" (or just "Image Manager" for short), and I've included a figure that shows you what it looks like (see Figure 1). I won't go into the internals about drag-and-drop or image manipulation, but will teach you practical ways to apply some effective user interface (UI) techniques, as well as some other good stuff along the way
@@IDENTITY crisis
Manohar Kamath If you have worked with SQL Server, you are probably familiar with identity columns. These are equivalent to the "AutoNumber" columns in Access. The main purpose of these columns is to provide a primary key to the table, when a primary key can not be defined using other fields in the table. One of the common questions in the newsgroups is "How can I get the ID of the inserted record in SQL database?" This translates to "How can I get the value of identity column in the inserted record?" In this article, we will see how we can do this in several ways. Also, we will learn a little bit about the columns themselves
Which Databases are Being Backed Up - Another Look
Santveer Singh
I was reading the article Every DBA Should Know Which Databases are be Backed Up by Leo Peysakhovich. I agree with Leo, that most of the time when we need a backup of database, we noticed that we don't have backup of that database or we have a very old set of backups. To avoid this kind of situation, I have written a view based on system tables which allows me to know when the last time a database was backed up and which database have never been backed up
Mixed Emotions About .NET Managed Code in SQL Server
Russell Jones
It's a great feature—in theory—but writing stored procedures in any CLR-compatible language will cause a lot of headaches for managers and DBAs, and will have repercussions that no one seems to be acknowledging yet. Still, it's pretty darn handy

[В начало]

ФОРУМ SQL.RU

Самые популярные темы недели

Ваше мнение об упражнениях SELECT на http://sql.ipps.ru
Tool Вы знаете что твориться на ваших 10-30+ серверах ?
Новость No.2 - FTP SQL.RU
Помогите ускорить выполнение запроса
Помогите с Конфигурацией
в чем разница между SQL и MySQL
Как обратиться к базам на linked server?
Распределить базу на несколько серверов
Ограничения на кол-во столбцов
SQL Collation problems
Замена ADO для делфей
Как заставить MSSQL работать с оперативкой а не свопиться?
UPDATE + order by + set ROWCOUNT N
Помогите разобратя с запросом....
Помогите написать скрипт
Два TOP слепить через UNION :(
MSSQLServer мертв
Как отменить ОТКАТ? Или перзагрузить сервер? Клиент начал долгую транз.и умер...
OFF: Перевод терминов
Производительность при переменном where

[В начало]

Вопросы остались без ответа

создание XSD схемы для Recordset.Save
Немогу экпортировать dbf он у меня пароль просит ?
Когда может подвиснуть Drop?
Сравнение уровней изоляций Oracle и MS SQL
Системная хранимая процедура
MetaData Services
Поисковая система
Способ заставит Win XP выполнятся быстрее? На правах слухов.
Приложение не использует все ресурсы????
SQL Server 2005 Beta 2
Rational ClearQuest & MS SQL 2000
Про подобие обработки ошибок
kak ystanovit i podklychitsa k MSDE

[В начало]

ПОЛЕЗНОСТИ

Visual Basic .NET и SQL Server 2000. Эффективный уровень данных

Тони Бэйн, Дэнис Госнелл, Джанатан А. Уолш

Серия: Programmer to Programmer Издательство: Бином. Лаборатория знаний, 2004 г. Твердый переплет, 592 стр. ISBN 5-94774-120-2, 1-861007-05-1 Тираж: 3000 экз. Формат: 74x100/16

В книге рассмотрены вопросы создания и администрирования приложений Visual Basic.NET, использующих SQL Server 2000 в качестве источника данных. Предполагается знание общих принципов .NET Framework, а также опыт работы с основными операторами SQL Server и хранимыми процедурами. В книге подробно изучаются: техника извлечения и обработки данных с помощью классов и методов ADO.NET, приемы написания и эффективного использования хранимых процедур, техника привязки данных к элементам управления в форматах Windows и веб, поддержка целостности данных с помощью транзакций и блокировок, обработка данных в формате XML, использование служб компонентов, защита данных посредством ролей и полномочий. Перечисленные вопросы практически иллюстрируются на примере создания завершенного приложения базы данных. Приведенные в книге примеры доступны на уровне исходных кодов на сайте книги в Интернете. Для выполнения примеров книги вам необходима полная версия Visual Studio.NET (Professional или Enterprise) и SQL Server 2000 (версия Standard, Development или Enterprise).

[В начало]

Базы данных

О. Л. Голицына, Н. В. Максимов, И. И. Попов

Издательства: Форум, Инфра - М, 2004 г. Твердый переплет, 352 стр. ISBN 5-8199-0086-6, 5-16-001458-6 Тираж: 4000 экз. Формат: 60x90/16

В пособии подробно рассмотрены основные подходы и направления развития систем баз данных. Анализируются классические машинно-ориентированные формы представления информации и данных. Рассматриваются типовые модели физической и логической организации данных. Исследуется архитектура средств доступа к данным. Достаточно подробно представлены возможности SQL как базового языка для работы с реляционными базами данных. Большое внимание уделено проблемам моделирования и проектирования баз данных. Предназначено для учащихся техникумов, колледжей, а также студентов вузов.

[В начало]


Вопросы, предложения, коментарии, замечания, критику и т.п. присылайте Александру Гладченко на адрес: mssqlhelp@km.ru

sql.ru Описание рассылки

СЕМИНАРЫ
КОНФЕРЕНЦИИ

МИНИФОРМА
ПОДПИСКИ



ПУБЛИКАЦИИ
АРХИВ


http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу


В избранное