Какая-либо причина установить SQL Server 2005 и 2008 на той же машине?

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

Это называется алгоритм смещения средней точки.

5
задан Brian Boatright 28 September 2008 в 21:12
поделиться

6 ответов

Я на самом деле не попытался переместить базу данных 2005 года в 2008, но обычно SQL обрабатывает это чисто и без труда. Самый простой способ сделать это состоял бы в том, чтобы сделать резервное копирование Вашей базы данных от SQL 2005 и затем восстановить то резервное копирование с SQL 2008.

Если Вы хотите иметь в наличии копию SQL 2005 года и онлайн пока Вы не знаете, что копия 2008 года работает, Вы, возможно, должны были бы переместить данные/файлы журнала для своей базы данных при восстановлении резервного копирования на 2008, так как старые файлы данных будут использоваться к 2005. Можно сделать это использование with move опция restore database, например:

RESTORE DATABASE mydb FROM disk = 'c:\backupfile.bak'
WITH MOVE 'maindatafile' to 'c:\newdatalocation.mdf',
MOVE 'mainlogfile' to 'c:\newloglocation.ldf'

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

4
ответ дан 14 December 2019 в 09:05
поделиться

Можно отсоединить базу данных 2005 года и подключить ее к серверу 2008. Я рекомендовал бы против установки обоих на той же машине, если Вы не должны (например, Вы - написание кода для третьего лица, и они только используют 2005).

То, что я настоятельно рекомендовал бы, использует windows server 2008 hyper-v для создания 2 виртуальных машин один со средой 2005 года, другим с 2008. Виртуальные машины Hyper-v невероятно быстрее, чем Виртуальный сервер 2007.

3
ответ дан 14 December 2019 в 09:05
поделиться

Базы данных должны (должен!) неизмененная работа. Однако для разработки желательно это, у Вас есть sql2005 для тестирования сценариев, если Вы не предполагаете, что все Ваши клиенты обновили бы до 2008 также, с 2008 имеет функции, которые не существуют в SQL Server 2005.

0
ответ дан 14 December 2019 в 09:05
поделиться

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

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

0
ответ дан 14 December 2019 в 09:05
поделиться

Обычно в ListBox задается значение IsSynchroneWityCurrentItem = «True» . Затем я добавляю обработчик SeliceChanged и всегда представляю выбранный предмет с кодом

    private void BringSelectionIntoView(object sender, SelectionChangedEventArgs e)
    {
        Selector selector = sender as Selector;
        if (selector is ListBox)
        {
            (selector as ListBox).ScrollIntoView(selector.SelectedItem);
        }
    }

Из моей виртуальной машины я могу получить представление коллекции по умолчанию и использовать один из методов MireCurrent * () , чтобы убедиться, что редактируемый предмет является текущим предметом.

CollectionViewSource.GetDefaultView(_myCollection).MoveCurrentTo(thisItem);

ПРИМЕЧАНИЕ. Отредактировано для использования ListBox.ScrollIntoView () для размещения виртуализации

-121--1570767-

Макеты/заглушки/подделки/двойные тесты/и т.д. хорошо проходят модульные испытания и позволяют проводить испытания испытываемого класса/системы в изоляции. Интеграционные тесты могут не использовать никаких насмешек; они действительно попали в базу данных или другую внешнюю зависимость.

Вы используете макет или заглушку, когда это необходимо. Обычно это происходит потому, что класс, который вы пытаетесь проверить, зависит от интерфейса. Для TDD необходимо программировать интерфейсы, а не реализации, и использовать ввод зависимостей (вообще говоря).

Очень простой случай:

public class ClassToTest
{
   public ClassToTest(IDependency dependency)
   {
      _dependency = dependency;
   }

   public bool MethodToTest()
   {
      return _dependency.DoSomething();
   }
}

IDependency - это интерфейс, возможно, с дорогими вызовами (доступ к базе данных, вызовы веб-служб и т.д.). Метод тестирования может содержать код, подобный

// Arrange

var mock = new Mock<IDependency>();

mock.Setup(x => x.DoSomething()).Returns(true);

var systemUnderTest = new ClassToTest(mock.Object);

// Act

bool result = systemUnderTest.MethodToTest();

// Assert

Assert.That(result, Is.True);

Обратите внимание, что я выполняю тестирование состояния (как предлагал @ Finglas), и я утверждаю только против тестируемой системы (экземпляр класса, который я тестирую). Я могу проверить значения свойств (состояние) или возвращаемое значение метода, как показано в этом случае.

Я рекомендую читать Искусство модульного тестирования , особенно если вы используете .NET.

-121--4518399-

Для меня важно, будете ли у вас экземпляры, которые являются базами данных 2005 года? Вам придется поддерживать отчеты служб отчетов, которые находятся на программном сервере, который имеет только 2005 версию служб отчетов и т.д.

Если это так, вы должны иметь версии 2005 и 2008 на ваших машинах для разработки. Я видел много кода, который пришлось выбросить, потому что разработчики работали в 2008 году, когда был 2005 год. ALways разрабатываются в соответствии с версией программного обеспечения, которое вы будете иметь в программе. Если вы конвертируете в 2008, но еще не там, вам нужны оба, один для изменений обслуживания и один для будущих вещей.

Лично у меня есть SQL Server 2000, 2005 и 2008 на моей машине, потому что мы еще не преобразовали все, и у меня есть некоторые вещи, которые можно сделать только на старой версии. Мы нашли ключ к поддержанию нескольких версий, чтобы установить их в правильном порядке. Кажется, это плохо, если вы положите 2008 на первую, а затем более старые версии.

0
ответ дан 14 December 2019 в 09:05
поделиться

Джанго теоретически работает на Windows, но использует Apache и MySQL. Запустить его на IIS невозможно (и, конечно, не рекомендуется).

Я знаю, что вы совершенно не спрашивали об этом, но я должен сообщить, что если вы действительно хотите попасть в веб-разработку Python, то поиск стека технологий Linux определенно является рекомендуемым подходом.:)

-121--4268280-

Предполагается, что вы ссылаетесь на goog.dom.DomHelper - похоже, что он обеспечивает эффективное решение DOM-манипуляций между браузерами.

-121--3383498-

Иногда вам нужно пройти тестирование на нескольких версиях, или вам может понадобиться 2005 год для одной вещи, а 2008 год для другой.

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

Есть много причин.

0
ответ дан 14 December 2019 в 09:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: