Mysql
 sql >> база данни >  >> RDS >> Mysql

Грешка с незаконен микс от съпоставяне от MySql при стартиране на пакета за тестове на rails

Добавянето на съпоставяне:utf8_general_ci към вашия файл database.yml, както сте направили, трябва да свърши работа. Опитайте да пресъздадете тестовата база данни, като използвате "rake RAILS_ENV=test db:migrate:reset db:fixtures load" - предупреждение, че това ще изчисти всички данни, които имате там извън приспособленията.

Това проработи за мен. За да проверите дали виждате съпоставянето в базата данни, таблиците и колоните, можете да изпълните следното:

-- 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;

Всичко във вашата тестова база данни вече трябва да има съпоставянето, посочено в 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. Уникалните ключове на MyISAM се отрязват на 64 байта, което води до сблъсъци

  2. Кой е най-големият идентификационен номер, който autoincrement може да произведе в mysql

  3. Как да направя заявка за отговор на коментар в MYSQL?

  4. как да използвам ФОРМАТ НА ДАТА в моята заявка?

  5. mysql - последното въвеждане за всеки идентификатор