Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

MariaDB [controlloop]> SHOW CREATE TABLE JpaExampleMap_ATTRIBUTES;
+--------------------------+------------------------------------------------------------------------------------------------------------------------------------+
| Table                    | Create Table                                                                                                       |
+--------------------------+------------------------------------------------------------------------------------------------------------------------------------+
| JpaExampleMap_ATTRIBUTES | CREATE TABLE `JpaExampleMap_ATTRIBUTES` (
`name` varchar(120) DEFAULT NULL,
  `version` varchar(20) DEFAULT NULL,
`ATTRIBUTES` longtext DEFAULT NULL,
  `ATTRIBUTES_KEY` varchar(255) DEFAULT NULL,
 KEY `FK_JpaExampleMap_ATTRIBUTES_name` (`name`,`version`),
  CONSTRAINT `FK_JpaExampleMap_ATTRIBUTES_name` FOREIGN KEY (`name`, `version`)
REFERENCES `ExampleMap` (`name`, REFERENCES `ExampleMap` (`name`, `version`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 |
+--------------------------+------------------------------------------------------------------------------------------------------------------------------------+

Hibernate

MariaDB [controlloop]> describe ExampleMap;
+---------+--------------+------+-----+---------+-------+
| Field   | Type         | Null | Key | Default | Extra |
+---------+--------------+------+-----+---------+-------+
| name    | varchar(120) | NO   | PRI | NULL    |       |
| version | varchar(20)  | NO   | PRI | NULL    |       |
+---------+--------------+------+-----+---------+-------+
MariaDB [controlloop]> SHOW CREATE TABLE JpaExampleMap_ATTRIBUTES;
+--------------------------+------------------------------------------------------------------------------------------------------------------------------------+
| Table   +
| Table                    | Create Table                                                                                                                       |
+--------------------------+------------------------------------------------------------------------------------------------------------------------------------+
| JpaExampleMap_ATTRIBUTES | CREATE TABLE `JpaExampleMap_ATTRIBUTES` (
  `name` varchar(120) NOT NULL,
`version` varchar(20) NOT NULL,
`attributes` longtext DEFAULT NULL,
`attributes_KEY` varchar(255) NOT NULL,
PRIMARY KEY (`name`,`version`,`attributes_KEY`),
CONSTRAINT `FKrwvpo54nao070vsy5p23xnps7` FOREIGN KEY (`name`, `version`)
REFERENCES `ExampleMap` (`name`, REFERENCES `ExampleMap` (`name`, `version`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 |
+--------------------------+------------------------------------------------------------------------------------------------------------------------------------+

JpaToscaCapabilityAssignment_ATTRIBUTES table

...

MariaDB [controlloop]> SHOW CREATE TABLE JpaToscaCapabilityAssignment_ATTRIBUTES;
+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------+
| Table   +
| Table                       | Create Table                                                                                                        |
+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------+
| JpaToscaCapabilityAssignment_ATTRIBUTES | CREATE TABLE `JpaToscaCapabilityAssignment_ATTRIBUTES` (
                                           `name` varchar(120) DEFAULT NULL,
 `version` varchar(20) DEFAULT NULL,
  `ATTRIBUTES` longtext DEFAULT NULL,
`ATTRIBUTES_KEY` varchar(255) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 |
+-----------------------------------------+---------------------------------------------------------------------------------------------------------------------++

Currently in Currently in controlloop database, I have not found out why foreign key has not be generated in this table and in all '_ATTRIBUTES', '_META' and '_CONSTRAINTS' tables as well.

...

MariaDB [controlloop]> SHOW CREATE TABLE JpaToscaCapabilityAssignment_ATTRIBUTES;
+-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------+
| Table                                   | Create Table                                                                                                         |
+|
+-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------+
| JpaToscaCapabilityAssignment_ATTRIBUTES | CREATE TABLE `JpaToscaCapabilityAssignment_+
| JpaToscaCapabilityAssignment_ATTRIBUTES | CREATE TABLE `JpaToscaCapabilityAssignment_ATTRIBUTES` (
  `name` varchar(120) NOT NULL,
`version` varchar(20) NOT NULL,
`attributes` longtext DEFAULT NULL,
`attributes_KEY` varchar(255) NOT NULL,
PRIMARY KEY (`name`,`version`,`attributes_KEY`),
CONSTRAINT `FKjuqj4nashp9jx76h5eh5psp7l` FOREIGN KEY (`name`, `version`)
REFERENCES `ToscaCapabilityAssignment` (`name`, `version`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 |
+-----------------------------------------+-------------------------------------------------------------------------------------------+

Implications using Hibernate

To be continued

Map of Objects

Code Block
languagejava
titleJpaExampleObjMap
@Entity
@Table(name = "ExampleObjMap")
@Data
@EqualsAndHashCode
public class JpaExampleObjMap implements Serializable {

    private static final long serialVersionUID = 1L;

    @EmbeddedId
    @VerifyKey
    @NotNull
    private ExampleKey key;

    @ElementCollection
    @Lob
    private Map<@NotNull String, @NotNull JpaExample> examples;
}

Eclipse-Link

MariaDB [controlloop]> SHOW CREATE TABLE JpaExampleObjMap_EXAMPLES;
+---------------------------+---------------------------------------------------------------------------------------------------------+
| Table                     | Create Table                                                                                            |
+---------------------------+---------------------------------------------------------------------------------------------------------+
| JpaExampleObjMap_EXAMPLES | CREATE TABLE `JpaExampleObjMap_EXAMPLES` (
`name` varchar(120) DEFAULT NULL,
  `version` varchar(20) DEFAULT NULL,
  `EXAMPLES` longblob DEFAULT NULL,
  `EXAMPLES_KEY` varchar(255) DEFAULT NULL,
  KEY `FK_JpaExampleObjMap_EXAMPLES_name` (`name`,`version`),
  CONSTRAINT `FK_JpaExampleObjMap_EXAMPLES_name` FOREIGN KEY (`name`, `version`)
REFERENCES `ExampleObjMap` (`name`, `version`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 |
+---------------------------+---------------------------------------------------------------------------------------------------------+

Hibernate

+---------------------------+---------------------------------------------------------------------------------------------------------+
| Table                     | Create Table                                                                                            |
+---------------------------+---------------------------------------------------------------------------------------------------------+
| JpaExampleObjMap_EXAMPLES | CREATE TABLE `JpaExampleObjMap_EXAMPLES` (
`name` varchar(120) NOT NULL,
  `version` varchar(20) NOT NULL,
`examples_name` varchar(120) NOT NULL,
  `examples_version` varchar(20) NOT NULL,
  `examples_KEY` varchar(255) NOT NULL,
  PRIMARY KEY (`name`,`version`,`examples_KEY`),
  UNIQUE KEY `attributes` longtext DEFAULT NULL`UK_dtga5qcrtu3v2yq7ptbjyqba8` (`examples_name`,`examples_version`),
  CONSTRAINT `FK8elsnf63fwlyny8wfl2urejss` FOREIGN KEY (`examples_name`, `examples_version`)
`attributes_KEY` varchar(255) NOT NULL,
REFERENCES `Example` (`name`, `version`),
PRIMARY KEY (`name`,`version`,`attributes_KEY`),
  CONSTRAINT `FKnkx26gxv04oxbyffxk1h07k1g` FOREIGN KEY (`name`, `version`)
CONSTRAINT `FKjuqj4nashp9jx76h5eh5psp7l` FOREIGN KEY (`name`, `version`) REFERENCES `ToscaCapabilityAssignment` (`name`, `version`)
REFERENCES `ExampleObjMap` (`name`, `version`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 |
+-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------+

Implications using Hibernate

...