problemas con campos de texto

10/07/2006 - 17:03 por Manuel | Informe spam
hola a todos los participantes de este foro

les cuento mi problema, se encargaron modificaciones a uno de los sistemas
de la empresa a un desarrollador externo, el creo algunos procedimientos
almacenados en donde crea y utiliza tablas temporales para generar una lista
de resultados
(asocia el listado de productos con su proveedor), la inserción de datos
funciona bien, pero al momento de hacer una comparación contra el código del
producto que es del tipo char de la tabla temporal, contra la tabla
productos da un error de collate. ( #ProdProveedor.PrdCod Producto.PrdCod)

el problema lo subsane por el momento, creando de forma permanente la tabla,
pero considero que la solución debiera ser otra, alguien podría darme una
mano con esto.


desde ya agradezco la colaboración de ustedes
Saludos
Manuel

Preguntas similare

Leer las respuestas

#1 Alejandro Mesa
10/07/2006 - 17:23 | Informe spam
Manuel,

Chequea la definicion de la columna [PrdCod] en la tabla [Producto] y usa la
misma clausula "collate" para crear la columna en la tabla temporal.

select
DATA_TYPE,
CHARACTER_MAXIMUM_LENGTH,
COLLATION_NAME
from
INFORMATION_SCHEMA.COLUMNS
where
TABLE_NAME = 'Products'
and COLUMN_NAME = 'ProductName'

create table #t (
c1 nvarchar(40) collate SQL_Latin1_General_CP1_CI_AS
)

insert into #t values(N'Northwoods Cranberry Sauce')

select
a.*
from
dbo.Products as a
inner join
#t as b
on a.ProductName = b.c1

drop table #t
go

Si no usas el mismo collation, entonces SQL Server dara el error que
mencionastes.

Ejemplo:

create table #t (
c1 nvarchar(40) collate SQL_Latin1_General_CP1_CI_AI
)

insert into #t values(N'Northwoods Cranberry Sauce')

select
a.*
from
dbo.Products as a
inner join
#t as b
on a.ProductName = b.c1

drop table #t
go

Result:

Server: Msg 446, Level 16, State 9, Line 7
Cannot resolve collation conflict for equal to operation.


AMB

"Manuel" wrote:

hola a todos los participantes de este foro

les cuento mi problema, se encargaron modificaciones a uno de los sistemas
de la empresa a un desarrollador externo, el creo algunos procedimientos
almacenados en donde crea y utiliza tablas temporales para generar una lista
de resultados
(asocia el listado de productos con su proveedor), la inserción de datos
funciona bien, pero al momento de hacer una comparación contra el código del
producto que es del tipo char de la tabla temporal, contra la tabla
productos da un error de collate. ( #ProdProveedor.PrdCod > Producto.PrdCod)

el problema lo subsane por el momento, creando de forma permanente la tabla,
pero considero que la solución debiera ser otra, alguien podría darme una
mano con esto.


desde ya agradezco la colaboración de ustedes
Saludos
Manuel




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