QmlDesigner: Improve prototypes statement

Task-number: QTCREATORBUG-30599
Change-Id: I025e654b39a3182c324b540ab3dc8aa24d32f589
Reviewed-by: Qt CI Patch Build Bot <ci_patchbuild_bot@qt.io>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
This commit is contained in:
Marco Bubke
2024-03-27 15:44:29 +01:00
parent a1add0e137
commit b341e372bc

View File

@@ -4586,16 +4586,15 @@ public:
"UPDATE types SET extensionId=?2 WHERE typeId=?1", database}; "UPDATE types SET extensionId=?2 WHERE typeId=?1", database};
mutable ReadStatement<1, 1> selectTypeIdsForPrototypeChainIdStatement{ mutable ReadStatement<1, 1> selectTypeIdsForPrototypeChainIdStatement{
"WITH RECURSIVE " "WITH RECURSIVE "
" all_prototype_and_extension(typeId, prototypeId) AS (" " prototypes(typeId) AS ( "
" SELECT typeId, prototypeId FROM types WHERE prototypeId IS NOT NULL" " SELECT prototypeId FROM types WHERE typeId=?1 "
" UNION ALL " " UNION ALL "
" SELECT typeId, extensionId FROM types WHERE extensionId IS NOT NULL)," " SELECT extensionId FROM types WHERE typeId=?1 "
" prototypes(typeId) AS ("
" SELECT prototypeId FROM all_prototype_and_extension WHERE typeId=?"
" UNION ALL " " UNION ALL "
" SELECT prototypeId FROM all_prototype_and_extension JOIN " " SELECT prototypeId FROM types JOIN prototypes USING(typeId) "
" prototypes USING(typeId)) " " UNION ALL "
"SELECT typeId FROM prototypes", " SELECT extensionId FROM types JOIN prototypes USING(typeId)) "
"SELECT typeId FROM prototypes WHERE typeId IS NOT NULL",
database}; database};
WriteStatement<3> updatePropertyDeclarationAliasIdAndTypeNameIdStatement{ WriteStatement<3> updatePropertyDeclarationAliasIdAndTypeNameIdStatement{
"UPDATE propertyDeclarations SET aliasPropertyDeclarationId=?2, " "UPDATE propertyDeclarations SET aliasPropertyDeclarationId=?2, "