Argentini.Halide.H3Reader.GetColumnAllowNulls C# (CSharp) Method

GetColumnAllowNulls() public method

Does a specified column allow nulls? Returns false if no schema information is available.
public GetColumnAllowNulls ( string columnName ) : bool
columnName string Name of the column.
return bool
        public bool GetColumnAllowNulls(string columnName)
        {
            bool output = false;

            if (schemaAvailable)
            {
                try
                {
                    System.Data.DataColumn[] myPrimaryKey = new System.Data.DataColumn[1];
                    myPrimaryKey[0] = schemaTable.Columns["columnName"];
                    schemaTable.PrimaryKey = myPrimaryKey;
                    System.Data.DataRow myDataRow = schemaTable.Rows.Find(columnName);
                    output = (bool)myDataRow["AllowDBNull"];
                }

                catch (Exception err)
                {
                    _lastSqlError = err;
                }
            }

            return output;
        }

Usage Example

Example #1
0
        /// <summary>
        /// Initialize the DatabaseRow with a single row form a Halide.H3Reader object.
        /// </summary>
        /// <param name="reader">An open Halide.H3Reader object that can be used to read a row from a database.</param>
        public DatabaseRow(H3Reader reader)
        {
            _fieldCount = reader.FieldCount;

            try
            {
                _dataItems = new DatabaseItem[_fieldCount];

                if (_dataIndex != null) _dataIndex.Clear();

                for (int x = 0; x < _fieldCount; x++)
                {
                    _dataItems[x] = new DatabaseItem();

                    String columnName = reader.ColumnName(x).ToLower();

                    _dataIndex.Add(columnName, x);

                    _dataItems[x].IsNullable = reader.GetColumnAllowNulls(columnName);
                    _dataItems[x].ColumnName = columnName;
                    _dataItems[x].ColumnSize = reader.GetColumnSize(columnName);
                    _dataItems[x].ColumnSQLType = reader.GetDataTypeName(columnName).ToLower();
                    _dataItems[x].IsAutoIncrementing = reader.GetColumnIsAutoIncrement(columnName);
                    _dataItems[x].IsIdentity = reader.GetColumnIsIdentity(columnName);
                    _dataItems[x].IsPrimaryKey = reader.GetColumnIsKey(columnName);
                    _dataItems[x].SystemDataType = reader.GetColumnSystemDataType(columnName).ToLower();
                    _dataItems[x].Value = reader.GetString(columnName);
                }
            }
            catch
            {
            }
        }