diff --git a/oscript-sql/DBConnector.cs b/oscript-sql/DBConnector.cs index 093b8a5..a45a7d1 100644 --- a/oscript-sql/DBConnector.cs +++ b/oscript-sql/DBConnector.cs @@ -239,17 +239,8 @@ public bool Open() } _connection = new SQLiteConnection(string.Format("Data Source={0};", filePath)); if (System.IO.File.Exists(DbName)) - { - try - { - _connection.Open(); - return true; - } - catch (Exception e) - { - Console.WriteLine(e.Message); - return false; - } + { + return OpenConnection(); } else @@ -292,7 +283,7 @@ public bool Open() _connection.ConnectionString = _connectionString; } - _connection.Open(); + return OpenConnection(); } else if (DbType == (new EnumDBType()).MySQL) { @@ -306,7 +297,7 @@ public bool Open() _connectionString += (_port != 0 ? "port=" + _port.ToString() + ";" : ""); } _connection = new MySqlConnection(_connectionString); - _connection.Open(); + return OpenConnection(); } else if (DbType == (new EnumDBType()).PostgreSQL) { @@ -320,11 +311,25 @@ public bool Open() _connectionString += (_port != 0 ? "port=" + _port.ToString() + ";" : ""); } _connection = new NpgsqlConnection(_connectionString); - _connection.Open(); + return OpenConnection(); } return false; - } - + } + + private bool OpenConnection() + { + try + { + _connection.Open(); + return true; + } + catch (Exception e) + { + Console.WriteLine(e.Message); + return false; + } + } + /// <summary> /// Закрыть соединение с БД /// </summary> diff --git a/oscript-sql/oscript-sql.csproj b/oscript-sql/oscript-sql.csproj index 968e385..a474a12 100644 --- a/oscript-sql/oscript-sql.csproj +++ b/oscript-sql/oscript-sql.csproj @@ -68,21 +68,18 @@ <HintPath>..\packages\MySql.Data.6.9.9\lib\net45\MySql.Data.dll</HintPath> <Private>True</Private> </Reference> - <Reference Include="Newtonsoft.Json, Version=9.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL"> - <HintPath>..\packages\Newtonsoft.Json.9.0.1\lib\net45\Newtonsoft.Json.dll</HintPath> - <Private>True</Private> + <Reference Include="Newtonsoft.Json, Version=10.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL"> + <HintPath>..\packages\Newtonsoft.Json.10.0.3\lib\net45\Newtonsoft.Json.dll</HintPath> </Reference> <Reference Include="Npgsql, Version=3.1.9.0, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7, processorArchitecture=MSIL"> <HintPath>..\packages\Npgsql.3.1.9\lib\net45\Npgsql.dll</HintPath> <Private>True</Private> </Reference> - <Reference Include="ScriptEngine, Version=1.0.15.260, Culture=neutral, processorArchitecture=MSIL"> - <HintPath>..\packages\OneScript.1.0.15\lib\net40\ScriptEngine.dll</HintPath> - <Private>True</Private> + <Reference Include="ScriptEngine, Version=1.0.17.95, Culture=neutral, processorArchitecture=MSIL"> + <HintPath>..\packages\OneScript.1.0.17\lib\net40\ScriptEngine.dll</HintPath> </Reference> - <Reference Include="ScriptEngine.HostedScript, Version=1.0.15.260, Culture=neutral, processorArchitecture=MSIL"> - <HintPath>..\packages\OneScript.StandardLibrary.1.0.15\lib\net40\ScriptEngine.HostedScript.dll</HintPath> - <Private>True</Private> + <Reference Include="ScriptEngine.HostedScript, Version=1.0.17.95, Culture=neutral, processorArchitecture=MSIL"> + <HintPath>..\packages\OneScript.StandardLibrary.1.0.17\lib\net40\ScriptEngine.HostedScript.dll</HintPath> </Reference> <Reference Include="System" /> <Reference Include="System.ComponentModel.DataAnnotations" /> @@ -110,7 +107,6 @@ </ItemGroup> <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" /> <ItemGroup> - <None Include="app.config" /> <None Include="packages.config" /> </ItemGroup> <Import Project="..\packages\System.Data.SQLite.Core.1.0.104.0\build\net45\System.Data.SQLite.Core.targets" Condition="Exists('..\packages\System.Data.SQLite.Core.1.0.104.0\build\net45\System.Data.SQLite.Core.targets')" /> diff --git a/oscript-sql/packages.config b/oscript-sql/packages.config index c35f6b9..24d414d 100644 --- a/oscript-sql/packages.config +++ b/oscript-sql/packages.config @@ -3,10 +3,10 @@ <package id="DotNetZip" version="1.10.1" targetFramework="net45" /> <package id="EntityFramework" version="6.0.0" targetFramework="net45" /> <package id="MySql.Data" version="6.9.9" targetFramework="net45" /> - <package id="Newtonsoft.Json" version="9.0.1" targetFramework="net45" /> + <package id="Newtonsoft.Json" version="10.0.3" targetFramework="net45" /> <package id="Npgsql" version="3.1.9" targetFramework="net45" /> - <package id="OneScript" version="1.0.15" targetFramework="net45" /> - <package id="OneScript.StandardLibrary" version="1.0.15" targetFramework="net45" /> + <package id="OneScript" version="1.0.17" targetFramework="net45" /> + <package id="OneScript.StandardLibrary" version="1.0.17" targetFramework="net45" /> <package id="System.Data.SQLite" version="1.0.104.0" targetFramework="net45" /> <package id="System.Data.SQLite.Core" version="1.0.104.0" targetFramework="net45" /> <package id="System.Data.SQLite.EF6" version="1.0.104.0" targetFramework="net45" /> diff --git a/tests/test-ms-sql-server.os b/tests/test-ms-sql-server.os index f3a326e..f326637 100644 --- a/tests/test-ms-sql-server.os +++ b/tests/test-ms-sql-server.os @@ -31,6 +31,7 @@ юТест = Тестирование; СписокТестов = Новый Массив; + СписокТестов.Добавить("Тест_Должен_ПроверитьСоединение" + СуфикМетодов); СписокТестов.Добавить("Тест_Должен_СоздатьТаблицу" + СуфикМетодов); СписокТестов.Добавить("Тест_Должен_ДобавитьСтроки" + СуфикМетодов); СписокТестов.Добавить("Тест_Должен_ДолженИзменитьСтроки" + СуфикМетодов); @@ -41,6 +42,21 @@ КонецФункции +Процедура Тест_Должен_ПроверитьСоединение() Экспорт + СтрокаСоединения = ПолучитьТекстИзФайла("fixtures\ms-sql-server-con-str.txt"); + + Соединение = Новый Соединение(); + Соединение.ТипСУБД = Соединение.ТипыСУБД.MSSQLServer; + Соединение.СтрокаСоединения = СтрокаСоединения; + + Результат = Соединение.Открыть(); + + Ожидаем.Что(Результат).Равно(Результат); + + Соединение.Закрыть(); + +КонецПроцедуры + Процедура Тест_Должен_СоздатьТаблицу() Экспорт СтрокаСоединения = ПолучитьТекстИзФайла("fixtures\ms-sql-server-con-str.txt");