Изначально не было ясно, что вы имели в виду:
анимировать div # box-2 вверх при щелчке
blockquote>Теперь, когда вы спросили чтобы на самом деле переместить
#box-2
в верхнюю часть экрана (что я буду интерпретировать как «физически выше»#box-1
), я отошлю вас к этому коду:[ 118] На что ответили здесь: Поменяйте местами 2 деления с помощью jQuery$("#box-2").on("click", function(){ $('#box-2:parent').each(function () { $(this).insertBefore($(this).prev('#box-1')); }); });
Мое предположение - то, что это - ошибка некоторых видов. В SQL 2005 я смог создать такое индексное представление без проблемы (код ниже). Когда я пытался выполнить его на SQL 2000, хотя я получил ту же ошибку, как Вы добираетесь.
Следующее, кажется, работает над SQL 2000, но я получаю предупреждение, что индекс будет проигнорирован, И необходимо было бы преобразовать каждый раз, когда Вы выбрали из представления.
CONVERT(CHAR(8), datetime_column, 112)
Работы в SQL 2005:
CREATE TABLE dbo.Test_Determinism (
datetime_column DATETIME NOT NULL DEFAULT GETDATE())
GO
CREATE VIEW dbo.Test_Determinism_View
WITH SCHEMABINDING
AS
SELECT
DATEADD(dd, DATEDIFF(dd, 0, [datetime_column]), 0) AS EffectiveDate
FROM
dbo.Test_Determinism
GO
CREATE UNIQUE CLUSTERED INDEX IDX_Test_Determinism_View ON dbo.Test_Determinism_View (EffectiveDate)
GO
Попробуйте это:
CAST(FLOOR(CAST([datetime_column] as FLOAT)) AS DateTime)
Это должно пойти намного быстрее, чем опция CONVERT.
Ваш столбец [datetime_column] значение по умолчанию установили на "getDate ()"??
Если так, с тех пор getdate () функция недетерминирована, это вызовет эту ошибку...
Детерминирована ли пользовательская функция, или недетерминированный зависит от того, как функция кодируется. Пользовательские функции детерминированы если:
Пользовательские функции, которые не соответствуют этим критериям, отмечены как недетерминированные. Встроенные недетерминированные функции не позволяются в теле пользовательских функций.
Я предложил бы несколько simplier:
cast(cast([datetime_column] as int) as datetime)
но я подозреваю, что Вы столкнетесь с той же проблемой.
Теперь, если проблема находится во вспоминании к дате и времени, Вы могли бы хотеть рассмотреть использование просто cast([datetime_column] as int)
как отдельное поле, только для индекса.
Посмотрите на тот вопрос, который спрашивают и отвеченный Заправкой для соуса Бочонка. Возможно, решение состояло бы в том, чтобы создать использование функции С SCHEMABINDING и затем использовать его в вычисляемом столбце
Править
Я понимаю, что цель необходимо смочь иметь индекс на том столбце.
Если бы это не может быть сделано с вычисляемым столбцом затем, возможно, единственная опция состояла бы в том, чтобы создать обычный столбец и изменить данные в том столбце каждый раз, когда Вы обновляете тот, на основе которого это. (скажите в триггере),