示例#1
0
        private static void CreateDB()
        {
            if (TfSettings.Database.CreateDB)
            {
                var connectionString = TfSettings.Database.DefaultConnectionString;
                var dbName           = TfSettings.Database.DatabaseName;
                var param            = ConnectProvider.Param();
                var query            = new Query(
                    connectionString,
                    $"{Operations.SELECT} COUNT('datname') FROM pg_catalog.pg_database where datname = {param}dbName;",
                    new Dictionary <string, object>()
                {
                    { "dbName", dbName }
                });

                if (query.GetScalar() > 0)
                {
                    return;
                }

                var userId   = TfSettings.Database.UserId;
                var encoding = TfSettings.Database.Encoding;
                var nonQuery = new NonQuery(
                    connectionString,
                    $"{Operations.CREATE_DATABASE.GetString()} {dbName} WITH OWNER = {userId} ENCODING = '{encoding}';",
                    null);
                nonQuery.ExecuteNonQuery(Operations.CREATE_DATABASE);
            }
        }
示例#2
0
 private int ExecuteNonQuery(string sql, Dictionary <string, object> parameters, Operations operations)
 {
     if (this.NonQuery == null)
     {
         var nonQuery = new NonQuery(sql, parameters)
         {
             TableName = this.TableName
         };
         return(nonQuery.ExecuteNonQuery(operations));
     }
     else
     {
         this.NonQuery.WriteSql(sql, parameters);
         return(this.NonQuery.ExecuteNonQuery(operations));
     }
 }