Returns a guaranteed unique parameter name for the column
@param $columnName
@return string
960923
public static function getPdoParamName($columnName)
    {
        if (isset(self::$pdoParamAliasesUsed[$columnName])) {
            self::$pdoParamAliasesUsed[$columnName]++;

            return $columnName . self::$pdoParamAliasesUsed[$columnName];
        } else {
            self::$pdoParamAliasesUsed[$columnName] = 1;

            return $columnName;
        }
    }
1372013
protected String columnNameToPropertyName(String columnName){
		String normalized = columnName.replaceAll("[^a-zA-Z0-9]+", " ");
		String capitalized = WordUtils.capitalizeFully(normalized);
		String blankRemmoved = StringUtils.remove(capitalized, ' ');
		return StringUtils.uncapitalize(blankRemmoved);
	}
173010
public function primaryKey(string $columnName)
    {
        $this->primaryKey = $this->buildPrimaryKeyColumn($columnName);
        $this->columns    = [$columnName => $this->primaryKey] + $this->columns;
    }
345493
protected function createIndexName($table, array $columns, $unique = false)
    {
        $index = strtolower($table . '_' . implode('_', $columns) . '_' . ($unique ? 'unique' : 'index'));

        return str_replace(['-', '.'], '_', $index);
    }
23532
public function getValue($item, $columnName)
    {
        if (is_array($item)) {
            if (isset($item[$columnName])) {
                return $item[$columnName];
            } else {
                return '';
            }
        }

        $accessor = PropertyAccess::createPropertyAccessor();

        if ($accessor->isReadable($item, $columnName)) {
            $result = $accessor->getValue($item, $columnName);
        } else {
            return sprintf('undefined function [get/is/has]%s()', $columnName);
        }

        return $result;
    }
955289
protected function getColumnRemove($table, $columnName)
    {
        $output = [];
        $output[] = sprintf("%sif(\$this->table('%s')->hasColumn('%s')) {", $this->ind2, $table, $columnName);
        $output[] = $result = sprintf("%s\$this->table(\"%s\")->removeColumn('%s')->update();", $this->ind3, $table,
            $columnName);
        $output[] = sprintf("%s}", $this->ind2);
        $result = implode($this->nl, $output);

        return $result;
    }
489885
public function GetTableColumnNames($tableName) {
        $this->setDbConfigList(array());
        $dbConfig = new \Puzzlout\Framework\Dal\DbStatementConfig(null, \Puzzlout\Framework\Dal\DbExecutionType::COLUMNNAMES, new \Puzzlout\Framework\Dal\DbQueryFilters());
        $dbConfig->setQuery("DESCRIBE `$tableName`;");
        $this->addDbConfigItem($dbConfig);
        return $this->BindParametersAndExecute();
    }
756559
public final Object getColumnValue(final String columnName) {
        SQLExpression sqlExpression = values[getColumnIndex(columnName)];
        if (sqlExpression instanceof SQLParameterMarkerExpression) {
            return parameters[getParameterIndex(sqlExpression)];
        } else if (sqlExpression instanceof SQLTextExpression) {
            return ((SQLTextExpression) sqlExpression).getText();
        } else {
            return ((SQLNumberExpression) sqlExpression).getNumber();
        }
    }
836800
protected function _getFieldLongName($fieldName)
    {
        //trying to avoid strpos call as often as possible
        $coreTableName = $this->getCoreTableName();
        if ($fieldName[2] == $coreTableName[2] && strpos($fieldName, $coreTableName . '__') === 0) {
            return $fieldName;
        }

        return $coreTableName . '__' . strtolower($fieldName);
    }
1323650
public function getColNames()
    {
        if (count($this->colNames) != count($this->colModel)) {
            throw new \InvalidArgumentException('The number of colNames is not equal to the number of colModel');
        } 
        return $this->colNames;
    }
206334
public function dropColumn($columnName)
    {
        $columnName = $this->normalizeIdentifier($columnName);
        unset($this->_columns[$columnName]);

        return $this;
    }
962696
public function getPropertyLinkedToColumn(string $columnName)
    {
        $columnName = array_search($columnName, $this->propertyColumnNameMap, true);

        return $columnName ? $columnName : null;
    }
868624
public static function findByID($userID, $columnName = '')
    {
        $userObj = User::where('userID', $userID)->first();

        // return custom column
        if ($columnName && isset($userObj->$columnName)) {
            return $userObj->$columnName;
        }

        return $userObj;
    }
659893
private function getColumnAlias($columnName, $mode, array $customRenameColumns)
    {
        switch ($mode) {
            case self::COLUMN_RENAMING_INCREMENT:
                return $columnName . $this->sqlCounter++;

            case self::COLUMN_RENAMING_CUSTOM:
                return isset($customRenameColumns[$columnName])
                    ? $customRenameColumns[$columnName] : $columnName;

            case self::COLUMN_RENAMING_NONE:
                return $columnName;

        }
    }
1058010
public function getColumnByName(string $columnName) : BufferedSQLResultColumn {
		if (\array_key_exists($columnName, $this->columns)) {
			return $this->columns[$columnName];
		} else {
			throw new \OutOfBoundsException('Column ' . $columnName . ' does not exist in SQL result');
		}
	}
1354866
public function getParametersFromColumnName($columnName = null)
    {
        $array = [];
        if (null !== $columnName) {
            $this->cleanupParameters();
            foreach ($this->getParameters() as $key => $parameter) {
                if ($parameter['column'] === $columnName) {
                    $array[$key] = $parameter;
                }
            }
        }

        return $array;
    }
1081828
public function generateUniqueAliasFor(string $tableName) : string
    {
        $aliases = array_flip($this->getTakenAliases());
        if (!isset($aliases[$tableName])) {
            return $tableName;
        }

        $count = 1;
        do {
            $newTableName = $tableName . $count;
            $count++;
        } while (isset($aliases[$newTableName]));

        return $newTableName;
    }