Giter Site home page Giter Site logo

ecm7migrator's People

Contributors

dima117 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

ecm7migrator's Issues

does not support DbType.Guid

Здравствуйте! Хочу применить Ваш мигратор 
у себя в проекте но при
выполнении собственно операции миграции 
происходит ошибка: Dialect does not
support DbType.Guid

скрипт Nant:
<project default="migrate">

    <loadtasks assembly="./ECM7.Migrator.NAnt.dll" />

    <target name="migrate">

        <property name="version" value="2010031905" />

        <migrate 
            dialect="ECM7.Migrator.Providers.Oracle.OracleDialect,
ECM7.Migrator.Providers.Oracle"
            connectionstring="Data Source=localhost;User ID=system;Password=oracle;"
            migrations="bin/Debug/ARexMigrator.exe"
            to="${version}" />
    </target>

</project>


часть листинга миграции:
 Database.AddTable("MainTable40101",
                new Column("id", DbType.Guid, ColumnProperty.PrimaryKey),
                new Column("id_storedformdata", DbType.Guid),
                new Column("_3", DbType.Decimal),
                new Column("_4", DbType.Decimal),
                new Column("_5", DbType.Decimal),
                new Column("_6", DbType.Decimal),
                new Column("_7", DbType.Decimal),
                new Column("_8", DbType.Decimal),
                new Column("_9", DbType.Decimal),
                new Column("_10", DbType.Decimal),
                new Column("_11", DbType.Decimal),
                new Column("_12", DbType.Decimal),
                new Column("_13", DbType.Decimal)
                );

Original issue reported on code.google.com by [email protected] on 19 Mar 2010 at 12:50

Создание индексов

Добрый день.

Подскажите можно ли создавать индексы 
через методы?

Если при создании поля указывать 
ColumnProperty.Indexed, то при миграции в
ORACLE 10g вылетает ошибка.
Ошибка ясна, индексы в oracle так не создаются 
index("имя_поля").

Отдельно метода для создания индекса я не 
нашел.
К тому же мне надо создать составной индекс.

Или придется их создавать через Database.For<>?

Original issue reported on code.google.com by [email protected] on 9 Mar 2010 at 8:05

Сделать вывод справки в консоли при отсутствии параметров

What steps will reproduce the problem?
1. Запустить консоль без пераметров;

What is the expected output? What do you see instead?
Вывод справочной информации.

Please use labels and text to provide additional information.
Необработанное исключение: 
System.IndexOutOfRangeException: Индекс
находился вне границ массива.

Original issue reported on code.google.com by [email protected] on 19 Nov 2009 at 4:56

Улучшение SchemaDumper'а для Oracle

Попробовал использовать дамп схемы для 
создания первоначальной миграции по
существующей БД в Oracle. Оказалось, что 
SchemaDumper дампит только
таблицы, столбцы и их типы. Дополнил 
функциональность дампа:
1) Более корректные типы столбцов
2) Первичные ключи
3) Индексы
4) Внешние ключи

Прикладываю патч, надеюсь, что изменения 
попадут в следующий релиз.

Original issue reported on code.google.com by [email protected] on 28 Apr 2010 at 10:03

Attachments:

Устареврый пример в How to run?

В примере работы с API в вики неправильная 
строка для параметра providerTypeName 
("ECM7.Migrator.Providers.SqlServer.SqlServerDialect, 
ECM7.Migrator.Providers.SqlServer"), наверно должно быть 
"ECM7.Migrator.Providers.SqlServer.SqlServerCeTransformationProvider, 
ECM7.Migrator.Providers.SqlServerCeTransformationProvider". Долго 
мучился с этим пока не посмотрел исходники.

Original issue reported on code.google.com by [email protected] on 22 Aug 2013 at 10:02

console migrator

Добрый день.

Дмитрий,

выдержка из wiki:
"использовать консольное приложение 
ECM7.Migrator.Console (это самый
простой способ);"

примера использования консольного 
мигратора так и не нашел (в wiki так же
не описано),
внутренний хелп консольного приложения 
настолько скуден,
что из него не понятно как же все таки им 
пользоваться.

поправьте пожалуйста, иначе придется 
отказаться от вашего продукта в виду
того что отсутствует нормальное описание.

спасибо.

Original issue reported on code.google.com by [email protected] on 25 Nov 2009 at 5:15

Консультационные вопросы

Добрый день!

Сейчас анализируем ecm7migrator для возможности 
внедрения в наш проект. 
Ознакомился с описанием проекта на 
code.google.com, прочитал Вашу статью 
на хабре и остались открытыми следующие 
вопросы:
1) - Номер миграции задается как long-тип. То 
есть это целочисленное 
число. Сталкивались ли Вы в своей практике 
использования мигратора с 
бранчевыми версиями и мэйнстримами, а 
именно:
1.1) - Нумерация миграций для бранча и для 
мэйнстрима (я вижу сейчас 
только один выход - давать для бранча 
определенный диапазон изменений. Как 
сами понимаете - это не очень хорошее 
решение - бранч может оказаться 
достаточно большим...);
1.2) - Миграция бранча на мэйнстрим (в бранче 
есть незапущенные миграции, 
но номера миграций в мэйнстриме имеют 
более высокий порядковый номер. 
Соответственно исходя из логики мигратора 
- они не запустятся...). Я не 
вижу способо как это сделать мигратором;
1.3) - Правильно ли я понимаю, что задать 
несолько DLL-которые содержат 
миграции возможно только через API 
мигратора? MsBuild-подход и Nant-подход 
такой возможности не имеют?
2) - Так и не нашел однозначного ответа по 
использованию мигратора при 
создании БД с нуля. Что здесь конкретно 
интересует:
2.1) - Правлиьно ли я понимаю, что пока 
мигратором нельзя создать БД с 
нуля? Если так - то это говорит о том что в 
проекте все равно должен 
оставляться функционал по созданию БД из 
скрипта (с нуля) и уже только 
потом на сцену выходит мигратор. Все верно?; 
2.2) - На хабре Вы писали о том, что 
используете Down-методы миграций 
открата изменений для Unit-тестов. Не могли 
бы немного более подробно 
рассказать об этом;

Заранее спасибо за консультацию!

Original issue reported on code.google.com by [email protected] on 27 Jan 2010 at 12:54

выполнение скриптов из ресурсов в текущей сборке

нужно добавить перегруженную версию 
метода ExecuteFromResource, которая принимает 
только имя ресурса и пытается загрузить 
его из той же сборки, в которой находится 
выполняемая миграция

Original issue reported on code.google.com by [email protected] on 8 Nov 2011 at 8:46

индексы в Oracle

ошибка формирования индексов из 
нескольких колонок при создании таблицы в
Oracle;


Original issue reported on code.google.com by [email protected] on 12 Mar 2010 at 10:33

Ошибка при миграции схемы под Oracle 10g

Приветствую!

Очень понравилась идея и реализация 
инструмента, давно надо было уже)

Но есть одна критическая проблема. При 
попытки миграции на последнюю версию
провайдер кидает следующее исключение:

SELECT COUNT(table_name) FROM user_tables WHERE lower(table_name) =
'schemainfo'

System.InvalidCastException: Заданное приведение 
является недопустимым.
в Oracle.DataAccess.Client.OracleDataReader.GetInt64(Int32 i)
в ECM7.Migrator.Providers.TransformationProvider.get_AppliedMigrations()
в ECM7.Migrator.BaseMigrate..ctor(List`1 availableMigrations,
ITransformationProvider provider, ILogger logger)
в ECM7.Migrator.MigrateAnywhere..ctor(List`1 availableMigrations,
ITransformationProvider provider, ILogger logger)
в ECM7.Migrator.Migrator.MigrateTo(Int64 version)
в ECM7.Migrator.Migrator.MigrateToLastVersion()

Используется Oracle 10g XE.

Original issue reported on code.google.com by [email protected] on 17 Nov 2009 at 8:03

миграции

Привет.

Дмитрий,
поясните в примерах и документации как 
необходимо накатывать Миграции.

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

Original issue reported on code.google.com by [email protected] on 18 Nov 2009 at 12:05

В NuGet нет ECM7.Migrator и Providers

Почему в NuGet доступен только сам фреймворк, 
но нет ECM7.Migrator (для работы через API) и 
провайдеров БД?

Original issue reported on code.google.com by [email protected] on 22 Aug 2013 at 10:08

does not support columns like [user_name][nvarchar](max)

Доброго времени суток.
Очень интересный и полезный продукт у вас. 
Только вот проблему одну нашёл, она не 
слишком серьёзная, но всё же...

MsSql 2008
создаю следующую таблицу вашей тулзой:

Database.AddTable("Users",
  new Column("id", DbType.Int32),
  new Column("user_name", new ColumnType(DbType.String, -1))
);

При попытки мигрировать таким кодом 
генерируется sql:
CREATE TABLE [Versions] ([id] INT NOT NULL PRIMARY KEY,[number] 
NVARCHAR(-1),[plugin_id] INT)

а хотелось бы такой:

create table [dbo].Users {
 [id] [int], 
 [user_name][nvarchar](max)
}

Или может есть способ получить волшебный 
(max) в размере типа? я не нашёл.
Если нет, предлагаю решить эту проблему 
следующим путём: 
Если типом dbType является Varchar, Nvarchar или VarBinary 
и задан size -1 то запрос строится как [varchar](max), 
[nvarchar](max) или [nvarbinary](max) соответственно.
http://msdn.microsoft.com/ru-ru/library/ms127243.aspx

Код набран руками. Могут быть ошибки.

Original issue reported on code.google.com by [email protected] on 21 Jul 2013 at 7:10

feedback contacts

привет.

пишет unknown-пользователь Хабрахабр.

- Хочу сказать спасибо за данный проект (он 
действительно актуален и будет
полезен), т.к. его собрат уже видимо не 
актуален и следовательно не
поддерживается;
- Зачем хочу спросить, почему публикуетесь 
на Google.Code а не скажем на
Codeplex?
- откуда появилось такое странное название 
проекту?
- ну и хотелось бы увидеть хоть какие-то 
координаты для feedback-а кроме
этой формы;
- выложите побольше примеров использования 
+ документацию;

определенно буду пользоваться!

p.s. люди добрые дайте invate на хабрахабр (bykinag 
at gmail point com) :)

спасибо.

Original issue reported on code.google.com by [email protected] on 16 Nov 2009 at 2:52

Не работает в PartialTrust

1. Создать миграции в сборке помеченной 
атрибутом
[assembly: AllowPartiallyTrustedCallers]
2. Попытать мигрировать БД

*Current:*
Inheritance security rules violated by type: 
'ECM7.Migrator.Providers.Validation.ProviderValidationAttribute'. Derived types 
must either match the security accessibility of the base type or be less 
accessible.

*Expected:*
Должно работать с PartialTrust сборками.

Данная возможность важна для 
использования на сайтах, которые как 
правило, хостяться на shared hosting c Medium Trust.

Original issue reported on code.google.com by [email protected] on 4 May 2012 at 8:22

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.