tabla - tipos de datos equivalentes de mysql
tipos de datos en mysql ejemplos (3)
En MySQL 5, NVARCHAR (abreviatura de National Varchar) es compatible y utiliza utf8 como el conjunto de caracteres predefinido.
http://dev.mysql.com/doc/refman/5.0/en/charset-national.html
Vengo de un fondo de SQL Server. ¿Cuáles serían los tipos de datos equivalentes para los siguientes en MySQL:
NVARCHAR
: proporciona compatibilidad con caracteres internacionales de varios bytes para todos los idiomas
NVARCHAR(max)
: permite documentos de texto muy largos
Pasando por http://msdn.microsoft.com/en-us/library/ms186939.aspx , diría que
VARCHAR(n) CHARSET ucs2
es el equivalente más cercano Pero no veo a mucha gente usando esto, más a menudo la gente usa:
VARCHAR(n) CHARSET utf8
Que yo sepa, tanto los conjuntos de caracteres utf8 como ucs2 permiten los mismos caracteres, solo la codificación es diferente. Por lo tanto, cualquiera de los dos debería funcionar, y probablemente prefiero este último puesto que se usa con más frecuencia.
Hay algunas limitaciones en el soporte Unicode de MySQL que pueden o no aplicarse a su caso de uso. Consulte http://dev.mysql.com/doc/refman/5.0/en/charset-unicode.html para obtener más información sobre el soporte Unicode de MySQL.
el equivalente es VARCHAR
o TEXT
MySql soporta nchar y nvarchar pero de una manera diferente. Esto se implementa utilizando el conjunto de caracteres y la intercalación (que es un conjunto de reglas utilizadas para la comparación de cadenas que utilizan el conjunto de caracteres, por ejemplo, si la comparación debe distinguir entre mayúsculas y minúsculas)
MySql define el conjunto de caracteres en 4 niveles:
Servidor
Base de datos
Mesa
Columna
el conjunto de caracteres se hereda del nivel superior inmediato si no especifica uno. Lo que debe hacer es asegurarse de que la columna que desea hacer del tipo nvarchar tenga "conjunto de caracteres" establecido en cualquier conjunto de caracteres Unicode (utf8 es la mejor opción, creo) explícitamente o por herencia.
Para el nivel de columna puede establecer "conjunto de caracteres" de la siguiente manera:
create table nvarchar_test
(
_id varchar(10) character set utf8,
_name varchar(200) character set ascii
)
En el ejemplo anterior, _id podrá tomar 10 caracteres Unicode y _name podrá tomar 100 caracteres Unicode (cada carácter Unicode se evaluará en dos caracteres ASCII)
Por favor, consulte la referencia de MySql para una explicación más detallada.