Exemple #1
0
        static void AnonymousExportData()
        {
            var filename = Guid.NewGuid().ToString() + ".xlsx";

            System.IO.File.WriteAllBytes(filename, Properties.Resources.Empty);
            Random r     = new Random();
            var    items = Enumerable.Range(0, 1000).Select(i => new
            {
                Id       = i,
                Name     = "Product " + i.ToString(),
                Category = r.Next(1, 10),
                IsValid  = true
            }).ToArray();

            using (var context = new ExcelContext(filename))
            {
                var item    = items[0];
                var operate = context.Database.Manager.CreateTable(item.GetType(),
                                                                   DbName.NameOnly("Sheet1$"));
                context.Executor.Execute(operate);

                context.Set(item, "[Sheet1$]").AddRange(items);
                context.Executor.Execute();
            }
        }
        private void databaseBox_TextChanged(object sender, EventArgs e)
        {
            if (!String.IsNullOrEmpty(databaseBox.Text))
            {
                try
                {
                    DbName[] dbTemp = new DbName[dbTrees.Count];
                    dbTrees.CopyTo(dbTemp);
                    foreach (var item in dbTemp)
                    {
                        if (item.DName.ToLower().Contains(databaseBox.Text.ToLower()))
                        {
                            item.IsSelected = true;
                        }
                        else
                        {
                            item.IsSelected = false;
                        }
                    }

                    UpdateMenuTree(dbTemp.ToList());
                }
                catch (Exception ex)
                {
                    logger.Log(LogLevel.Error, ex.Message);
                }
            }
            else
            {
                InitMenuTree();
            }
        }
Exemple #3
0
    public void Returns_Valid_Insert_Query()
    {
        // Arrange
        var schema = Rnd.Str;
        var name   = Rnd.Str;
        var table  = new DbName(schema, name);

        var c0Name     = Rnd.Str;
        var c0Alias    = Rnd.Str;
        var c0Property = Substitute.ForPartsOf <PropertyInfo>();

        c0Property.Name.Returns(c0Alias);
        c0Property.Configure().CustomAttributes.Returns(Array.Empty <CustomAttributeData>());
        var c0 = new Column(table, c0Name, c0Property);

        var c1Name     = Rnd.Str;
        var c1Alias    = Rnd.Str;
        var c1Property = Substitute.ForPartsOf <PropertyInfo>();

        c1Property.Name.Returns(c1Alias);
        c1Property.Configure().CustomAttributes.Returns(Array.Empty <CustomAttributeData>());
        var c1 = new Column(table, c1Name, c1Property);

        var list   = new ColumnList(new[] { c0, c1 });
        var client = new MySqlDbClient();

        var expected = $"INSERT INTO `{schema}.{name}` (`{c0Name}`, `{c1Name}`) VALUES (@{c0Alias}, @{c1Alias}); " +
                       "SELECT LAST_INSERT_ID();";

        // Act
        var result = client.GetCreateQueryTest(table, list);

        // Assert
        Assert.Equal(expected, result);
    }
        private void SaveDatabaseInternal(string patchDir, string modelVersion, string msg,
                                          int startNumber, string mongoSourceDir)
        {
            var project = DbName.StartsWith("sf_") ? DbName.Substring(3) : DbName;
            var file    = Path.Combine(mongoSourceDir, $"{DbName}.json");
            var content = TestHelper.Run(MongoExport,
                                         $"--host {Settings.MongoHostName}:{Settings.MongoPort} " +
                                         $"--db scriptureforge --collection projects --query '{{ \"projectCode\" : \"{project}\" }}'",
                                         mongoSourceDir);

            WriteJson(file, content);
            TestHelper.Run(Git, $"add {file}", mongoSourceDir);

            ExportCollection("activity", modelVersion);
            ExportCollection("lexicon", modelVersion);
            ExportCollection("lexiconComments", modelVersion);
            ExportCollection("optionlists", modelVersion);

            AddCollectionToGit("activity", modelVersion);
            AddCollectionToGit("lexicon", modelVersion);
            AddCollectionToGit("lexiconComments", modelVersion);
            AddCollectionToGit("optionlists", modelVersion);

            TestHelper.Run(Git, $"commit -a --allow-empty -m \"{msg}\"", mongoSourceDir);
            TestHelper.Run(Git,
                           $"format-patch -1 -o {patchDir} --start-number {startNumber} --ignore-all-space",
                           mongoSourceDir);
        }
Exemple #5
0
 public DataBase(DbName dbName, string tableName, string primaryKey, bool isAutoincrement)
 {
     this.database        = dbFactory.Create(dbName.ToString());
     this.tableName       = tableName;
     this.primaryKey      = primaryKey;
     this.isAutoincrement = isAutoincrement;
 }
Exemple #6
0
 public DataBase(DbName dbName, string tableName, string primaryKey, List <string> notContainField)
 {
     this.database        = dbFactory.Create(dbName.ToString());
     this.tableName       = tableName;
     this.primaryKey      = primaryKey;
     this.notContainField = notContainField;
 }
Exemple #7
0
    protected void Test00()
    {
        // Arrange
        var(builder, v) = Setup();

        var t0Name   = new DbName(Rnd.Str);
        var t0Column = Rnd.Str;
        var t0       = new TestTable0(t0Name, t0Column);

        var t1Name   = new DbName(Rnd.Str);
        var t1Column = Rnd.Str;
        var t1       = new TestTable1(t1Name, t1Column);

        // Act
        var result = builder.AddRightJoin(v.Parts, t0, t => t.Foo, t1, t => t.Bar);

        // Assert
        var some = result.AssertSome();

        Assert.NotSame(v.Parts, some);
        Assert.Collection(some.RightJoin,
                          x =>
        {
            Assert.Equal(t0Name, x.from.TblName);
            Assert.Equal(t0Column, x.from.ColName);

            Assert.Equal(t1Name, x.to.TblName);
            Assert.Equal(t1Column, x.to.ColName);
        }
                          );
    }
    public override int GetHashCode()
    {
        int x = DbName == null ? 0 : DbName.GetHashCode();
        int y = ObjectName == null ? 0 : ObjectName.GetHashCode();

        return((-1423 * x) ^ y);
    }
    public void Returns_Valid_Delete_Query_With_Version()
    {
        // Arrange
        var schema = Rnd.Str;
        var name   = Rnd.Str;
        var table  = new DbName(schema, name);

        var c0Name     = Rnd.Str;
        var c0Alias    = Rnd.Str;
        var c0Property = Substitute.ForPartsOf <PropertyInfo>();

        c0Property.Name.Returns(c0Alias);
        var c0 = new Column(table, c0Name, c0Property);

        var c1Name     = Rnd.Str;
        var c1Alias    = Rnd.Str;
        var c1Property = Substitute.ForPartsOf <PropertyInfo>();

        c1Property.Name.Returns(c1Alias);
        var c1 = new Column(table, c1Name, c1Property);

        var client = new SqlServerDbClient();

        var id = Rnd.Lng;

        var expected = $"DELETE FROM [{schema}].[{name}] WHERE [{c0Name}] = {id} AND [{c1Name}] = @{c1Alias}";

        // Act
        var result = client.GetDeleteQueryTest(table, c0, id, c1);

        // Assert
        Assert.Equal(expected, result);
    }
Exemple #10
0
        /// <summary> </summary>
        /// <param name="connectionHelper"></param>
        /// <param name="tableName"></param>
        /// <param name="inputQueueName"></param>
        /// <param name="rebusLoggerFactory"></param>
        /// <param name="asyncTaskFactory"></param>
        /// <param name="rebusTime"></param>
        public OracleTransport(OracleFactory connectionHelper, string tableName, string inputQueueName, IRebusLoggerFactory rebusLoggerFactory, IAsyncTaskFactory asyncTaskFactory, IRebusTime rebusTime)
        {
            if (rebusLoggerFactory == null)
            {
                throw new ArgumentNullException(nameof(rebusLoggerFactory));
            }
            if (asyncTaskFactory == null)
            {
                throw new ArgumentNullException(nameof(asyncTaskFactory));
            }
            if (tableName == null)
            {
                throw new ArgumentNullException(nameof(tableName));
            }

            _log       = rebusLoggerFactory.GetLogger <OracleTransport>();
            _rebusTime = rebusTime ?? throw new ArgumentNullException(nameof(rebusTime));
            _factory   = connectionHelper ?? throw new ArgumentNullException(nameof(connectionHelper));
            _table     = new DbName(tableName);
            _sendSql   = SendCommand.Sql(_table);

            // One-way clients don't have an input queue to receive from or cleanup
            if (inputQueueName != null)
            {
                Address     = inputQueueName;
                _receiveSql = BuildReceiveSql();
                _expiredSql = BuildExpiredSql();
                _expiredMessagesCleanupTask = asyncTaskFactory.Create("ExpiredMessagesCleanup", PerformExpiredMessagesCleanupCycle, intervalSeconds: 60);
            }
        }
    public void Returns_Valid_Delete_Query_Without_Version()
    {
        // Arrange
        var schema = Rnd.Str;
        var name   = Rnd.Str;
        var table  = new DbName(schema, name);

        var c0Name     = Rnd.Str;
        var c0Alias    = Rnd.Str;
        var c0Property = Substitute.ForPartsOf <PropertyInfo>();

        c0Property.Name.Returns(c0Alias);
        var c0 = new Column(table, c0Name, c0Property);

        var client = new PostgreSqlDbClient();

        var id = Rnd.Lng;

        var expected = $"DELETE FROM {schema}.{name} WHERE {c0Name} = {id};";

        // Act
        var result = client.GetDeleteQueryTest(table, c0, id);

        // Assert
        Assert.Equal(expected, result);
    }
Exemple #12
0
    public void With_Predicates_Returns_Valid_Select_Query()
    {
        // Arrange
        var schema = Rnd.Str;
        var name   = Rnd.Str;
        var table  = new DbName(schema, name);

        var c0Name  = Rnd.Str;
        var c0Alias = Rnd.Str;
        var c0      = new Column(table, c0Name, Helpers.CreateInfoFromAlias(c0Alias));

        var c1Name  = Rnd.Str;
        var c1Alias = Rnd.Str;
        var c1      = new Column(table, c1Name, Helpers.CreateInfoFromAlias(c1Alias));

        var list = new ColumnList(new[] { c0, c1 });

        var p0Column   = new Column(table, Rnd.Str, Helpers.CreateInfoFromAlias());
        var p0Operator = Compare.Like;
        var p0Value    = Rnd.Str;

        var p1Column   = new Column(table, Rnd.Str, Helpers.CreateInfoFromAlias());
        var p1Operator = Compare.MoreThanOrEqual;
        var p1Value    = Rnd.Int;

        var predicates = ImmutableList.Create(new (IColumn, Compare, object)[]
 public override int GetHashCode()
 {
     unchecked
     {
         return(((DbName != null ? DbName.GetHashCode() : 0) * 397) ^
                (Server != null ? Server.GetHashCode() : 0));
     }
 }
Exemple #14
0
 public void CompareToTest3()
 {
     Assert.IsTrue(DbName.Parse("dbo.TableName") != null);
     Assert.IsTrue(DbName.Parse("dbo.TableName") != new DbName("ABC"));
     Assert.IsTrue(DbName.Parse("dbo.TableName") != string.Empty);
     Assert.IsTrue(DbName.Parse("[dbo].TableName") == "[TableName]");
     Assert.IsTrue(DbName.Parse("[dbo].TableName1") != "[TableName]");
 }
Exemple #15
0
        public void TableNameTest5()
        {
            var tb = DbName.Parse(".Table");

            Assert.IsTrue(tb.Schema == "dbo");
            Assert.IsTrue(tb.Name == "Table");
            Assert.IsTrue(tb.FullName == "[dbo].[Table]");
            Assert.IsTrue(tb.ToString() == tb.FullName);
        }
Exemple #16
0
        public DbContextContainer(DbKind dbKind, DbName dbName)
        {
            var builder = new ContainerBuilder();

            builder.Register(o => BuildInstance(dbKind, dbName));
            _DataAccess = builder.Build().Resolve <DbContextEx>();
            _DataAccess.OpenConnection();
            _DataAccess._DbKind = dbKind;
        }
Exemple #17
0
        public void TableNameTest3()
        {
            var tb = DbName.Parse("[tb].[Table]");

            Assert.IsTrue(tb.Schema == "tb");
            Assert.IsTrue(tb.Name == "Table");
            Assert.IsTrue(tb.FullName == "[tb].[Table]");
            Assert.IsTrue(tb.ToString() == tb.FullName);
        }
 /// <summary>
 /// Constructs the subscription storage, storing subscriptions in the specified <paramref name="tableName"/>.
 /// If <paramref name="isCentralized"/> is true, subscribing/unsubscribing will be short-circuited by manipulating
 /// subscriptions directly, instead of requesting via messages
 /// </summary>
 public OracleSubscriptionStorage(OracleFactory connectionHelper, string tableName, bool isCentralized, IRebusLoggerFactory rebusLoggerFactory)
 {
     if (rebusLoggerFactory == null)
     {
         throw new ArgumentNullException(nameof(rebusLoggerFactory));
     }
     _connectionHelper = connectionHelper ?? throw new ArgumentNullException(nameof(connectionHelper));
     _table            = new DbName(tableName) ?? throw new ArgumentNullException(nameof(tableName));
     IsCentralized     = isCentralized;
     _log = rebusLoggerFactory.GetLogger <OracleSubscriptionStorage>();
 }
 /// <summary>
 /// Constructs the timeout manager
 /// </summary>
 public OracleTimeoutManager(OracleFactory connectionHelper, string tableName, IRebusLoggerFactory rebusLoggerFactory, IRebusTime rebusTime)
 {
     if (rebusLoggerFactory == null)
     {
         throw new ArgumentNullException(nameof(rebusLoggerFactory));
     }
     _connectionHelper = connectionHelper ?? throw new ArgumentNullException(nameof(connectionHelper));
     _table            = new DbName(tableName) ?? throw new ArgumentNullException(nameof(tableName));
     _log       = rebusLoggerFactory.GetLogger <OracleTimeoutManager>();
     _rebusTime = rebusTime ?? throw new ArgumentNullException(nameof(rebusTime));
 }
Exemple #20
0
        public void ImplicitTest2()
        {
            DbName tb = "tb.TableName";

            Assert.IsTrue(tb.Name == "TableName");
            Assert.IsTrue(tb.Schema == "tb");

            string tbName = tb;

            Assert.IsTrue(tbName == tb.FullName);
        }
        //创建名称。
        private static DbName CreateName(DbContext context, TableMetadata principal, TableMetadata foreign, ForeignPrincipalPair[] pairs)
        {
            var foreignName = $"FK_{foreign.Name}_{principal.Name}_{string.Join("_", pairs.Select(a => a.ForeignKey.Name).ToArray())}_{string.Join("_", pairs.Select(a => a.PrincipalKey.Name).ToArray())}";
            var maxlength   = context.Configuration.DatabaseFeature.MaxIdentifierLength;

            if (maxlength.HasValue && foreignName.Length > maxlength.Value)
            {
                foreignName = foreignName.Substring(0, maxlength.Value);
            }
            return(DbName.NameOnly(foreignName));
        }
Exemple #22
0
 /// <summary>
 /// Constructs the saga storage
 /// </summary>
 public OracleSqlSagaStorage(OracleFactory connectionHelper, string dataTableName,
                             string indexTableName, IRebusLoggerFactory rebusLoggerFactory)
 {
     if (rebusLoggerFactory == null)
     {
         throw new ArgumentNullException(nameof(rebusLoggerFactory));
     }
     _connectionHelper = connectionHelper ?? throw new ArgumentNullException(nameof(connectionHelper));
     _dataTable        = new DbName(dataTableName) ?? throw new ArgumentNullException(nameof(dataTableName));
     _indexTable       = new DbName(indexTableName) ?? throw new ArgumentNullException(nameof(indexTableName));
     _log = rebusLoggerFactory.GetLogger <OracleSqlSagaStorage>();
 }
Exemple #23
0
    public static (SqlServerDbClient client, Vars v) Get()
    {
        var schema    = Rnd.Str;
        var name      = Rnd.Str;
        var tableName = new DbName(schema, name);
        var table     = Substitute.For <ITable>();

        table.GetName().Returns(tableName);
        var client = new SqlServerDbClient();

        return(client, new(table, schema, name));
    }
Exemple #24
0
    public void Sets_Name()
    {
        // Arrange
        var name = Rnd.Str;

        // Act
        var result = new DbName(name);

        // Assert
        Assert.Null(result.Schema);
        Assert.Equal(name, result.Name);
    }
    public void Returns_Valid_Update_Query_With_Version()
    {
        // Arrange
        var schema = Rnd.Str;
        var name   = Rnd.Str;
        var table  = new DbName(schema, name);

        var c0Name         = Rnd.Str;
        var c0Alias        = Rnd.Str;
        var c0PropertyInfo = Substitute.For <PropertyInfo>();

        c0PropertyInfo.Name.Returns(c0Alias);
        var c0 = new Column(table, c0Name, c0PropertyInfo);

        var c1Name         = Rnd.Str;
        var c1Alias        = Rnd.Str;
        var c1PropertyInfo = Substitute.For <PropertyInfo>();

        c1PropertyInfo.Name.Returns(c1Alias);
        var c1 = new Column(table, c1Name, c1PropertyInfo);

        var c2Name     = Rnd.Str;
        var c2Alias    = Rnd.Str;
        var c2Property = Substitute.ForPartsOf <PropertyInfo>();

        c2Property.Name.Returns(c2Alias);
        var c2 = new Column(table, c2Name, c2Property);

        var c3Name     = Rnd.Str;
        var c3Alias    = Rnd.Str;
        var c3Property = Substitute.ForPartsOf <PropertyInfo>();

        c3Property.Name.Returns(c3Alias);
        var c3 = new Column(table, c3Name, c3Property);

        var list   = new ColumnList(new[] { c0, c1 });
        var client = new SqlServerDbClient();

        var id = Rnd.Lng;

        var expected = $"UPDATE [{schema}].[{name}] SET" +
                       $" [{c0Name}] = @{c0Alias}," +
                       $" [{c1Name}] = @{c1Alias}," +
                       $" [{c3Name}] = @{c3Alias} + 1" +
                       $" WHERE [{c2Name}] = {id}" +
                       $" AND [{c3Name}] = @{c3Alias}";

        // Act
        var result = client.GetUpdateQueryTest(table, list, c2, id, c3);

        // Assert
        Assert.Equal(expected, result);
    }
Exemple #26
0
    public void Sets_Schema_And_Name()
    {
        // Arrange
        var schema = Rnd.Str;
        var name   = Rnd.Str;

        // Act
        var result = new DbName(schema, name);

        // Assert
        Assert.Equal(schema, result.Schema);
        Assert.Equal(name, result.Name);
    }
Exemple #27
0
    public void Without_Schema_Returns_Escaped_Name()
    {
        // Arrange
        var name   = Rnd.Str;
        var table  = new DbName(name);
        var escape = string (string obj) => $"<{obj}>";

        // Act
        var result = table.GetFullName(escape);

        // Assert
        Assert.Equal(escape(name), result);
    }
 /// <summary>
 /// Serves as a hash function for a particular type.
 /// </summary>
 /// <returns>
 /// A hash code for the current <see cref="T:System.Object"/>.
 /// </returns>
 public override int GetHashCode()
 {
     unchecked
     {
         var hashCode = ServerName?.GetHashCode() ?? 0;
         hashCode = (hashCode * 397) ^ (int)Type;
         hashCode = (hashCode * 397) ^ (UserName?.GetHashCode() ?? 0);
         hashCode = (hashCode * 397) ^ (Password?.GetHashCode() ?? 0);
         hashCode = (hashCode * 397) ^ (int)AuthenticationType;
         hashCode = (hashCode * 397) ^ (DbName?.GetHashCode() ?? 0);
         return(hashCode);
     }
 }
Exemple #29
0
    public void With_Schema_Returns_Escaped_Schema_And_Name()
    {
        // Arrange
        var schema = Rnd.Str;
        var name   = Rnd.Str;
        var table  = new DbName(schema, name);
        var escape = string (string obj) => $"<{obj}>";

        // Act
        var result = table.GetFullName(escape);

        // Assert
        Assert.Equal($"{escape(schema)}{DbName.SchemaSeparator}{escape(name)}", result);
    }
Exemple #30
0
        public static void copyDatabase(DbName src_name, DbName dest_name, String src_sql, String dest_sql, String src_excel_path, String dest_excel_path)
        {
            IDbDataAdapter src_ada = null;//Adapter适配器自动开启和关闭连接
            DbCommandBuilder src_cb = null;

            IDbDataAdapter dest_ada = null;
            DbCommandBuilder dest_cb = null;
            if (src_name != DbName.Excel)
            {
                createDbConnection(src_name, DbType.Source, ref src_ada, ref src_cb, src_sql);
            }

            if (dest_name != DbName.Excel)
            {
                createDbConnection(dest_name, DbType.Destination, ref dest_ada, ref dest_cb, dest_sql);
            }

            if (src_name != DbName.Excel && dest_name != DbName.Excel)
            {
                DataSet dest_ds = new DataSet();
                dest_ada.Fill(dest_ds);

                DataSet src_ds = new DataSet();
                src_ada.Fill(src_ds);//数据填充到DataSet

                dest_ds.Tables[0].Load(src_ds.CreateDataReader(), LoadOption.Upsert);
                dest_ada.Update(dest_ds);
            }
            else
            {
                //Excel到数据库
                if (src_name == DbName.Excel && dest_name != DbName.Excel)
                {
                    DataSet src_ds = LoadDataFromExcel(src_excel_path);
                    DataSet dest_ds = new DataSet();
                    dest_ada.Fill(dest_ds);

                    dest_ds.Tables[0].Load(src_ds.CreateDataReader(), LoadOption.Upsert);
                    dest_ada.Update(dest_ds);
                }
                //数据库到Excel
                else if (src_name != DbName.Excel && dest_name == DbName.Excel)
                {
                    DataSet src_ds = new DataSet();
                    src_ada.Fill(src_ds);
                    SaveDataToExcel(src_ds, dest_excel_path);
                }
            }
        }
Exemple #31
0
        public override bool Equals(object obj)
        {
            if (obj == null || (obj as DbConnection) == null)
            {
                return(false);
            }
            DbConnection dbConn = obj as DbConnection;

            return(DbType == dbConn.DbType &&
                   ServerAddress.Equal(dbConn.ServerAddress) &&
                   DbName.Equal(dbConn.DbName) &&
                   Port.Equal(dbConn.Port) &&
                   UserName.Equal(dbConn.UserName) &&
                   Password.Equal(dbConn.Password));
        }
Exemple #32
0
 public static void configDataSet(DbName name, DbType type)
 {
     String key = getAppKey(name, type);
     if (name != DbName.WinCE)
     {
         Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
         MSDASC.DataLinks mydlg = new MSDASC.DataLinks();
         ADODB.Connection ADOcon = new ADODB.Connection();
         ADOcon.ConnectionString = config.AppSettings.Settings[key].Value;
         Dictionary<string, string> ht = splitConnectionString(ADOcon.ConnectionString);
         //Cast the generic object that PromptNew returns to an ADODB.Connection.
         //ADOcon = (ADODB.Connection)mydlg.PromptNew();
         Object obj = ADOcon;
         if (mydlg.PromptEdit(ref obj))
         {
             if (name == DbName.MySql)
                 config.AppSettings.Settings[key].Value = ADOcon.ConnectionString + ";Ip=" + ht["ip"];
             else
                 config.AppSettings.Settings[key].Value = ADOcon.ConnectionString;
             //调试的时候外部App.config文件不修改
             config.Save();
         }
     }
     else
     {
         Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
         String connectString = config.AppSettings.Settings[key].Value;
         Dictionary<string, string> ht = splitConnectionString(connectString);
         OpenFileDialog openFileDialog1 = new OpenFileDialog();
         openFileDialog1.FileName = "";
         openFileDialog1.Filter = "*.sdf | *.sdf";
         if (openFileDialog1.ShowDialog() == DialogResult.OK) {
             config.AppSettings.Settings[key].Value = "Persist Security Info = " + ht["persist security info"] + "; Password = '******'; Max Database Size = " + ht["max database size"] + "; Max Buffer Size = " + ht["max buffer size"] + ";Data Source='" + openFileDialog1.FileName + "'";
             config.Save();
         }
     }
 }
Exemple #33
0
 //要在C#中使用引用参数 ,必须在函数声明以及函数调用中都明确地使用关键字ref
 public static void createDbConnection(DbName dbName, DbType dbType, ref IDbDataAdapter ada, ref DbCommandBuilder cb, string sql)
 {
     String connStr = getConnStr(dbName, dbType);
     Dictionary<string, string> ht = splitConnectionString(connStr);
     if (dbName == DbName.Oracle)
     {
         string cnStr = "password="******"password"] + ";data source=" + ht["data source"] + ";user id=" + ht["user id"];
         ada = new OracleDataAdapter(sql, cnStr);//构造查询(select)适配器
         cb = new OracleCommandBuilder((OracleDataAdapter)ada);//该对象在adapter执行update的时候,自动生成insert,update,delete语句。
     }
     else if (dbName == DbName.MSSql)
     {
         string cnStr = "Server=" + ht["data source"] + ";DataBase=" + ht["initial catalog"] + ";Uid=" + ht["user id"] + ";pwd=" + ht["password"];
         ada = new SqlDataAdapter(sql, cnStr);
         cb = new SqlCommandBuilder((SqlDataAdapter)ada);
     }
     else if (dbName == DbName.MySql)
     {
         string cnStr = "Database=" + ht["initial catalog"] + ";Data Source=" + ht["ip"] + ";User Id=" + ht["user id"] + ";Password="******"password"];
         ada = new MySqlDataAdapter(sql, cnStr);
         cb = new MySqlCommandBuilder((MySqlDataAdapter)ada);
     }
     else if (dbName == DbName.WinCE)
     {
         ada = new SqlCeDataAdapter(sql, connStr);
         cb = new SqlCeCommandBuilder((SqlCeDataAdapter)ada);
     }
 }
Exemple #34
0
        public static String getAppKey(DbName name, DbType type)
        {
            string key = null;
            switch (type)
            {
                case DbType.Source:
                    key = "src_" + name.ToString();
                    break;
                case DbType.Destination:
                    key = "dest_" + name.ToString();
                    break;

            }
            return key;
        }
Exemple #35
0
 public static String getConnStr(DbName name, DbType type)
 {
     String key = getAppKey(name, type);
     return ConfigurationManager.AppSettings[key];
 }