本文整理汇总了PHP中Doctrine\DBAL\Schema\Index::getQuotedColumns方法的典型用法代码示例。如果您正苦于以下问题:PHP Index::getQuotedColumns方法的具体用法?PHP Index::getQuotedColumns怎么用?PHP Index::getQuotedColumns使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Doctrine\DBAL\Schema\Index
的用法示例。
在下文中一共展示了Index::getQuotedColumns方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getSql
public function getSql(Index $index, $table)
{
if ($table instanceof Table) {
$table = $table->getQuotedName($this->platform);
}
$name = $index->getQuotedName($this->platform);
$columns = $index->getQuotedColumns($this->platform);
if (count($columns) == 0) {
throw new \InvalidArgumentException("Incomplete definition. 'columns' required.");
}
if ($index->isPrimary()) {
return $this->platform->getCreatePrimaryKeySQL($index, $table);
}
$query = 'CREATE INDEX ' . $name . ' ON ' . $table;
$query .= ' USING gist(' . $this->platform->getIndexFieldDeclarationListSQL($columns) . ')';
return $query;
}
示例2: _appendUniqueConstraintDefinition
/**
* Extend unique key constraint with required filters
*
* @param string $sql
* @param \Doctrine\DBAL\Schema\Index $index
*
* @return string
*/
private function _appendUniqueConstraintDefinition($sql, Index $index)
{
$fields = array();
foreach ($index->getQuotedColumns($this) as $field) {
$fields[] = $field . ' IS NOT NULL';
}
return $sql . ' WHERE ' . implode(' AND ', $fields);
}
示例3: getIndexDeclarationSQL
/**
* Obtains DBMS specific SQL code portion needed to set an index
* declaration to be used in statements like CREATE TABLE.
*
* @param string $name The name of the index.
* @param \Doctrine\DBAL\Schema\Index $index The index definition.
*
* @return string DBMS specific SQL code portion needed to set an index.
*
* @throws \InvalidArgumentException
*/
public function getIndexDeclarationSQL($name, Index $index)
{
$columns = $index->getQuotedColumns($this);
if (count($columns) === 0) {
throw new \InvalidArgumentException("Incomplete definition. 'columns' required.");
}
return $this->getCreateIndexSQLFlags($index) . 'INDEX ' . $name . ' (' . $this->getIndexFieldDeclarationListSQL($columns) . ')' . $this->getPartialIndexSQL($index);
}
示例4: getCreatePrimaryKeySQL
public function getCreatePrimaryKeySQL(Index $index, $table)
{
if ($table instanceof Table) {
$table = $table->getQuotedName($this);
}
return 'ALTER TABLE ' . $this->espoQuote($table) . ' ADD PRIMARY KEY (' . $this->getIndexFieldDeclarationListSQL($index->getQuotedColumns($this)) . ')';
}
示例5: getIndexDeclarationSQL
/**
* Generate table index column declaration
* @codeCoverageIgnore
*/
public function getIndexDeclarationSQL($name, Index $index)
{
$columns = $index->getQuotedColumns($this);
$name = new Identifier($name);
if (count($columns) == 0) {
throw new \InvalidArgumentException("Incomplete definition. 'columns' required.");
}
return 'INDEX ' . $name->getQuotedName($this) . ' USING FULLTEXT (' . $this->getIndexFieldDeclarationListSQL($columns) . ')';
}
示例6: getCreatePrimaryKeySQL
/**
* Returns the SQL to create an unnamed primary key constraint.
*
* @param \Doctrine\DBAL\Schema\Index $index
* @param \Doctrine\DBAL\Schema\Table|string $table
*
* @return string
*/
public function getCreatePrimaryKeySQL(Index $index, $table)
{
return 'ALTER TABLE ' . $table . ' ADD PRIMARY KEY (' . $this->getIndexFieldDeclarationListSQL($index->getQuotedColumns($this)) . ')';
}
示例7: getCreatePrimaryKeySQL
/**
* {@inheritDoc}
*/
public function getCreatePrimaryKeySQL(Index $index, $table)
{
$sql = 'ALTER TABLE ' . $table . ' ADD CONSTRAINT PRIMARY KEY (' . $this->getIndexFieldDeclarationListSQL($index->getQuotedColumns($this)) . ')';
if ($index->getName()) {
$sql .= ' CONSTRAINT ' . $index->getQuotedName($this);
}
return $sql;
}