Ejemplo n.º 1
0
        private StringBuilder AppendDefinition(StringBuilder sql)
        {
            sql.Append(DataTypeName.ToUpper());
            if (DataType.IsRealNumberType() && NumericPrecision > 0)
            {
                sql.Append("(");
                sql.Append(NumericPrecision);
                if (NumericScale > 0)
                {
                    sql.Append(",");
                    sql.Append(NumericScale);
                }

                sql.Append(")");
            }
            else if (!DataType.IsNumericType() && ColumnSize > 0)
            {
                sql.Append("(");
                sql.Append(ColumnSize);
                sql.Append(")");
            }

            if (IsKey)
            {
                sql.Append(" PRIMARY KEY");
                if (IsAutoIncrement)
                {
                    sql.Append(" ").Append("AUTOINCREMENT");
                }
            }
            else
            {
                sql.Append(AllowDBNull ? " NULL" : " NOT NULL");

                if (IsUnique)
                {
                    sql.Append(" UNIQUE");
                }
            }

            if (DefaultValue != null)
            {
                sql.AppendFormat(" DEFAULT ({0})", DefaultValue);
            }

            return(sql);
        }
Ejemplo n.º 2
0
        private string GetSqlDataType()
        {
            // If the column size = 2147483647, set it to a varchar(MAX), else just set it to the size
            var columnSizeString = ColumnSize.ToString() == 2147483647.ToString() ? "MAX" : ColumnSize.ToString();

            string sqlDataType = DataTypeName.ToUpper();

            if (DataTypeName.ToUpper().Contains("CHAR"))
            {
                sqlDataType = $"{DataTypeName.ToUpper()}({columnSizeString})";
            }
            else if (DataTypeName.ToUpper().Equals("DECIMAL") || DataTypeName.ToUpper().Equals("NUMERIC"))
            {
                sqlDataType = $"{DataTypeName.ToUpper()}({NumericPrecision},{NumericScale})";
            }
            return(sqlDataType);
        }