/**
 * This class is generated by jOOQ
 */
package org.jooq.meta.cubrid.dba.tables;

/**
 * This class is generated by jOOQ.
 */
@java.lang.SuppressWarnings({ "all", "unchecked", "rawtypes" })
public class DbIndexKey extends org.jooq.impl.TableImpl<org.jooq.Record> {

	private static final long serialVersionUID = 1317315060;

	/**
	 * The singleton instance of <code>db_index_key</code>
	 */
	public static final org.jooq.meta.cubrid.dba.tables.DbIndexKey DB_INDEX_KEY = new org.jooq.meta.cubrid.dba.tables.DbIndexKey();

	/**
	 * The class holding records for this type
	 */
	@Override
	public java.lang.Class<org.jooq.Record> getRecordType() {
		return org.jooq.Record.class;
	}

	/**
	 * The column <code>db_index_key.index_name</code>.
	 */
	public final org.jooq.TableField<org.jooq.Record, java.lang.String> INDEX_NAME = createField("index_name", org.jooq.impl.SQLDataType.VARCHAR.length(255), this, "");

	/**
	 * The column <code>db_index_key.class_name</code>.
	 */
	public final org.jooq.TableField<org.jooq.Record, java.lang.String> CLASS_NAME = createField("class_name", org.jooq.impl.SQLDataType.VARCHAR.length(255), this, "");

	/**
	 * The column <code>db_index_key.key_attr_name</code>.
	 */
	public final org.jooq.TableField<org.jooq.Record, java.lang.String> KEY_ATTR_NAME = createField("key_attr_name", org.jooq.impl.SQLDataType.VARCHAR.length(255), this, "");

	/**
	 * The column <code>db_index_key.key_order</code>.
	 */
	public final org.jooq.TableField<org.jooq.Record, java.lang.Integer> KEY_ORDER = createField("key_order", org.jooq.impl.SQLDataType.INTEGER, this, "");

	/**
	 * The column <code>db_index_key.asc_desc</code>.
	 */
	public final org.jooq.TableField<org.jooq.Record, java.lang.String> ASC_DESC = createField("asc_desc", org.jooq.impl.SQLDataType.VARCHAR.length(4), this, "");

	/**
	 * The column <code>db_index_key.key_prefix_length</code>.
	 */
	public final org.jooq.TableField<org.jooq.Record, java.lang.Integer> KEY_PREFIX_LENGTH = createField("key_prefix_length", org.jooq.impl.SQLDataType.INTEGER, this, "");

	/**
	 * The column <code>db_index_key.func</code>.
	 */
	public final org.jooq.TableField<org.jooq.Record, java.lang.String> FUNC = createField("func", org.jooq.impl.SQLDataType.VARCHAR.length(255), this, "");

	/**
	 * Create a <code>db_index_key</code> table reference
	 */
	public DbIndexKey() {
		this("db_index_key", null);
	}

	/**
	 * Create an aliased <code>db_index_key</code> table reference
	 */
	public DbIndexKey(java.lang.String alias) {
		this(alias, org.jooq.meta.cubrid.dba.tables.DbIndexKey.DB_INDEX_KEY);
	}

	private DbIndexKey(java.lang.String alias, org.jooq.Table<org.jooq.Record> aliased) {
		this(alias, aliased, null);
	}

	private DbIndexKey(java.lang.String alias, org.jooq.Table<org.jooq.Record> aliased, org.jooq.Field<?>[] parameters) {
		super(alias, org.jooq.meta.cubrid.dba.DefaultSchema.DEFAULT_SCHEMA, aliased, parameters, "");
	}

	/**
	 * {@inheritDoc}
	 */
	@Override
	public org.jooq.meta.cubrid.dba.tables.DbIndexKey as(java.lang.String alias) {
		return new org.jooq.meta.cubrid.dba.tables.DbIndexKey(alias, this);
	}

	/**
	 * Rename this table
	 */
	public org.jooq.meta.cubrid.dba.tables.DbIndexKey rename(java.lang.String name) {
		return new org.jooq.meta.cubrid.dba.tables.DbIndexKey(name, null);
	}
}
