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

MS SQL Server

  Все выпуски  

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


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

#225<<  #226

СОДЕРЖАНИЕ

1.СОВЕТЫ
1.1.Поддержка XML в Microsoft SQL Server 2005 (начало)
1.1.1.Введение
2.ССЫЛКИ НА СТАТЬИ
2.1.Статьи на русском языке
2.2.Англоязычные статьи
3.ФОРУМ SQL.RU
3.1.Самые популярные темы недели
3.2.Вопросы остались без ответа
4.ПОЛЕЗНОСТИ
4.1.SQL для "чайников". 5-е издание

СОВЕТЫ

Поддержка XML в Microsoft SQL Server 2005 (начало)

По материалам статьи XML Support in Microsoft SQL Server 2005
Перевод Виталия Степаненко

Shankar Pal, Mark Fussell, and Irwin Dolobowsky
Microsoft Corporation

В этой статье рассматривается добавленная в SQL Server 2005 поддержка XML. В статье также показано, как эта поддержка интегрируется с программной поддержкой со стороны клиента в .NET Framework V2.0 и в родном коде, как OLEDB и SQLXML.

Введение

Расширенный язык разметки (eXtensible Markup Language, XML) широко распространен как платформо-независимый формат представления данных. Он полезен для обмена информацией между различными слабосвязанными системами, как в приложениях business-to-business (B2B), так и в других ситуациях. Обмен данными был главным двигателем развития технологий XML.

XML все больше используется в приложениях уровня предприятия для моделирования частично структурированных и неструктурированных данных. Одно из таких приложений - это управление документами. Документы, такие, как e-mail, являются изначально частично структурированными. Если документы хранятся внутри сервера базы данных в виде XML, то достаточно мощные приложения могут быть разработаны для получения документов, основанные на содержимом документов, объединении документов, и запросах на получение части содержимого документа, как, например, поиск главы документа с заголовком, содержащим слово "background". Такие сценарии становятся все более возможными с ростом количества приложений, которые генерируют и потребляют XML. Например, система Microsoft Office 2003 позволяет пользователям создавать документы Word, Excel, Visio и Infopath в виде XML.

Почему для данных XML используются реляционные базы данных?

- Хранение данных XML в реляционной базе данных имеет свои преимущества при управлении данными и обработке запросов. SQL Server обеспечивает большие возможности для выполнения запросов по реляционным данным и изменения этих данных, которые были расширены для выполнения запросов по данным XML и их изменения. Это позволяет увеличить отдачу от инвестиций, как, например, в областях оптимизации затрат ресурсов и хранилищ данных. Например, методы индексирования в реляционной базе данных хорошо известны, и они были расширены для индексирования данных XML так, чтобы запросы могли быть оптимизированы с учетом затрат ресурсов.

- Данные XML могут взаимодействовать с существующими реляционными данными и приложениями SQL так, чтобы XML мог быть добавлен в систему при возникновении новых потребностей без серьезного изменения существующих приложений. Сервер базы данных также обеспечивает административную функциональность для управления данными XML (например, резервное копирование, восстановление и репликация).

- Эти возможности породили потребность в поддержке встроенного XML в SQL Server 2005 для отражения увеличивающегося использования XML. Разработка приложений уровня предприятия сильно выиграет от поддержки XML в SQL Server 2005.

- Следующие главы дают обзор поддержки XML в SQL Server 2000 и 2005, описывают некоторые сценарии использования XML и углубляются в детали использования XML на стороне сервера и клиента.

Поддержка XML в SQL Server 2000

Эта глава предоставляет краткий обзор поддержки XML в SQL Server 2000 и в последующих сетевых релизах платформы программирования SQLXML на клиентской стороне, что обеспечивает широкую поддержку конвертации реляционных данных в XML, и наоборот.

Поддержка XML на стороне сервера

На сервере данные XML могут быть сгенерированы из таблиц и результатов запросов, используя выражение FOR XML в команде SELECT. Это идеально подходит для обмена данными и для приложений Web-сервисов. Обратной операцией для FOR XML является функция генератора реляционного набора строк OpenXML; она заносит значения из данных XML в столбцы набора строк, используя выражения XPath 1.0. OpenXML используется приложениями, которые заносят входные данные XML в таблицы или выполняют запросы, используя T-SQL.

Поддержка XML на стороне клиента

Поддержка программирования на стороне клиента для SQL Server 2000 относится к SQLXML. Центральное место этой технологии - представление XML, которое является двусторонней конвертацией схемы XML в реляционные таблицы. SQL Server 2000 поддерживает только конвертацию схем XDR, хотя поддержка XSD была добавлена в более поздние web-релизы. Представление XML позволяет выполнять запросы, используя подмножество XPath 1.0, где конвертация используется для перевода выражений пути в запросы SQL на таблицах, и где результаты запроса вставляются в результат XML.

SQLXML также позволяет создавать шаблоны XML, которые позволяют создавать документ XML с динамическими секциями. В документ XML вы можете встраивать запросы FOR XML и/или выражения XPath 1.0 при помощи запросов конвертации. Когда выполняется шаблон XML, блок запроса заменяется результатом этого запроса. Т.е. Вы можете создавать документы XML со статическим содержанием и с динамическим содержанием, управляемым данными.

В SQL Server 2000 есть два пути доступа к функциональности SQLXML:

- SQLXMLOLEDB Provider - провайдер SQLXMLOLEDB, это провайдер OLE DB, который обеспечивает функциональность Microsoft SQLXML через ADO.

- HTTP Access - функциональность SQLXML в SQL Server 2000 может также быть достигнута через HTTP, используя фильтр SQLXML ISAPI. Используя инструмент конфигурации, вы можете настроить веб-сайт на прием входящих запросов на выполнение шаблонов XML и команд FOR XML и XPath 1.0 с помощью представлений XML через HTTP.

Ограничения в поддержке XML

Серверная и клиентская платформы программирования обеспечивают широкую поддержку для генерации и потребления данных XML, основанных на конвертации между табличными данными и данными XML. Это позволяет хорошо управлять структурированными данными XML. В SQLXML язык запросов является подмножеством XPath 1.0 и имеет некоторые ограничения. Например, не поддерживается descendant-or-self axis (//). Следовательно, существуют ограничения при разработке определенных решений. Например, может не сохраниться порядок документа XML, что так критично для таких приложений, как приложения управления документами. Более того, не поддерживаются рекурсивные схемы XML. Несмотря на эти ограничения, функциональность клиентского SQLXML и серверного XML широко используется при разработке приложений. SQL Server 2005 устраняет многие из этих ограничений, расширяет обмен между реляционными данными и данными XML и обеспечивает поддержку встроенного XML.

Обзор поддержки XML в SQL Server 2005

Эта глава предоставляет обзор поддержки XML, добавленной в SQL Server 2005, которая дополняется поддержкой XML в .NET Framework V2.0 и клиентским доступом к встроенному XML через OLE DB.

Тип данных XML

Модель данных XML имеет такие характеристики, которые затрудняют, если вообще не делают невозможным процесс ее конвертации в реляционную модель данных. Данные XML имеют иерархическую структуру, которая может быть рекурсивной; реляционные базы данных обеспечивают слабую поддержку для иерархических данных (в виде внешних ключей). Порядок документа является одним из основных свойств XML и должен быть сохранен в результате запроса. Это контрастирует с реляционными данными, которые неупорядочены, и их порядок указывается с помощью дополнительных столбцов. Получение результата выполнения запроса достаточно затратно для реальных схем XML, которые распределяют данные XML по большому количеству таблиц.

В SQL Server 2005 появился встроенный тип данных - XML. Пользователь может создавать таблицу с одним или более столбцом типа XML помимо столбцов с реляционными данными; также разрешены переменные и параметры типа XML. Значения XML хранятся во внутреннем формате как большие бинарные объекты (BLOB) для лучшей поддержки характеристик модели XML, таких, как порядок документа и рекурсивные структуры.

SQL Server 2005 обеспечивает набор схем XML в качестве средства по управлению схемами W3C XML как метаданными. Тип данных XML может быть сопоставлен с набором схемы XML, чтобы наложить ограничения на экземпляры XML. Когда данные типа XML сопоставляются с набором схем XML, они называются типизированными данными XML; иначе они называются нетипизированными данными XML. И типизированные, и нетипизированные данные XML в одной структуре, модель данных XML защищена, и обработка запроса использует семантику XML. Для этого в значительной степени используется имеющаяся реляционная инфраструктура. Она обеспечивает взаимодействие между реляционными данными и данными XML, давая возможность для более широкого использования XML.

Запрос данных XML и модификация данных

Экземпляры XML могут быть получены с помощью команды SELECT языка T-SQL. Пять встроенных методов на типе данных XML обеспечивают выполнение запросов и изменение экземпляров XML.

Методы типа данных XML поддерживают XQuery, который является стандартом языка W3C и включает язык навигации XPath 2.0. Язык также доступен для изменения данных XML, например, для добавления или удаления поддеревьев и обновления скалярных значений. Вместе с большим набором функций, встроенный XQuery и языки изменения данных обеспечивают богатую поддержку управления данными XML.

Система типов XQuery соответствует типам схем XML у W3C. Большинство типов SQL совместимы с системой типов XQuery (например, десятичный тип). Несколько типов (например, xs:duration) хранятся во внутреннем формате и они соответственно интерпретируются, чтобы быть совместимыми с системой типов XQuery.

На фазе компиляции происходит проверка правильности статического типа выражений XQuery и команд модификации и используются схемы XML для ссылки на типы в случае типизированных данных XML. Ошибки статического типа возникают, если выражение не срабатывает во время работы из-за нарушения типа.

Индексирование XML

При выполнении запроса каждый экземпляр XML обрабатывается во время работы; это может являться достаточно затратным, если значение XML имеет больший размер или когда запрос возращает большое количество строк из таблицы. Для ускорения запросов создан механизм индексирования столбцов XML.

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

Вторичные индексы XML могут быть созданы по столбцу XML для ускорения различных классов типичных запросов: индекс PATH для основанных на пути запросов, индекс PROPERTY для сценариев свойств и индекс VALUE для основанных на значениях запросов.

Обработка схем XML

Столбцы, переменные и параметры XML могут быть типизированы в соответствии с набором схем XML, которые могут быть связаны (например, используя <xs:import>) или не связаны друг с другом. Каждый типизированный экземпляр XML устанавливает пространство имен из набора схем XML, относящихся к нему. Движок базы данных проверяет экземпляр в соответствии со схемой XML во время изменения данных.

Информация схемы XML используется при хранении и оптимизации запросов. Типизированные экземпляры XML содержат типизированные значения во внутреннем, двоичном представлении, как и в индексах XML. Это обеспечивает эффективную обработку типизированных данных XML.

Интеграция реляционных данных и данных XML

Пользователи могут хранить и реляционные данные, и данные XML в одной и той же базе данных. Т.е. движок базы данных знает, как работать с моделью данных XML в добавление к работе с моделью реляционных данных. Реляционные данные и приложения SQL продолжают работать правильно при их обновлении до SQL Server 2005. Данные XML, находящиеся в файлах и в столбцах text или image, могут быть перемещены в столбцы типа XML на сервере. Столбец XML может быть проиндексирован, запрошен и изменен с использованием методов типа данных XML.

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

Структурированные данные должны храниться в таблицах и реляционных столбцах. Тип данных XML - это подходящий выбор для частично структурированных данных и данных с разметкой XML, когда приложение должно выполнять запросы по этим данным и их изменение.

Улучшения в FOR XML и OpenXML

Существующая функциональность FOR XML была улучшена несколькими путями. Теперь можно работать с экземплярами данных XML и с другими новыми типами SQL, например, с [n]varchar(max).

Новая директива TYPE генерирует экземпляр типа данных XML, который может быть присвоен столбцу, переменной или параметру XML, или запрошен с использованием методов типа данных XML. Это позволяет вызывать команды SELECT ... FOR XML TYPE одну из другой.

Режим PATH позволяет пользователям определять путь в дереве XML, где должно находиться значение столбца, что вместе с с вышеупомянутой вложенностью команд является более удобным, чем FOR XML EXPLICIT.

Директива XSINIL, использующаяся вместе с ELEMENTS, конвертирует NULL в элемент с атрибутом xsi:nil="true". Также, новая директива ROOT позволяет определить корневой узел во всех режимах FOR XML. Новая директива XMLSCHEMA генерирует внутреннюю схему XSD.

Функциональные улучшения OpenXML состоят из использования типа данных XML в sp_preparedocument и генерирования столбцов с типом XML и другими новыми типами SQL в результирующем наборе данных.

Клиентский доступ к типу данных XML

Клиенты могут получать доступ к данным XML на сервере несколькими путями. Встроенный клиентский доступ к SQL, использующий ODBC и OLE DB, передает тип данных XML как строку Unicode. OLE DB также обеспечивает доступ ISequentialStream к данным XML для передачи данных Unicode.

Управляемый доступ с помощью ADO.NET в .NET Framework V2.0 передает данные XML как новый класс SqlXml. Он поддерживает метод CreateReader(), который возвращает экземпляр XmlReader для чтения возвращенного XML. Также DataSet может загружать экземпляры типа XML в столбцы на среднем уровне, которые могут быть отредактированы, как XML документ, и сохранены в SQL Server. Оба этих метода позволяют запросам SQL быть выполненными на сервере для получения столбцов XML для дальнейшей работы с ними на среднем уровне.

SOAP, который имеет прямой доступ к HTTP в SQL Server 2005, может быть использован для выполнения запросов, получения и изменения данных XML.

И встроенные, и управляемые клиентские технологии обеспечивают новые интерфейсы для получения набора схем XML, которые определяют тип столбца XML.

Поддержка XML при помощи XQuery на стороне клиента

В дополнение к использованию ADO.NET для получения таблиц в реляционный DataSet, Вы можете напрямую загружать реляционные данные в документ XML на среднем уровне, используя класс XQueryCommand. Этот класс обеспечивает обработку XQuery на среднем уровне с возможностью встраивания команд T-SQL как части языка XQuery. В этом случае вы можете запрашивать как локальные файлы XML, так и получать данные из SQL Server напрямую из таблицы или через хранимую процедуру базы данных, и загружать их в документ XML на среднем уровне. Это значительно упрощает запросы в SQL Server, выдает результат запроса в специфическом формате XML, и передает его бизнес-партнеру без необходимости загрузки данных в DataSet для выполнения изменений над данными.

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

[В начало]

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

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

Row-Level Security в РСУБД
Антон Злыгостев
SQL: Разграничение прав доступа является необходимой функциональностью любой корпоративной СУБД. Практические все современные СУБД предоставляют набор базовых средств по управлению правами доступа. Как правило, поддерживаются такие концепции, как пользователи и группы, а также так называемая декларативная безопасность - возможность предоставить этим пользователям и группам права доступа к определенным объектам базы данных. Немаловажным вопросом является гранулярность этой безопасности, т.е. насколько детально можно назначить права...
Блокировки SQL Server 7.0/2000 - теория и практика устранения проблем
Перевод Ирины Наумовой
MSSQLServer: Данная статья является новой редакцией для SQL Server 7.0 и выше статьи 162361 INF: Understanding and Resolving SQL Server Blocking Problems базы знаний Майкрософт, которая была написана для SQL Server 6.х Большая часть информации, содержащейся в вышеупомянутой статье, уже обновлена и включена в справочную систему SQL Server 7.0 в раздел "Understanding and Avoiding Blocking" (Понимание и предотвращение блокировок). Вначале, тщательно изучите информацию из этой статьи, т.к. тут она не будет повторяться. Кроме того, эта статья использует ту же самую терминологию что и в 162361. Данная статья посвящена мониторингу SQL Server для сбора и анализа информацию о блокировках и разрешения вызванных ими проблем....
За и против использования команды SELECT, представлений и хранимых процедур в SQL Server
G. Vijayakumar
MSSQLServer: Когда я начинал изучать SQL Server, я вначале не мог понять разницы между командой SELECT, представлением и хранимой процедурой. Казалось, они все выполняют практически одинаковую задачу (получение данных) и мне хотелось узнать все за и против их использования. Почему SQL Server предлагает три разных варианта получения данных из базы данных? Как разработчик и администратор баз данных, я захотел узнать все что можно об этих вариантах, почему они могут быть полезными и когда их нужно использовать. Эта статья - результат моего опыта, она объясняет разницу между командой SELECT, представлением и хранимой процедурой для администратора баз данных или разработчика, которые только знакомятся с SQL Server. Я надеюсь, что эта статья будет вам полезна. По мере прочтения этой стать...
Технология Hyper-Threading
Андрей Борзенко
Технология Hyper-Threading была создана корпорацией Intel (http://www.intel.com) в целях повышения производительности и эффективности серверных систем. Она дополняет традиционную многопроцессорность, обеспечивая более высокий параллелизм и запас производительности для ПО с поддержкой потоков. Напомним, что под потоком (или тредом, thread) в данном случае понимают объект (таких объектов может быть несколько), создаваемый ОС внутри процесса и выполняющий инструкции программы. Вообще говоря, Hyper-Threading - это форма синхронной многопотоковой технологии SMT (Simultaneous Multi-Threading Technology), которая позволяет одновременно выполнять на одном процессоре множество потоков, создаваемых программными приложениями. Работа множества потоков достигается за счет дублирован...
Практическое введение в .NET DataTables, DataSets и DataGrids - Часть 1
Pete2004
C-sharp: Цель этого документа - предоставить практическое введение в использование Microsoft .NET DataTables, DataSets и DataGrid. Большая часть статей показывает, как использовать DataGrid , напрямую связанный с таблицами базы данных, но, не смотря на то, что это отличный метод использования DataGrid, кроме него есть возможность отображать и управлять программно созданными и связанными таблицами и наборами данных, построенными из этих таблиц без привязывания к базе данных. Реализация Microsoft предоставляет богатый синтаксис для заполнения и доступа к строкам и их ячейкам в таблицах, для управления коллекциями таблиц, колонок, строк и стилей таблиц, для управления вставками, обновлениями, удалениями и событиями. Среда разработки Visual Studio .NET от Microsoft предоставляет дет...
Параметрическое определение порядка сортировки данных
Ицик Бен-Ган
MSSQLServer: В различных сетевых форумах часто обсуждается вопрос: как получить отсортированные результаты выполнения запроса, передавая хранимой процедуре некоторый параметр? Я собрал несколько решений этой задачи, предложенных талантливыми программистами. Основная часть идей, изложенных в этой статье, принадлежит обладателям звания SQL Server MVP Брюсу П. Марголину и Нейлу Пайку, а одно замечательно остроумное решение предложил Ричард Ромли. Некоторые из представленных в этой статье решений наряду с множеством решений других задач, связанных с SQL Server, можно найти в книге Нейла Пайка "SQL Server: Common Problems, Tested Solutions", вышедшей в издательстве Apress в 2000 году...
Создаем определяемый пользователем тип данных
Дан Салливан
MSSQLServer: SQL Server 2000 имеет систему скалярных типов данных, определяющую такие типы данных, как целочисленная переменная или переменная с плавающей точкой, которые администраторы баз данных обычно считают "примитивными" из-за того, что они содержат величины, которые в дальнейшем нельзя разделить на компоненты. Тем не менее, SQL Server 2000 не может предоставить практический способ расширения системы такого рода. При расширении типа к нему добавляются новые классы, которые позволяют работать с более сложными значениями. Если пользователь пожелает расширить тип данных, такой как целочисленная переменная, он не сможет этого сделать в SQL Server 2000. Вместо расширения типов данных используются встроенные возможности SQL Server 2000. Хотя может использоваться и обычный тип данных...
Готовность номер один: CLR идет
Рэнди Холувей, Андрей Киселица
MSSQLServer: Одна из долгожданных и пока наименее понятных возможностей в готовящейся версии SQL Server Yukon - его интеграция с языком Common Language Runtime (CLR). Это чрезвычайно богатая тема, охватывающая много новых особенностей и функций для администраторов базы данных и разработчиков. Как уже стало известно, сервер Yukon базируется на Microsoft .NET Framework и обеспечен новыми свойствами, которых нет в SQL Server версии 2000...
Windows Firewall: усиливаем защиту
Рэнди Франклин Смит
Когда дело касается безопасности компьютерных систем, большинство организаций сосредоточивает свои усилия на серверах. Но многие из недавно объявившихся <червей>, разрушивших целые сети и стоивших компаниям миллионы долларов, нанесли этот огромный ущерб, проникнув в сеть через беззащитные рабочие станции. Злоумышленники - будь то посторонние лица или недовольные сотрудники компании, умеющие контролировать рабочую станцию и имитировать легитимного пользователя системы, могут получать доступ к конфиденциальной информации и ресурсам на локальной системе и в локальной сети. Прошли те времена, когда локальную сеть можно было расценивать как безопасное убежище. Теперь от атак <червей> и действий злоумышленников нужно защищать все открытые порты на рабочих станциях...

[В начало]

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

The Microsoft Security Debate, Part One
Keith Ward
Recently I sent out a request to those who think Microsoft, despite its efforts over the last two years, still "doesn't get" security. My purpose isn't to bash Microsoft, but rather to have a debate between knowledgeable IT folks, since so much criticism of Redmond on the topic of security is, I believe, ill-informed
Active Directory Object Permissions 101
Roberta Bragg
Understanding the ins and outs of AD and object permissions is no simple task, but your efforts can help avoid catastrophe
Microsoft Delivers on Centralized Security
Don Jones
Audit Collection Services provides a scalable means of consolidating security event logs across your enterprise
Clustering SQL Server 2000 from 500 Feet
Brian Knight
Clustering a SQL Server machine was one of the most frustrating tasks a DBA and Windows administrator had to accomplish in SQL Server 7.0 and Windows NT 4.0. With the maturity of both the OS and the DBMS in Windows 2000 and SQL Server 2000, this operation has been simplified tremendously. In the next two articles, I hope to show you the fundamentals of how SQL Server and Windows clusters and then how to actually accomplish this task
Database Design and Modeling for Programmers
Chad Z. Hower
Most programmers aren't qualified database administrators, but were often thrust into the role of "Acting DBA". This article will cover some basic techniques of database design and modeling. As usual I will use real world examples and expose certain pitfalls of not following these guidelines. This article is designed for the programmer who is familiar with client server databases, and SQL (however much of this applies to ISAM databases such as Paradox also)
SQL Server 2005. The ReverseString Component Explained
Allan Mitchell
This article is meant as a very gentle introduction into creating your own custom transformation component in SQL Server 2005 Integration Services. In the article we will be touching upon a few of the essential methods available to us in the new object model and showing you how to set a few of the new properties. A single article such as this cannot do justice to the wealth of methods and properties available so in upcoming articles we will be building components that use different pieces of the object model or functionality
Using Profiler to Identify Poorly Performing Queries
Brad M. McGehee
At this step in the SQL Server performance audit, you should have identified all the "easy" performance fixes. Now it is time to get your hands a little dirtier and identify queries (including stored procedures) than run longer than they should, and use up more than their fare share of SQL Server resources
Files and Filegroups
InformIT
It's ironic that an RDBMS like SQL Server grew out of the desire to implement data structures in something other than files. The irony is that at the heart of SQL Server lies – you guessed it – files. Of course, the distinction is that SQL Server uses binary files, not simply textual ones, and it's the internal representation of data that makes an RDBMS special
Step-by-Step Guide to Clustering Windows 2000 and SQL Server 2000
Brian Knight
In my last article, I spoke extensively about the theory behind clustering a Windows 2000 and SQL Server machine. This week, I’ll detail how to actually accomplish this task in a step-by-step guide. In this guide, I’ll use Windows 2000 Advanced Server with SQL Server 2000 Enterprise to create an Active/Active cluster. These two software components are the minimum requirement in a 2000 environment to cluster SQL Server 2000. If you have not read my article on Clustering SQL Server 2000 from 500 Feet, I would recommend that you do so before moving forward since this guide will use terms that I assume you know from the last article
Common Vulnerabilities in Database Security
ittoolbox
Creating an enterprise security plan is a complex endeavour. It involves evaluating multiple threats that gain access through many network paths to a hodgepodge of different applications and systems. With the focus on systems and paths, databases are frequently overlooked. Securing the database should be a fundamental tenet for any security practitioner when developing his or her security plan. The database is the source of data, the "crown jewels" in the information economy. Any security effort must start with this in mind and end with the strongest level of controls applied at the database layer
More Than Pie Charts
Michael Gonzales
Business intelligence is too important to be limited by outdated presentation and visualization
A simple VB.NET stress utility for SQL Server 2000
Alberto Venditti
This article describes a VB.NET tool to test the performances of a Microsoft SQL Server 2000 user database
Reduce Database RoundTrips Using XML
Jon Winer
Connecting to and executing commands against a database is a simple task. We do it without much thought because in today’s applications, data access is common place and necessary. For those of us who work in a Microsoft ‘Shop’, ADO and ADO.NET is the norm when it comes to reading and writing from and to a database
Scripting DSN Creation
Chris Brooke
Mr. Script explains how you can edit the Registry with scripting to automate the creation of Data Source Names. Whenever you run a script, you need to take care to ensure no unintentional damage is done to production systems. However, this month, we're going to be scripting changes to (cue scary music)—the Registry! As such, an extra dose of caution is the order of the day. Nowhere is Windows more unforgiving of inadvertent slip-ups than in the Registry
SQL Server 2005 Part 2 - High Availability and Scalability Enhancements - Database Mirroring
Marcin Policht
In the first article of this series, we presented a high-level overview of SQL Server 2005 functionality, based on its most recent Beta 2 implementation. Our goal, going forward, will be to discuss each of new or improved features in more details, focusing on engineering and administrative issues. We will start by covering the high availability and scalability enhancements, such as database mirroring (introduced in this version) and failover clustering, which is improved in SQL Server 2005, compared to earlier editions. Note, that while SQL Server 2005 continues to offer other, currently available technologies in this category, such as replication and log shipping (providing warm standby capabilities), as well as standard backup/restore (which can be used for cold standby solutions), in more or less unchanged form, their effectiveness is positively impacted by the introduction of database snapshots, new isolation levels, or online restore and index operations (which we will also be presenting later).
All About Transactions - Part 3
Don Peterson
Part 1 of this series introduced transactions in general and then examined SQL Server's Transaction Modes and nested transactions. Part 2 dealt with error handling and its effect on transactions. In this article I will explore the ins and outs of Transaction Isolation Levels. So far in this series of articles I have dealt with transactions as if there were a single connection to the database.If your database resides on SQL Server, it's a good bet that you expect more than one concurrent connection to the database; maybe thousands. In order to understand Transaction Isolation Levels you must understand transactions (read Parts 1&2 of this series) and locking. I won't attempt to offer a complete tutorial on SQL Server's locking mechanism, but I'll hit the high points necessary to grasp the Transaction Isolation Levels it offers
How to Get the Nth Maximal or Minimal Value in T-SQL
Eli Leiba
This article describes how to get the Nth maximal (or minimal) value of any given column name from any table. The column should be of a primitive type (numbers, strings or dates), not one of data type text or image
Mop the Floor and Fix the Leak, Part 3
Joe Celko
In the first part of the series, we considered putting all of the data integrity, verification and validation rules in the front end. In the second part, we considered putting all of the data integrity, verification and validation rules in the database. Neither approach was really workable
The Right Data and Analytic Types are Valuable Assets for Business
Dave Beulke
Business intelligence and data warehousing initiatives involve gathering, manipulating, and analyzing data to turn that data into a more valuable asset and to address a situation or problem. Companies leveraging their information assets are able to rapidly develop and assimilate values, new procedures, and practices into a competitive advantage or more efficient cost structure. And there are numerous data and analytics types that transform business information into valuable assets
Write query results to Excel using a linked server and T-SQL
Eli Leiba
SQL Server has several tools for exporting and importing data. The simple utilities like the T-SQL statement BULK INSERT or the BCP utility does the data transfer by using flat text files. In order to deal with any other type of file to be exported or imported we must construct a DTS package using the DTS designer or the DTS wizard. This will eventually create a DTS package that is an independent object that we must test, maintain and handle. The work of transferring data becomes more complicated even if we want to transfer just a simple Excel file to the file system
Implementing Oracle's MINUS set operator in T-SQL
Eli Leiba
The MINUS set operator in the SQL language is of great importance. Finding the difference between two given sets of values -- i.e., the set of values that is in the first set but not in the other -- is a common and important task, especially when dealing with database schema structural changes. It's useful when you want to identify which columns were added or deleted, or when you change initial data in tables and want to know the difference in the data between two schemas (for example, in test and production environments). This operator exists in Oracle SQL but unfortunately not in SQL Server 2000 SQL. Here I describe a way to implement a weaker version of the MINUS operator using T-SQL tools
Comparing directory structures using T-SQL
Eli Leiba
There are times when DBAs want to compare directory structures between different installations. Generally, this is done by using Windows Explorer and manually looking over the directory tree structures in both places. This process is vulnerable to human error. Here I suggest a different, automatic way of doing such a comparison
Unifed Database Toolkit - Connection Definition
Andre Vigneau
This is the second article relating to my Unified Database Toolkit. We have seen in the previous article, Unified Database Toolkit - Scheduling, a simple way to create jobs in Windows scheduler from within Microsoft database engine. But before we take a look at how this database tool will be generating script files and associated batch files and then schedule them, we need something else. We need to introduce a connection standard to use to open connections and run scripts on the remote or local database engine
Moving System Databases - A Checklist
Christoffer Hedgate
Moving a database in SQL Server is normally as simple as detaching it from the server, moving it to it's new location and then attaching it again. However, that only counts for user databases. Moving system databases requires quite a bit more work. Since I had to do this a couple of times during the last weeks I wrote down a simple checklist that I could follow to make sure it was done right, so I did not screw up the servers and could speed up the process as much as possible. And, since I guess I will be doing it again sometime in the future and inevitably will lose the notes I scribbled down, I thought I could just as well post them here for safe-keeping. If anyone wants to use this checklist go ahead, but remember to do the steps in the exact order of the list, and make sure you have all the necessary backups before starting. To be completely clear, doing this wrong can completely screw up your databases and I can not take any responsibility if anything does go wrong. Also note that the checklist was written for the specific situation I was encountered with. Your system databases might have more data files and/or other file paths and names than those in the list, so you might need to make some changes. Have fun!
SQL Server 2005 Part 2 - High Availability and Scalability Enhancements - Database Mirroring
Marcin Policht
In the first article of this series, we presented a high-level overview of SQL Server 2005 functionality, based on its most recent Beta 2 implementation. Our goal, going forward, will be to discuss each of new or improved features in more details, focusing on engineering and administrative issues. We will start by covering the high availability and scalability enhancements, such as database mirroring (introduced in this version) and failover clustering, which is improved in SQL Server 2005, compared to earlier editions. Note, that while SQL Server 2005 continues to offer other, currently available technologies in this category, such as replication and log shipping (providing warm standby capabilities), as well as standard backup/restore (which can be used for cold standby solutions), in more or less unchanged form, their effectiveness is positively impacted by the introduction of database snapshots, new isolation levels, or online restore and index operations (which we will also be presenting later).
WinFS: It's Back!
Doug Barney
Too many versions of Windows adds to the burden of support. The unified file system component of Longhorn may have been unceremoniously dumped from the initial shipment coming in 2006, but it will appear sometime later, according to Microsoft prez Steve Ballmer. This is great news for those who have guzzled the Longhorn Kool Aid, but I have to wonder what it means for IT. After all, a file system is't like a new skin for Media Player that you just slap on and start using. I's a bit more fundamental
Version 2005: Easy Package Configuration
Jamie Thomson
One of the age old problems in DTS is moving packages between your development, test and production environments. Typically a series of manual edits needs to be done to all the packages to make sure that all the connection objects are pointing to the correct physical servers. This is time consuming and gives rise to the possibility of human error, particularly if the solution incorporates many DTS packages. Many companies have provided their own custom solutions for managing this problem but these are still workarounds for a problem that is inherently DTS's
SQL Server Clustering: 2000 to 2005
Romanth Nirmal
In this 11,000+ word article, you will learn about the basics of how to cluster SQL Server. To make it easier for you to read, it has been divided into the following 6 sections
Windows DataGridColumns User Controls
Rami Saad
How to build ComboBox, DateTimePicker and Button as User Controls for DataGridColumns for WinForms. This article explains how to build some special user controls for DataGrid columns on a Windows application. The special controls are: DataGrid ComboBox, DateTimePicker and Button columns. In a DataGrid, a column style is an object that defines what the column looks and behaves like, including such things as color, font, and the presence of controls that will handle linked field in a database with the use of a ComboBox, a CheckBox and other controls. The .NET Framework includes two types of column-style classes by default: the DataGridTextBoxColumn and DataGridBoolColumn classes. A quantity of jobs you may want to achieve with the Windows Forms DataGrid control are, unexpectedly, more troublesome than you might expect. Principally, this is because the Windows Forms DataGrid control is column-based, rather than cell-based. As a result, to attain most tasks, you have to work with the columns, not the cells themselves. Hence the need to create our own set of DataGridColumnStyle objects that define custom column styles for the Windows Forms DataGrid control and add them to the GridColumnStylesCollection. Below is an explanation of how those three user controls might be useful
Checking Latency on SQL Server 2000
Muthusamy Anantha Kumar
Latency in a replication environment is the time it takes for a transaction to be transmitted from a publisher to the distributor and from the distributor to a subscriber. In this article, I am going to discuss how to find and monitor the latency frequency in a transactional replication environment

[В начало]

ФОРУМ SQL.RU

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

Новые упражнения на http://sql.ipps.ru
Новость No.2 - FTP SQL.RU
О Data Controls в Delphi
Бэкап базы не отходя от кассы, т.е. во время работы (подскажите вариант)
Скрыть структуру БД
Как узнать права ?
Книга по Reporting Service
Как дать права юзеру на OpenRowSet?
Книга Kalen Delaney "Inside Microsoft SQL Server 2000" в формате CHM
Как сделать уникальные значения в поле среди которых могло бы быть повторяющееся NULL
Scan для кластерного индекса
Создание таблицы натуральных чисел
инструмент для разработчика на MSSQL
Выполнение строкового математического выражения в функции
установка формата даты
Разбор протоколов (алгоритм задачки с временными интервалами)
Крик души ! Ограничение ресурсов для пользователей когда-нибудь появится в MS SQL Server ?
Генерация хэш-таблиц
Репликация для сохранения данных
Мониторинг CPU и гипертреадинг (НТ)

[В начало]

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

Вопросы кодировки: NTEXT -> windows-1251
Опять про CrossTable - как в результатх вывести текстовые данные?
Freetds + MSSQL 2000
Как получить результат в cp1251???
TOAD for SQL Server
for the begginers...
Может ли sa получить доступ к запароленному DTS пакету?

[В начало]

ПОЛЕЗНОСТИ

SQL для "чайников". 5-е издание

Аллен Дж. Тейлор

Книга в типографии. Cтраниц 352, с ил.; формат 70x100/16; 2004, 4 кв.; ISBN 5-8459-0714-4; Диалектика.

Во всех распространенных системах управления базами данных для создания, извлечения и обработки информации используется язык структурированных запросов SQL. Благодаря этой книге вы поймете принципы создания реляционных баз данных. За короткое время вы научитесь создавать таблицы, представления и сложные вложенные запросы для многотабличной базы данных, а также защищать данные, управлять несвязанными данными и обмениваться информацией с другими приложениями. В книге рассмотрена последняя стандартная версия SQL:2003. Книга рассчитана на начинающих пользователей, интересующихся базами данных и их практическим применением

[В начало]

#225<<  #226

Вопросы, предложения, коментарии, замечания, критику и т.п. оставляйте Виталию Степаненко и Александру Гладченко в форуме: Обсуждение рассылки

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

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



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


http://subscribe.ru/
http://subscribe.ru/feedback/
Подписан адрес:
Код этой рассылки: comp.soft.winsoft.sqlhelpyouself
Отписаться

В избранное