Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Envers + MYSQL + List =SQLSyntaxErrorException:Kunci yang ditentukan terlalu panjang;

Saya lupa menyebutkan bahwa saya menggunakan @Access(AccessType.PROPERTY) pada tingkat kelas. Bagaimanapun, saya memperluas metode pengambil terkait

@ElementCollection  
@Column(length=175)     // keep in sync with maxDBStringLength
public List<String> getEnvironmentalInterfaces() {
    return environmentalInterfaces;
}

Jadi benar-benar melakukan trik. Namun, agar tidak kehilangan informasi, saya juga memperluas semua metode untuk menambahkan elemen ke daftar, seperti

// Must be in sync with @Column(length=175)  definitions
protected static int maxDBStringLength = Constants.maxDBStringLength;

public void addEnvironmentalInterfaces(String environmentalInterface) throws StringTooLongException {
    if(environmentalInterface.length() > maxDBStringLength) {
        throw new StringTooLongException(maxDBStringLength, environmentalInterface.length());
    }
    environmentalInterfaces.add(environmentalInterface);
}

Sekarang semua tabel dibuat. Sayangnya saya sekarang memiliki masalah NullPointer, yang Anda temukan di sini Envers NullPointerException saat membuat data pengujian - untuk berjaga-jaga jika Anda mengalami kurva belajar yang sama.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Javascript mengirim data melalui POST di addon firefox

  2. Menyimpan gambar di MySQL dari Java

  3. mySQL 'di mana nama TIDAK DI' tidak berfungsi?

  4. Konversikan situs web PHP/MYSQL/ yang ada ke Aplikasi IOS/Android Asli

  5. Bagaimana cara memprioritaskan kueri tertentu di MySQL?