Администраторы базы данных

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

2
Почему объединение вложенных циклов поддерживает только левое соединение?
В блоге Крейга Фридмана « Объединение вложенных циклов» он объясняет, почему объединение вложенных циклов не может поддерживать правильное внешнее объединение: Проблема в том, что мы сканируем внутреннюю таблицу несколько раз - по одному разу для каждой строки внешнего соединения. Мы можем встречаться с одними и теми же внутренними строками несколько …

2
Как прочитать HTML-код как XML и получить вывод, как образец в SQL?
У меня есть HTML-код, хранящийся в базе данных, и я хочу читать его как XML. Мои коды: http://rextester.com/RMEHO89992 Это пример кода HTML, который у меня есть: <div> <section> <h4> <span> A </span> </h4> <ul> <li> <span> Ab</span> AD <span> AC </span> </li> <li> <span> Ag</span> <span> AL </span> </li> </ul> …
11 sql-server  t-sql  xml 

2
Почему при преобразовании динамического SQL (сводного запроса) в вывод XML, первая цифра даты преобразуется в Юникод?
Я использую этот замечательный пример /dba//a/25818/113298 от Bluefeet, чтобы создать сводную диаграмму и преобразовать ее в данные XML. Объявление параметра DECLARE @cols AS NVARCHAR(MAX), @query AS NVARCHAR(MAX); Далее идет CTE с большим количеством кода, конечный результат CTE помещается во временную DB (так же, как в примере) SELECT B.[StayDate] -- this …
11 sql-server  xml  pivot 

3
Можно ли выбрать RAISERROR или THROW в зависимости от версии SQL Server?
Вот мой код прямо сейчас: BEGIN TRY INSERT INTO TABLE (F1,F2,F3) VALUES ('1','2','3') END TRY BEGIN CATCH ;THROW END CATCH Прекрасно работает, если только он не запущен на машине с SQL 2008. Я хотел бы, чтобы блок CATCH проверил версию SQL и запустил THROW, если она равна или выше 2012 …

2
SQL Server - столбцы NTEXT и манипуляции со строками
У меня есть таблица с NTEXTименем столбца comments. У меня есть вторая строка, давайте назовем ее anothercomment(а varchar), которая должна быть помещена в данную commentsстроку после слова UPDATEHERE. Приведение к nvarchar(max)усечению commentsстроки, поэтому я не могу использовать подобные CHARINDEX()( Msg 8152, Level 16, State 10, Line 2 String or binary …

4
Какое максимальное количество локальных переменных может участвовать в операции SET?
У меня есть хранимая процедура, которая содержит бизнес-логику. Внутри него около 1609 переменных (не спрашивайте меня, почему, именно так работает двигатель). Я пытаюсь SETпеременную к объединенному значению всех других переменных. В результате при создании я получаю ошибку: Сообщение 8631, уровень 17, состояние 1, процедура XXX, строка YYY Внутренняя ошибка: достигнут …

1
ПРОВЕРЬТЕ ограничение для обеспечения соответствия ###. ###. #### шаблону
Я хотел бы иметь проверочное ограничение, которое применяет этот шаблон регулярных выражений для кода, состоящего из нескольких частей: ^\d{3}\.\d{3}\.\d{4}$ ... три числа, точка, три числа, точка, четыре числа. Нужно ли создавать функцию CLR для обеспечения соответствия шаблону, и можно ли ссылаться на функцию CLR в DDL? Есть ли способ применить …

1
Именование хранимых процедур SQL Server
Мы начали называть наши хранимые процедуры как [16_TestStoredProc]. Есть ли какие-либо последствия присвоения имен хранимой процедуре? Я не собираюсь объяснять, почему мы это делаем. Это не то, что у меня есть проблемы с этим, но будет иметь какие-либо последствия.


4
Sql Server не может использовать индекс при простом бижекции
Это еще одна головоломка оптимизатора запросов. Может быть, я просто переоцениваю оптимизаторы запросов, или, может быть, я что-то упустил - поэтому я выкладываю это туда. У меня простой стол CREATE TABLE [dbo].[MyEntities]( [Id] [uniqueidentifier] NOT NULL, [Number] [int] NOT NULL, CONSTRAINT [PK_dbo.MyEntities] PRIMARY KEY CLUSTERED ([Id]) ) CREATE NONCLUSTERED INDEX …

1
Какой индекс будет использоваться в этом сценарии?
SQL Server 2014 Standard Edition Мне нужно узнать количество рейсов в определенные города и из них в определенные месяцы. Например select count(*) from flights where flightTo_AirportCode = 'aaaa' and flightFrom_Airportcode = 'bbbb' and flightdate < '2016-04-01' and flightdate > '2016-02-28' ; Схема таблицы ниже. Я пытаюсь оценить, является ли индекс …

2
Поведение нечетного потока
Запрос: declare @X xml = ' <item ID = "0"/> <item ID = "1"/> <item/> <item/>'; select I.X.value('@ID', 'int') from @X.nodes('/item') as I(X); Результат: ----------- 0 1 NULL NULL План выполнения: Верхняя ветвь разделяет XML на четыре строки, а нижняя ветвь выбирает значение для атрибута ID. То, что кажется мне …

3
DROP USER занимает слишком много времени, когда много пользователей
В экземпляре SQL Server 2014 с достаточным количеством оперативной памяти и быстрыми дисками более 160 пользователей имеют доступ к базе данных. По какой-то причине без моего ведома выполнение команды DROP USER [username]в этой базе данных занимает до 5 секунд на пользователя. Преобразование пользователей в логины и восстановление их разрешений происходит …

2
PostgreSQL: передать таблицу в качестве аргумента в функцию
Я открываю TYPEдля PostgreSQL. У меня есть, TABLE TYPEчто некоторые таблицы должны уважать (интерфейс). Например: CREATE TYPE dataset AS( ChannelId INTEGER ,GranulityIdIn INTEGER ,GranulityId INTEGER ,TimeValue TIMESTAMP ,FloatValue FLOAT ,Status BIGINT ,QualityCodeId INTEGER ,DataArray FLOAT[] ,DataCount BIGINT ,Performance FLOAT ,StepCount INTEGER ,TableRegClass regclass ,Tags TEXT[] ,WeightedMean FLOAT ,MeanData FLOAT ,StdData …

2
Как смоделировать тип объекта, который может иметь разные наборы атрибутов?
У меня возникли проблемы при воссоздании базы данных с отношением один-ко-многим (1: M) между пользователями и элементами . Это довольно просто, да; тем не менее, каждый элемент относится к определенной категории (например, автомобиль , лодка или самолет ), и каждая категория имеет определенное количество атрибутов, например: Car структура: +----+--------------+--------------+ | …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.