Hydra + MS SQL server
Atom
07.03.2012


Приветствую господа алготрейдеры!

Насколько я понял гидра теперь работает только с SQLite?
Попробовал ей подставить в конфиге параметры для MS SQL,
но фокус не удался. В коде жестко вшита проверка каталога
для скулайта и прочее...
Хочу для себя переделать сохранение в MS SQL, мне с ним проще
разобраться.

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

Теги:


Спасибо:


Alexander

Фотография
Дата: 07.03.2012
Ответить


а чем ms sql проще sqlite?
Спасибо:

Johny Cash

Фотография
Дата: 07.03.2012
Ответить


Alexander Mukhanchikov Перейти
а чем ms sql проще sqlite?

С sqlite я не сталкивался, а ms sql мне известен как инструмент (работаю с ним по основной профессии).
Поэтому и возникла мысль использовать его.
Как говорится ничего личного ))
Спасибо:

Mikhail Sukhov

Фотография
Дата: 07.03.2012
Ответить


Johny Cash Перейти
Alexander Mukhanchikov Перейти
а чем ms sql проще sqlite?

С sqlite я не сталкивался, а ms sql мне известен как инструмент (работаю с ним по основной профессии).
Поэтому и возникла мысль использовать его.
Как говорится ничего личного ))


Должна уметь. 2 месяца назад Гидра только с MSSQL и работала.
Спасибо:

ra81

Фотография
Дата: 20.03.2012
Ответить


Mikhail Sukhov Перейти
Johny Cash Перейти
Alexander Mukhanchikov Перейти
а чем ms sql проще sqlite?

С sqlite я не сталкивался, а ms sql мне известен как инструмент (работаю с ним по основной профессии).
Поэтому и возникла мысль использовать его.
Как говорится ничего личного ))


Должна уметь. 2 месяца назад Гидра только с MSSQL и работала.


Не может она уметь. Та же беда у меня.

Код
if (database != null)
{
    var conStr = new DbConnectionStringBuilder { ConnectionString = database.ConnectionString };
    var file = (string)conStr["Data Source"];   // <---- собсна тут баг и есть. 
    file = file.Replace("%Documents%", Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments));

    file.CreateDirIfNotExists();

    if (!File.Exists(file))
        File.WriteAllBytes(file, Properties.Resources.StockSharp);

    conStr["Data Source"] = file;
    database.ConnectionString = conStr.ToString();
}
Спасибо:

pyhta4og

Фотография
Дата: 20.03.2012
Ответить


ra81 Перейти
Mikhail Sukhov Перейти
Johny Cash Перейти
Alexander Mukhanchikov Перейти
а чем ms sql проще sqlite?

С sqlite я не сталкивался, а ms sql мне известен как инструмент (работаю с ним по основной профессии).
Поэтому и возникла мысль использовать его.
Как говорится ничего личного ))


Должна уметь. 2 месяца назад Гидра только с MSSQL и работала.


Не может она уметь. Та же беда у меня.

Код
if (database != null)
{
    var conStr = new DbConnectionStringBuilder { ConnectionString = database.ConnectionString };
    var file = (string)conStr["Data Source"];   // <---- собсна тут баг и есть. 
    file = file.Replace("%Documents%", Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments));

    file.CreateDirIfNotExists();

    if (!File.Exists(file))
        File.WriteAllBytes(file, Properties.Resources.StockSharp);

    conStr["Data Source"] = file;
    database.ConnectionString = conStr.ToString();
}


в последней версии дев-ветки уже

if (database != null && database.Provider!=null && database.Provider is Ecng.Data.Providers.SQLiteDatabaseProvider)


обновитесь.
Спасибо:

Johny Cash

Фотография
Дата: 20.03.2012
Ответить


ra81 Перейти
Mikhail Sukhov Перейти
Johny Cash Перейти
Alexander Mukhanchikov Перейти
а чем ms sql проще sqlite?

С sqlite я не сталкивался, а ms sql мне известен как инструмент (работаю с ним по основной профессии).
Поэтому и возникла мысль использовать его.
Как говорится ничего личного ))


Должна уметь. 2 месяца назад Гидра только с MSSQL и работала.


Не может она уметь. Та же беда у меня.
...


Попробуйте внести следующие изменения в файл Hydra.exe.config
1. Изменить в файле параметр connectionString (в Гидре база по умолчанию SQLite надо заменить на SQL Server )
<param name="connectionString">
<value value="SqlServerConStr" typeConverter="Ecng.Configuration.ConnectionSettingsTypeConverter, Ecng.Configuration"/>
</param>

2. <!-- Для других баз данных провайдер необходимо поменять -->
<property name="Provider">
<dependency type="Ecng.Data.SqlServerDatabaseProvider, Ecng.Data" />
</property>
Спасибо:

Макс

Фотография
Дата: 24.04.2012
Ответить


Не работает 4.1 с MSSQL

Поставил MSSQL, создал скриптом базу, перезапустил.
Поменял в Hydra.exe.config



Код

						<constructor>
							<param name="name" value="Hydra Database"/>
							<param name="connectionString">
								<!-- По умолчанию используется SQLite 
								<value value="SQLiteConStr" typeConverter="Ecng.Configuration.ConnectionSettingsTypeConverter, Ecng.Configuration"/>
								-->
								<value value="SqlServerConStr" typeConverter="Ecng.Configuration.ConnectionSettingsTypeConverter, Ecng.Configuration"/>
							</param>
						</constructor>


Ветки dev, trunk, 4.023

Помогите плиз, кто решил этот вопрос.
Спасибо:

ra81

Фотография
Дата: 24.04.2012
Ответить


Макс Перейти
Не работает 4.1 с MSSQL

Поставил MSSQL, создал скриптом базу, перезапустил.
Поменял в Hydra.exe.config



Код

						<constructor>
							<param name="name" value="Hydra Database"/>
							<param name="connectionString">
								<!-- По умолчанию используется SQLite 
								<value value="SQLiteConStr" typeConverter="Ecng.Configuration.ConnectionSettingsTypeConverter, Ecng.Configuration"/>
								-->
								<value value="SqlServerConStr" typeConverter="Ecng.Configuration.ConnectionSettingsTypeConverter, Ecng.Configuration"/>
							</param>
						</constructor>


Ветки dev, trunk, 4.023

Помогите плиз, кто решил этот вопрос.


Там раньше вообще в коде гидры было закодировано тока SQLite использовать. В коде главного окошка. Где-то тут даже приводился код. Я лично забил, все равно сами данные по факту падают не в базу а в файлы. В базу падает только капля информации. Переносить базу на SQLite куда проще вместе с тиками чем если бы у вас была мс скульная база.
Спасибо: Макс


Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy