Mysql obcina połączony wynik funkcji GROUP_CONCAT

Utworzono widok, który używa GROUP_CONCAT do łączenia wyników z zapytania w kolumnie produktów z typem danych'varchar(7) utf8_general_ci' w kolumnie o nazwieconcat_products. Problem polega na tym, że mysql obcina wartość kolumny concat_products. phpMyAdmin mówi, że typ danych kolumny concat_products tovarchar(341) utf8_bin

produkty stołowe:

CREATE TABLE `products`(
`productId` tinyint(2) unsigned NOT NULL AUTO_INCREMENT, 
`product` varchar(7) COLLATE utf8_general_ci NOT NULL, 
`price` mediumint(5) unsigned NOT NULL, 
PRIMARY KEY (`productId`)) 
ENGINE=InnoDB AUTO_INCREMENT=28 DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci

concat_products_vw Wyświetl:

CREATE VIEW concat_products_vw AS
SELECT
  `userId`,
    GROUP_CONCAT(CONCAT_WS('_', `product`, `productId`, `price`) 
        ORDER BY `productId` ASC SEPARATOR '*') AS concat_products
FROM
  `users`
LEFT JOIN `products` 
ON `users`.`accountBalance` >= `product`.`price`
GROUP BY `productId` 

zgodnie z podręcznikiem mysql

Wartości w kolumnach VARCHAR są łańcuchami o zmiennej długości
Długość można określić jako wartość od 1 do 255 przed MySQL 4.0.2 i 0 do 255 od MySQL 4.0.2.

edytować:

Values in VARCHAR columns are variable-length strings. The length can be specified as a value from 0 to 65,535.

Dlaczego mysql określa więcej niż 255 znaków dla kolumny varchar concat_products? (Rozwiązane!)

Dlaczego uf8_bin zamiast utf8_general_ci?

Czy można zmienić typ danych kolumny w widoku na przykład w moim przypadku na tekst w kolumnie concat_products?

Jeśli nie, co mogę zrobić, aby zapobiec mysql z obcięciem kolumny concat_products?

questionAnswers(2)

yourAnswerToTheQuestion