@Override
	public Column parse() {
		if(!this.prepared) {
			this.prepared = true;
			
			StringBuilder sB = new StringBuilder();
			
			sB.append(this.name);
			
			String type = this.t.getTextual();
			if(this.t == DataType.INT) {
				sB.append(" INTEGER ");
			}else if(this.t == DataType.RAW) {
				sB.append(type.replace("%1", this.data));
			}else if(null != this.length) {
				sB.append(type.replace("%1", String.valueOf(this.length.intValue())));
			}else{
				sB.append(type);
			}
			
			if(this.n) {
				sB.append(" DEFAULT NULL ");
			}else{
				sB.append(" NOT NULL ");
				if(this.rawDef) {
					sB.append(" DEFAULT ");
					sB.append(this.def);
					sB.append(" ");
				}else{
					if(null != this.def) {
						sB.append(" DEFAULT '");
						sB.append(this.def);
						sB.append("' ");
					}
				}
			}
			
			if(this.P_KEY) {
				sB.append(" PRIMARY KEY ");
			}
			
			if(this.A_INCR) {
				sB.append(" AUTOINCREMENT ");
			}
			
			this.field = sB.toString();
		}
		
		return this;
	}