Нажмите CTRL + F5 , чтобы полностью обновить все на вашей веб-странице, включая скрипты и таблицы стилей.
Кроме того, вы можете включить таблицы стилей, которые будут обслуживаться, со страницы динамического сервера [php / asp.net] и Response.Expires = -1, что заставит клиента явно загружать css при каждом запросе HTTP-GET. Вы также можете сделать это в настройках вашего веб-сервера для типов MIME CSS.
I серьезно рассмотрел бы создание CLR UDF вместо и использование регулярных выражений (как строку, так и шаблон можно передать в качестве параметров) для выполнения полного поиска и замены диапазона символов. Он должен легко превзойти этот SQL UDF.
Один из вариантов - использовать таблицу чисел / подсчетов для управления итеративным процессом через псевдо-набор основанный на запросе.
Общая идея замены символов может быть продемонстрирована с помощью простого подхода таблицы карты символов:
create table charMap (srcChar char(1), replaceChar char(1))
insert charMap values ('a', 'z')
insert charMap values ('b', 'y')
create table testChar(srcChar char(1))
insert testChar values ('1')
insert testChar values ('a')
insert testChar values ('2')
insert testChar values ('b')
select
coalesce(charMap.replaceChar, testChar.srcChar) as charData
from testChar left join charMap on testChar.srcChar = charMap.srcChar
Затем вы можете ввести подход таблицы подсчета для выполнения поиска по каждой позиции символа в строке.
create table tally (i int)
declare @i int
set @i = 1
while @i <= 256 begin
insert tally values (@i)
set @i = @i + 1
end
create table testData (testString char(10))
insert testData values ('123a456')
insert testData values ('123ab456')
insert testData values ('123b456')
select
i,
SUBSTRING(testString, i, 1) as srcChar,
coalesce(charMap.replaceChar, SUBSTRING(testString, i, 1)) as charData
from testData cross join tally
left join charMap on SUBSTRING(testString, i, 1) = charMap.srcChar
where i <= LEN(testString)
Предоставляет интерфейсы для функций аргументов 0, 1 и 2. Использует дженерики Java. Хороший набор алгоритмов для работы с функциями.
Предоставляет классы для 0, 1, 2 и произвольного числа функций аргументов. Объекты домена делят их на подклассы. Использует дженерики Java. Обширный набор алгоритмов. Включает JFXG (Java Functor eXpression Grammar) - анализируемый язык, предназначенный для упрощения создания произвольно сложных функторов. Предоставляет несколько алгоритмов для работы с функциями.
Предоставляет интерфейсы для функций аргументов 0, 1 и 2, а также процедур аргументов 0, 1 и 2 (которые не возвращают значения). Использует дженерики Java. Хороший набор алгоритмов.
Предоставляет интерфейсы функций и предикатов для функций с одним аргументом. Использует дженерики Java. Предоставляет только метод compose для объединения функций. Довольно простой.
Предоставляет интерфейсы и классы для 0, 1, 2 и произвольного числа функций аргументов. Использует дженерики Java. Существующие методы можно превратить в функции с помощью предоставленных классов отражения функций.
Его предложение актуально и подходит НЕЗАВИСИМО от того, как вы решите очистить свои данные.В частности, в моем текущем проекте у меня есть постоянный вычисляемый столбец, который обрезает все ведущие нули (к счастью, это действительно легко обрабатывается в прямом T-SQL. ) из некоторых конкретных числовых идентификаторов, хранящихся несовместимо с ведущими нулями. Он сохраняется в постоянных вычисляемых столбцах в таблицах, которые в нем нуждаются, и индексируется, поскольку этот согласованный идентификатор часто используется в соединениях.
Один полезный трюк в SQL - это возможность использовать @var = function (...)
для присвоения значения. Если у вас есть несколько записей в наборе записей, ваша переменная назначается несколько раз с побочными эффектами:
declare @badStrings table (item varchar(50))
INSERT INTO @badStrings(item)
SELECT '>' UNION ALL
SELECT '<' UNION ALL
SELECT '(' UNION ALL
SELECT ')' UNION ALL
SELECT '!' UNION ALL
SELECT '?' UNION ALL
SELECT '@'
declare @testString varchar(100), @newString varchar(100)
set @teststring = 'Juliet ro><0zs my s0x()rz!!?!one!@!@!@!'
set @newString = @testString
SELECT @newString = Replace(@newString, item, '') FROM @badStrings
select @newString -- returns 'Juliet ro0zs my s0xrzone'