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

Campuran ilegal dari kesalahan collations dari MySql saat menjalankan rails test suite

Menambahkan susunan:utf8_general_ci ke file database.yml Anda seperti yang telah Anda lakukan akan berhasil. Coba buat ulang basis data pengujian menggunakan "rake RAILS_ENV=test db:migrate:reset db:fixtures load" - peringatan ini akan menghapus semua data yang Anda miliki di luar perlengkapan.

Itu berhasil untuk saya. Untuk memverifikasi melihat susunan pada database, tabel, dan kolom, Anda dapat menjalankan yang berikut:

-- Database Collations:
SELECT schema_name,default_character_set_name,default_collation_name 
FROM information_schema.SCHEMATA 
WHERE schema_name not IN ('mysql');

-- Table Collations:
SELECT T.table_schema, T.table_name, T.TABLE_COLLATION, CCSA.CHARACTER_SET_NAME 
FROM information_schema.`TABLES` T,
 information_schema.`COLLATION_CHARACTER_SET_APPLICABILITY` CCSA
WHERE CCSA.collation_name = T.table_collation
AND T.table_schema not IN ('mysql');

-- Column Collations:
SELECT table_schema, table_name, column_name, collation_name, character_set_name
FROM information_schema.`COLUMNS` C
WHERE C.table_schema not IN ('mysql')
ORDER BY 1,2,4;

Semua yang ada di database pengujian Anda sekarang harus memiliki susunan yang ditentukan dalam database.yml.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Laravel SQLSTATE [23000]:Pelanggaran batasan integritas:1452 Tidak dapat menambah atau memperbarui baris anak

  2. Struktur terbaik untuk database relasional dengan artikel dan tag

  3. Cara memperbarui banyak kolom di mysql menggunakan php

  4. Apa tujuan dari character_set_connection?

  5. SELECT / GROUP BY - segmen waktu (10 detik, 30 detik, dll)