Exemple #1
0
        protected string DbNullAndDefault(TableFieldDefInfo fieldInfo)
        {
            if (fieldInfo == null)
            {
                return(DBConstants.EMPTY_STRING);
            }

            bool bColumnDefault = DbColumnDefault();
            bool bFieldDefault  = (fieldInfo.m_strDefaultValue.Length != 0);

            bool bRequiredDefault = DBPlatform.DefaultBindRequired(fieldInfo.m_lAttributes);
            bool bAutoIncremField = ((fieldInfo.m_lAttributes & DBConstants.dbAutoIncrField) != 0);

            string strFieldNames = DBConstants.EMPTY_STRING;

            if (bColumnDefault)
            {
                if (fieldInfo.m_bRequired && bRequiredDefault)
                {
                    strFieldNames = StringUtils.JoinNonEmpty(" ", strFieldNames, DbTypeDefault(fieldInfo.m_nType));
                }
            }
            if (bAutoIncremField == false)
            {
                if (fieldInfo.m_bRequired)
                {
                    strFieldNames = StringUtils.JoinNonEmpty(" ", strFieldNames, "NOT NULL");
                }
                else
                {
                    strFieldNames = StringUtils.JoinNonEmpty(" ", strFieldNames, "NULL");
                }
            }
            return(strFieldNames);
        }
        public override string CreateTableBND(TableDefInfo tableDef, uint versCreate)
        {
            string strSQL      = "";
            var    tableFields = tableDef.TableColumnsForVersion(versCreate);

            foreach (var field in tableFields)
            {
                string strDefaultSQL;
                bool   bRequiredDefault = DBPlatform.DefaultBindRequired(field.m_lAttributes);

                if (field.m_bRequired && bRequiredDefault)
                {
                    if (DBPlatform.DefaultBindDataType(field.m_nType))
                    {
                        strDefaultSQL = BindDefaultDataTypeSql(tableDef.TableName(), field.m_strName);
                        strSQL       += (strDefaultSQL);
                        strSQL       += DBConstants.NEW_LINE_STR;
                        strSQL       += DBConstants.NEW_LINE_STR;
                    }
                }
            }

            return(strSQL);
        }