Пример #1
0
        private CloneTableFieldDefInfo FieldInsertBeg(CloneTableFieldDefInfo fieldInfo)
        {
            m_TableFields.Insert(0, fieldInfo);
            m_nFields++;

            return(fieldInfo);
        }
Пример #2
0
        public CloneTableFieldDefInfo FieldAppend(CloneTableFieldDefInfo fieldInfo)
        {
            m_TableFields.Add(fieldInfo);
            m_nFields++;

            return(fieldInfo);
        }
        private static void ConvertTableAutoId2Id(CloneTableDefInfo tableInfo, IList <CloneTableDefInfo> tableList)
        {
            CloneTableFieldDefInfo       m_XID           = tableInfo.AutoIncrementColumn();
            CloneIndexDefInfo            m_XPK           = tableInfo.IndexPK();
            IList <CloneRelationDefInfo> tableToRelation = tableInfo.ForeignRelations(tableList);

            if (m_XID == null)
            {
                tableInfo.CreateTargetFAUTO(COLUMN_NAME_AUTOID, DBConstants.DB_LONG);

                tableInfo.CreateTargetIndexFromXPK(m_XPK);

                m_XPK = tableInfo.CreatePKAutoConstraint("XPK", COLUMN_NAME_AUTOID);
            }
            else
            {
                string oldAuroName = m_XID.TargetName();

                m_XID.ReNameTargetColumn(COLUMN_NAME_AUTOID);

                foreach (var index in tableInfo.IndexesNonPK())
                {
                    index.ReNameTargetColumn(oldAuroName, COLUMN_NAME_AUTOID);
                }

                foreach (var relationTable in tableToRelation)
                {
                    relationTable.ReNameTableColumn(oldAuroName, COLUMN_NAME_AUTOID);
                }

                tableInfo.CreateTargetIndexFromXPK(m_XPK, oldAuroName, COLUMN_NAME_AUTOID);

                m_XPK = tableInfo.CreatePKAutoConstraint("XPK", COLUMN_NAME_AUTOID);
            }
        }
Пример #4
0
        public CloneTableFieldDefInfo CreateTargetField(string lpszName, int nType, bool bNullOption, UInt32 versFrom = 0, UInt32 versDrop = 9999)
        {
            TableFieldDefInfo fieldInfo = TableDefInfo.CreateFieldInfo(lpszName, nType, bNullOption, versFrom, versDrop);

            CloneTableFieldDefInfo fieldClone = new CloneTableFieldDefInfo(null, fieldInfo);

            return(FieldAppend(fieldClone));
        }
Пример #5
0
        public CloneTableFieldDefInfo CreateTargetFAUTO(string lpszName, int nType, UInt32 versFrom = 0, UInt32 versDrop = 9999)
        {
            TableFieldDefInfo fieldInfo = TableDefInfo.CreateFAUTOInfo(lpszName, nType, versFrom, versDrop);

            CloneTableFieldDefInfo fieldClone = new CloneTableFieldDefInfo(null, fieldInfo);

            return(FieldInsertBeg(fieldClone));
        }
Пример #6
0
        public CloneTableFieldDefInfo TargetFieldByName(string columnName)
        {
            IList <CloneTableFieldDefInfo> columnList = m_TableFields.Where((c) => (c.IsValidInVersion(m_VersCreate))).ToList();

            CloneTableFieldDefInfo column = columnList.Where((c) => (c.TargetName().CompareNoCase(columnName))).SingleOrDefault();

            return(column);
        }
        public object Clone()
        {
            CloneTableFieldDefInfo other = (CloneTableFieldDefInfo)this.MemberwiseClone();

            other.m_source = (TableFieldDefInfo)this.m_source.Clone();
            other.m_target = (TableFieldDefInfo)this.m_target.Clone();

            return(other);
        }