Ejemplo n.º 1
0
        public void ExecuteTest()
        {
            using (FileLogger l = new FileLogger("MdbContextTest", new FileLogSettings()
            {
                DateFolderMask = "yyyy-MM-dd"
            }))
            {
                MdbContextOptions.GetOptions().CommandTimeout = 120;
                using (var ctx = new MdbContext(_cn))
                {
                    l.Debug("Test 1 Start ");
                    int    i   = 0;
                    string sql = @"Create Table TestTable(
					ID		uniqueidentifier	not null primary key,
					Name	varchar(128)	not null,
					DateOper	datetime	not null,
					Notes	varchar(256)	null,
					Handle	int				not null)"                                    ;
                    i = ctx.Execute(sql);
                    l.Debug($"Test 1 Finish rows result {i}");

                    l.Debug("Test 2 Start ");
                    sql = @"Insert Into TestTable (ID, Name, DateOper, Handle)
					Values(@ID, @Name, @DateOper, @Handle)"                    ;

                    i = 0;
                    for (; i < 1000; i++)
                    {
                        ctx.Execute(sql,
                                    new MdbParameter("@ID", Guid.NewGuid()),
                                    new MdbParameter("@Name", "Тестовая строка № " + i.ToString()),
                                    new MdbParameter("@DateOper", vbo.Date().AddDays(i - 1000)),
                                    new MdbParameter("@Handle", i)
                        {
                            NullIfEmpty = false
                        });;
                    }
                    l.Debug($"Test 2 Finish rows result {i}");
                    l.Debug("Test 3 Start ");
                    i = 0;
                    using (var dr = ctx.GetReader("Select * From TestTable Order By Handle"))
                    {
                        for (; dr.Read(); i++)
                        {
                            l.Debug(dr.GetRowJSON());
                        }
                    }
                    l.Debug($"Test 3 Finish rows result {i}");
                    l.Debug("Test 4 Start ");
                    sql = "Drop Table TestTable";
                    i   = ctx.Execute(sql);
                    l.Debug($"Test 4 Finish rows result {i}");
                }
            }
        }
Ejemplo n.º 2
0
        private void SpeedGetHashCodeTest()
        {
            using (MdbContext mdb = new MdbContext(_ci))
            {
                //string s1 = mdb.Execute<string>("SysCat.Get_TableSchema_xml",
                //	new MdbParameter("@table_name", "dbo.OrderDetails"));
                //_logger.Debug(s1);
                //_logger.Debug(JMXSchema.ParseXml(s1).ToString());
                //s1 = mdb.Execute<string>("SysCat.Get_TableSchema",
                //	new MdbParameter("@table_name", "dbo.Orders"));
                //_logger.Debug(s1);

                //_logger.Debug("Start speed test for SysCat.Get_TableSchema_xml");
                //for (int i = 0; i < 100; i++)
                //{
                //	s1 = mdb.Execute<string>("SysCat.Get_TableSchema_xml",
                //		new MdbParameter("@table_name", "dbo.OrderDetails"));
                //	var schema = JMXSchema.ParseXml(s1);
                //}
                //_logger.Debug("End speed test for SysCat.Get_TableSchema_xml");
                _logger.LogDebug("Start speed test for SysCat.Get_TableSchema");
                for (int i = 0; i < 100; i++)
                {
                    var s1 = mdb.Execute <string>("SysCat.Get_TableSchema",
                                                  new MdbParameter("@table_name", "dbo.OrderDetails"));
                    var schema = JMXSchema.Parse(s1);
                }
                _logger.LogDebug("End speed test for SysCat.Get_TableSchema");
            }
        }
Ejemplo n.º 3
0
        static void dropTestTable(MdbContext ctx, FileLogger l)
        {
            l.Debug("Drop Test Table Start");
            int    i   = 0;
            string sql = @"Drop Table TestTable";

            i = ctx.Execute(sql);
            l.Debug($"Drop Test Table Finish rows result {i}");
        }
Ejemplo n.º 4
0
 private static JObject GetSchema(string dbObjectName)
 {
     using (MdbContext mdb = new MdbContext(connection_string))
     {
         string s = mdb.Execute <string>(@"[HQ\SVOSTRIKOV].Get_TableSchema",
                                         new MdbParameter("@table_name", dbObjectName));
         return(JObject.Parse(s));
     }
 }
Ejemplo n.º 5
0
 public SysCatManager(MdbContext context)
 {
     context.NullTest(nameof(context));
     _mdb = context;
     _log = _mdb.Logger;
     if (_defaultDbSchema.IsEmpty())
     {
         _defaultDbSchema = _mdb.Execute <string>(SQLCat.GetCatalog(_mdb.ProviderName)["GetDefaultSchema"]);
     }
 }
Ejemplo n.º 6
0
        static void createTestTable(MdbContext ctx, FileLogger l)
        {
            l.Debug("Create Test Table Start");
            int    i   = 0;
            string sql = @"Create Table TestTable(
					ID		uniqueidentifier	not null primary key,
					Name	varchar(128)	not null,
					DateOper	datetime	not null,
					Notes	varchar(256)	null,
					Handle	int				not null)"                                    ;

            ctx.BeginTransaction();
            i = ctx.Execute(sql);
            ctx.Commit();
        }
Ejemplo n.º 7
0
        public void speedGetHashCodeTest()
        {
            using (FileLogger _logger = new FileLogger("ORMDBTest", new FileLogSettings()
            {
                DateFolderMask = "yyyy-MM-dd"
            }))
            {
                using (MdbContext mdb = new MdbContext(_cn))
                {
                    string s1 = mdb.Execute <string>("SysCat.Get_TableSchema_xml",
                                                     new MdbParameter("@table_name", "dbo.OrderDetails"));
                    _logger.Debug(s1);
                    _logger.Debug(JMXSchema.ParseXml(s1).ToString());
                    s1 = mdb.Execute <string>("SysCat.Get_TableSchema",
                                              new MdbParameter("@table_name", "dbo.Orders"));
                    _logger.Debug(s1);

                    _logger.Debug("Start speed test for SysCat.Get_TableSchema_xml");
                    for (int i = 0; i < 100; i++)
                    {
                        s1 = mdb.Execute <string>("SysCat.Get_TableSchema_xml",
                                                  new MdbParameter("@table_name", "dbo.OrderDetails"));
                        var schema = JMXSchema.ParseXml(s1);
                    }
                    _logger.Debug("End speed test for SysCat.Get_TableSchema_xml");
                    _logger.Debug("Start speed test for SysCat.Get_TableSchema");
                    for (int i = 0; i < 100; i++)
                    {
                        s1 = mdb.Execute <string>("SysCat.Get_TableSchema",
                                                  new MdbParameter("@table_name", "dbo.OrderDetails"));
                        var schema = JMXSchema.Parse(s1);
                    }
                    _logger.Debug("End speed test for SysCat.Get_TableSchema");
                }
            }
        }
Ejemplo n.º 8
0
        static void insertTestTable(MdbContext ctx, FileLogger l)
        {
            l.Debug("Insert Test Table Start");
            string sql = @"Insert Into TestTable (ID, Name, DateOper, Handle)
					Values(@ID, @Name, @DateOper, @Handle)"                    ;

            ctx.BeginTransaction();
            int i = 0;

            for (; i < 100; i++)
            {
                ctx.Execute(sql,
                            new MdbParameter("@ID", Guid.NewGuid()),
                            new MdbParameter("@Name", "Тестовая строка № " + i.ToString()),
                            new MdbParameter("@DateOper", vbo.Date().AddDays(i - 1000)),
                            new MdbParameter("@Handle", i)
                {
                    NullIfEmpty = false
                });;
            }
            ctx.Commit();
            l.Debug($"Insert Test Table Finish rows result {i}");
        }