Problema de Collation

14/06/2005 - 20:29 por Berta Gomez | Informe spam
Instale los fuentes de mi sistema para trabajar en otra Pc, otra instalacion
de sql server y en una comparacion me da un error 446 (sobre collation).
Veo que lo da cuando comparo un campo tipo char de una tabla temporal con el
campo de otra tabla.

Busque en los BOL y lei que debo indicarle la collating sequence cuando creo
una tabla temporal tambien pero como se cual es la cs que debo indicar ?
Como se puede corregir eso ?

Gracias..

Preguntas similare

Leer las respuestas

#1 Alejandro Mesa
14/06/2005 - 20:58 | Informe spam
Debes indicar la collation the columna de la tabla que comparas con la
temporal. Por ejemplo, supongamos que comparamos la columna [lastname] de la
tabla [employees] de la bd [northwind], entonces puedes saber la collation
usando la vista information_schema.columns:

select
collation_name
from
information_schema.columns
where
table_schema = 'dbo'
and table_name = 'employees'
and column_name = 'lastname'


AMB


"Berta Gomez" wrote:

Instale los fuentes de mi sistema para trabajar en otra Pc, otra instalacion
de sql server y en una comparacion me da un error 446 (sobre collation).
Veo que lo da cuando comparo un campo tipo char de una tabla temporal con el
campo de otra tabla.

Busque en los BOL y lei que debo indicarle la collating sequence cuando creo
una tabla temporal tambien pero como se cual es la cs que debo indicar ?
Como se puede corregir eso ?

Gracias..



Respuesta Responder a este mensaje
#2 Berta Gomez
15/06/2005 - 00:00 | Informe spam
Oye y como yo puedo detectar cual es la collation por defecto de la base de
datos (o la del servidor, no se cual es la que aplica) es decir la que
aplica por defecto cuando se crea una tabla temporal en un SP ?

Ademas, esta collation se puede cambiar despues de crear una bd ?



"Alejandro Mesa" wrote in message
news:
Debes indicar la collation the columna de la tabla que comparas con la
temporal. Por ejemplo, supongamos que comparamos la columna [lastname] de


la
tabla [employees] de la bd [northwind], entonces puedes saber la collation
usando la vista information_schema.columns:

select
collation_name
from
information_schema.columns
where
table_schema = 'dbo'
and table_name = 'employees'
and column_name = 'lastname'


AMB


"Berta Gomez" wrote:

> Instale los fuentes de mi sistema para trabajar en otra Pc, otra


instalacion
> de sql server y en una comparacion me da un error 446 (sobre collation).
> Veo que lo da cuando comparo un campo tipo char de una tabla temporal


con el
> campo de otra tabla.
>
> Busque en los BOL y lei que debo indicarle la collating sequence cuando


creo
> una tabla temporal tambien pero como se cual es la cs que debo indicar ?
> Como se puede corregir eso ?
>
> Gracias..
>
>
>
Respuesta Responder a este mensaje
#3 Jorge Martinez
15/06/2005 - 00:24 | Informe spam
Si tienes SQL Server (cualquier edicion) mediante el boton dcho sobre el
servidor y la BBDD y vas a propiedades, alli tienes las intercalaciones.

Y si tienes MSDE utiliza sp_helpdb

SalU2

"Berta Gomez" escribió en el mensaje
news:#
Oye y como yo puedo detectar cual es la collation por defecto de la base


de
datos (o la del servidor, no se cual es la que aplica) es decir la que
aplica por defecto cuando se crea una tabla temporal en un SP ?

Ademas, esta collation se puede cambiar despues de crear una bd ?



"Alejandro Mesa" wrote in


message
news:
> Debes indicar la collation the columna de la tabla que comparas con la
> temporal. Por ejemplo, supongamos que comparamos la columna [lastname]


de
la
> tabla [employees] de la bd [northwind], entonces puedes saber la


collation
> usando la vista information_schema.columns:
>
> select
> collation_name
> from
> information_schema.columns
> where
> table_schema = 'dbo'
> and table_name = 'employees'
> and column_name = 'lastname'
>
>
> AMB
>
>
> "Berta Gomez" wrote:
>
> > Instale los fuentes de mi sistema para trabajar en otra Pc, otra
instalacion
> > de sql server y en una comparacion me da un error 446 (sobre


collation).
> > Veo que lo da cuando comparo un campo tipo char de una tabla temporal
con el
> > campo de otra tabla.
> >
> > Busque en los BOL y lei que debo indicarle la collating sequence


cuando
creo
> > una tabla temporal tambien pero como se cual es la cs que debo indicar


?
> > Como se puede corregir eso ?
> >
> > Gracias..
> >
> >
> >


Respuesta Responder a este mensaje
#4 Alejandro Mesa
15/06/2005 - 01:32 | Informe spam
Gracias a Jorge por su ayuda.

Tambien puedes usar las funciones serverproperty y databasepropertyex.

Ejemplo:

select
serverproperty('collation'),
databasepropertyex('tempdb', 'collation')
go


AMB

"Jorge Martinez" wrote:

Si tienes SQL Server (cualquier edicion) mediante el boton dcho sobre el
servidor y la BBDD y vas a propiedades, alli tienes las intercalaciones.

Y si tienes MSDE utiliza sp_helpdb

SalU2

"Berta Gomez" escribió en el mensaje
news:#
> Oye y como yo puedo detectar cual es la collation por defecto de la base
de
> datos (o la del servidor, no se cual es la que aplica) es decir la que
> aplica por defecto cuando se crea una tabla temporal en un SP ?
>
> Ademas, esta collation se puede cambiar despues de crear una bd ?
>
>
>
> "Alejandro Mesa" wrote in
message
> news:
> > Debes indicar la collation the columna de la tabla que comparas con la
> > temporal. Por ejemplo, supongamos que comparamos la columna [lastname]
de
> la
> > tabla [employees] de la bd [northwind], entonces puedes saber la
collation
> > usando la vista information_schema.columns:
> >
> > select
> > collation_name
> > from
> > information_schema.columns
> > where
> > table_schema = 'dbo'
> > and table_name = 'employees'
> > and column_name = 'lastname'
> >
> >
> > AMB
> >
> >
> > "Berta Gomez" wrote:
> >
> > > Instale los fuentes de mi sistema para trabajar en otra Pc, otra
> instalacion
> > > de sql server y en una comparacion me da un error 446 (sobre
collation).
> > > Veo que lo da cuando comparo un campo tipo char de una tabla temporal
> con el
> > > campo de otra tabla.
> > >
> > > Busque en los BOL y lei que debo indicarle la collating sequence
cuando
> creo
> > > una tabla temporal tambien pero como se cual es la cs que debo indicar
?
> > > Como se puede corregir eso ?
> > >
> > > Gracias..
> > >
> > >
> > >
>
>



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida