Computer >> Máy Tính >  >> Lập trình >> MySQL

Tạo bảng với MySQL - Hibernate

Để tạo bảng, bạn cần chèn dòng bên dưới vào application.properties -

spring.jpa.hibernate.ddl-auto=update

Tại đây, Hibernate sẽ tạo bảng demo88 tự động. Mã application.properties như sau -

spring.datasource.platform=mysql
spring.jpa.database-platform=org.hibernate.dialect.MySQL5InnoDBDialect
spring.jpa.hibernate.ddl-auto=update
server.port=8191

spring.datasource.driverClassName=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/sampledatabase
spring.datasource.username=root
spring.datasource.password=123456

Lớp thực thể demo88 như sau để tạo cột bảng -

Ví dụ

package com.automaticallytablecreation;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;

@Entity
@Table
public class demo88 {
   @Id
   private int id;
   @Column(name="name")
   private String name;
}

Mã lớp chính như sau -

Ví dụ

package com.automaticallytablecreation;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class AutomaticTableApplication {
   public static void main(String[] args) {
      SpringApplication.run(AutomaticTableApplication.class, args);
   }
}

Bây giờ nhấp chuột phải vào lớp chính và nhấp vào Chạy menu dưới dạng Ứng dụng Java. Ứng dụng sẽ chạy và bảng được tạo.

Điều này sẽ tạo ra kết quả sau -

Đầu ra Tạo bảng với MySQL - Hibernate

Để xác minh, hãy hiển thị bảng -

mysql> show create table demo88;

Điều này sẽ tạo ra kết quả sau -

Đầu ra

+--------+------------------------------------------------------------+

| Table  | Create Table                                               |    

+--------+------------------------------------------------------------+

| demo88 | CREATE TABLE `demo88` (

   `id` int NOT NULL,

   `name` varchar(255) DEFAULT NULL,

   PRIMARY KEY (`id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci |

+--------+-------------------------------------------------------------+

1 row in set (0.03 sec)