zoukankan      html  css  js  c++  java
  • spring data jpa指定联合索引

      如何,现在我的表里使用订单ID和产品ID作为唯一索引,那么需要在定义表实体类时在@Table中指定UniqueConstraint:

    import lombok.AllArgsConstructor;
    import lombok.Getter;
    import lombok.NoArgsConstructor;
    import lombok.Setter;
    
    import javax.persistence.*;
    
    /**
     * 产品表
     *
     * @author wulinfeng
     * @since 2019/12/13
     */
    @Entity
    @Table(name = "t_product", uniqueConstraints = @UniqueConstraint(columnNames = {"orderId", "productId"}))
    @Getter
    @Setter
    @AllArgsConstructor
    @NoArgsConstructor
    public class ProductItem {
    
        @Id
        @GeneratedValue(strategy = GenerationType.IDENTITY)
        private Long id;
    
        // 订单Id
        @Column(nullable = false, length = 32)
        private String orderId;
    
        // 受理产品编码
        @Column(length = 32)
        private String productId;
    
        // 产品名称
        @Column(length = 32)
        private String productName;
    
        // 时间戳
        @Column(length = 13)
        private Long timestamp;
    }

      把原来的t_product表drop掉,重启spring boot,再看该表,自动加上唯一索引了:

    mysql> show index from t_product;
    +-----------+------------+-----------------------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
    | Table     | Non_unique | Key_name                    | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment |
    +-----------+------------+-----------------------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
    | t_product |          0 | PRIMARY                     |            1 | id          | A         |           2 |     NULL | NULL   |      | BTREE      |         |               |
    | t_product |          0 | UK1mvw2lcd07t4cuicl4awfbgkw |            1 | order_id    | A         |           2 |     NULL | NULL   |      | BTREE      |         |               |
    | t_product |          0 | UK1mvw2lcd07t4cuicl4awfbgkw |            2 | product_id  | A         |           2 |     NULL | NULL   | YES  | BTREE      |         |               |
    +-----------+------------+-----------------------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
    3 rows in set (0.00 sec)
  • 相关阅读:
    函数及其表示
    集合等离散数学内容
    求和
    分式·新方法
    弹力、重力、摩擦力
    洛谷 P1357 花园
    浮力
    因式分解·新方法
    压强
    洛谷 P2051 [AHOI2009]中国象棋
  • 原文地址:https://www.cnblogs.com/wuxun1997/p/12101952.html
Copyright © 2011-2022 走看看