public DatabaseSchemaCheckItem(string name, DatabaseSchemaTypes type, int version, DatabaseSchemaCreater creater)
 {
     Name    = name;
     Type    = type;
     Version = version;
     Creater = creater;
 }
        /// <summary>
        /// 设置架构版本
        /// </summary>
        /// <param name="name">架构名称</param>
        /// <param name="type">架构类型</param>
        /// <param name="version">架构版本</param>
        public void SetSchemaVersion(string name, DatabaseSchemaTypes type, int version)
        {
            int id = TypeExtensions.Convert <int>(_dataContext.ExecuteScalar("select [Id] from [Gouring_SchemaVersion] where [Name]=@p1 and [Type]=@p2 limit 0,1", name, type), 0);

            if (id > 0)
            {
                _dataContext.ExecuteNonQuery("update [Gouring_SchemaVersion] set [Version]=@p1 where [Id]=@p2", version, id);
            }
            else
            {
                _dataContext.ExecuteNonQuery("insert into [Gouring_SchemaVersion]([Name],[Type],[Version]) values(@p1,@p2,@p3)", name, type, version);
            }
        }
Exemplo n.º 3
0
 void ParseType()
 {
     if (!_isValid)
     {
         return;
     }
     foreach (RegexEntry entry in _regexs)
     {
         if (entry.regex.IsMatch(_tableName))
         {
             _type = entry.type;
             return;
         }
     }
     _type = DatabaseSchemaTypes.Table;
     if (_order > 1)
     {
         _type = DatabaseSchemaTypes.TableField;
     }
 }
 /// <summary>
 /// 获取架构版本
 /// </summary>
 /// <param name="name">架构名称</param>
 /// <param name="type">架构类型</param>
 /// <returns>返回版本,如果未找到对应的记录将返回0。</returns>
 public int GetSchemaVersion(string name, DatabaseSchemaTypes type = DatabaseSchemaTypes.Table)
 {
     return(TypeExtensions.Convert <int>(_dataContext.ExecuteScalar("select [Version] from [Gouring_SchemaVersion] where [Name]=@p1 and [Type]=@p2 limit 0,1", name, type), 0));
 }