【发布时间】:2016-03-01 04:24:31
【问题描述】:
我正在尝试使用“表中的 JPA 实体”创建类。我已连接到具有以下 SQL 描述的结构或此图像中描述的数据库
它只创建 4 个类,而 2 个不创建
我的数据库有什么问题?
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;
--
-- Baza danych: `pawww8`
--
-- --------------------------------------------------------
--
-- Struktura tabeli dla tabeli `category`
--
CREATE TABLE IF NOT EXISTS `category` (
`id` int(10) unsigned NOT NULL,
`name` varchar(45) COLLATE utf8_polish_ci NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci;
-- --------------------------------------------------------
--
-- Struktura tabeli dla tabeli `customer`
--
CREATE TABLE IF NOT EXISTS `customer` (
`id` int(11) unsigned NOT NULL,
`name` varchar(45) COLLATE utf8_polish_ci NOT NULL,
`email` varchar(45) COLLATE utf8_polish_ci NOT NULL,
`phone` varchar(45) COLLATE utf8_polish_ci NOT NULL,
`address` varchar(45) COLLATE utf8_polish_ci NOT NULL,
`city_region` varchar(2) COLLATE utf8_polish_ci NOT NULL,
`cc_number` varchar(19) COLLATE utf8_polish_ci NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci;
-- --------------------------------------------------------
--
-- Struktura tabeli dla tabeli `customer_order`
--
CREATE TABLE IF NOT EXISTS `customer_order` (
`id` int(10) unsigned NOT NULL,
`amount` decimal(6,2) NOT NULL,
`date_created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`confirmation_number` int(10) unsigned NOT NULL,
`customer_id` int(10) unsigned NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci;
-- --------------------------------------------------------
--
-- Struktura tabeli dla tabeli `customer_order_has_product`
--
CREATE TABLE IF NOT EXISTS `customer_order_has_product` (
`customer_order_id` int(10) unsigned NOT NULL,
`product_id` int(10) unsigned NOT NULL,
`quantity` smallint(5) unsigned NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci;
-- --------------------------------------------------------
--
-- Struktura tabeli dla tabeli `product`
--
CREATE TABLE IF NOT EXISTS `product` (
`id` int(10) unsigned NOT NULL,
`name` varchar(45) COLLATE utf8_polish_ci NOT NULL,
`price` decimal(5,2) NOT NULL,
`description` tinytext COLLATE utf8_polish_ci,
`last_update` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`category_id` int(11) unsigned NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci;
--
-- Indeksy dla zrzutów tabel
--
--
-- Indexes for table `category`
--
ALTER TABLE `category`
ADD PRIMARY KEY (`id`);
--
-- Indexes for table `customer`
--
ALTER TABLE `customer`
ADD PRIMARY KEY (`id`);
--
-- Indexes for table `customer_order`
--
ALTER TABLE `customer_order`
ADD PRIMARY KEY (`id`),
ADD KEY `customer_id` (`customer_id`);
--
-- Indexes for table `customer_order_has_product`
--
ALTER TABLE `customer_order_has_product`
ADD PRIMARY KEY (`customer_order_id`,`product_id`),
ADD KEY `customer_order_id` (`customer_order_id`),
ADD KEY `product_id` (`product_id`);
--
-- Indexes for table `product`
--
ALTER TABLE `product`
ADD PRIMARY KEY (`id`),
ADD KEY `category_id` (`category_id`),
ADD KEY `category_id_2` (`category_id`);
--
-- AUTO_INCREMENT for dumped tables
--
--
-- AUTO_INCREMENT dla tabeli `category`
--
ALTER TABLE `category`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT dla tabeli `customer`
--
ALTER TABLE `customer`
MODIFY `id` int(11) unsigned NOT NULL AUTO_INCREMENT;
--
-- AUTO_INCREMENT dla tabeli `customer_order`
--
ALTER TABLE `customer_order`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT;
--
-- Ograniczenia dla zrzutów tabel
--
--
-- Ograniczenia dla tabeli `customer_order`
--
ALTER TABLE `customer_order`
ADD CONSTRAINT `customer_order_ibfk_1` FOREIGN KEY (`customer_id`) REFERENCES `customer` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
ADD CONSTRAINT `customer_order_ibfk_2` FOREIGN KEY (`id`) REFERENCES `customer_order_has_product` (`customer_order_id`) ON DELETE CASCADE ON UPDATE CASCADE;
--
-- Ograniczenia dla tabeli `product`
--
ALTER TABLE `product`
ADD CONSTRAINT `product_ibfk_1` FOREIGN KEY (`category_id`) REFERENCES `category` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
ADD CONSTRAINT `product_ibfk_2` FOREIGN KEY (`id`) REFERENCES `customer_order_has_product` (`product_id`) ON DELETE CASCADE ON UPDATE CASCADE;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
【问题讨论】:
-
你说哪些类丢失或没有生成?
-
我确定您正在使用一些 IDE,因为“表中的 JPA 实体”出现在某处。所以标记你的问题。而JPA没有提供这样的功能……这是IDE的一个功能
-
他的课程不会在屏幕上以红色下划线显示。它们是产品和客户订单