Code
Explorer
You are a developer and looking for Shopware projects?
Apply Now!
toSaveSql example
$this
->schemaSynchronizer->
updateSchema
(
$this
->
getSchema
(
)
, true
)
;
return
;
}
$schemaManager
=
$this
->
createSchemaManager
(
)
;
$comparator
=
$this
->
createComparator
(
$schemaManager
)
;
$schemaDiff
=
$this
->
compareSchemas
(
$comparator
,
method_exists
(
$schemaManager
, 'introspectSchema'
)
?
$schemaManager
->
introspectSchema
(
)
:
$schemaManager
->
createSchema
(
)
,
$this
->
getSchema
(
)
)
;
$platform
=
$this
->driverConnection->
getDatabasePlatform
(
)
;
if
(
!
method_exists
(
SchemaDiff::
class
, 'getCreatedSchemas'
)
)
{
foreach
(
$schemaDiff
->
toSaveSql
(
$platform
)
as
$sql
)
{
$this
->driverConnection->
executeStatement
(
$sql
)
;
}
return
;
}
if
(
$platform
->
supportsSchemas
(
)
)
{
foreach
(
$schemaDiff
->
getCreatedSchemas
(
)
as
$schema
)
{
$this
->driverConnection->
executeStatement
(
$platform
->
getCreateSchemaSQL
(
$schema
)
)
;
}
}
/** @var Field $field */
foreach
(
$type
->
getFields
(
)
as
$field
)
{
$myTable
->
addColumn
(
$field
->
getName
(
)
,
$field
->
getType
(
)
::
getDbalType
(
)
,
[
'notnull' =>
$field
->
isRequired
(
)
]
)
;
}
$myTable
->
addColumn
(
'created_at', 'datetime',
[
]
)
;
$myTable
->
addColumn
(
'updated_at', 'datetime',
[
]
)
;
}
$platform
=
$this
->modelManager->
getConnection
(
)
->
getDatabasePlatform
(
)
;
$sqls
=
(
new
Comparator
(
)
)
->
compare
(
$currentSchema
,
$schema
)
->
toSaveSql
(
$platform
)
;
if
(
$destructive
)
{
$sqls
=
(
new
Comparator
(
)
)
->
compare
(
$currentSchema
,
$schema
)
->
toSql
(
$platform
)
;
}
foreach
(
$sqls
as
$sql
)
{
$con
->
executeQuery
(
$sql
)
;
}
}
}