La conversión falló al convertir de una cadena de caracteres a un identificador único

Un usuario Pregunto ✅

GTPowerBIUser

Recibo el siguiente error en una tabla de SQL Server:

Error de OLE DB u ODBC: [DataSource.Error] Microsoft SQL: la conversión falló al convertir de una cadena de caracteres a un identificador único.

¿Alguien sabe cómo solucionar esto? No creo que pueda hacer mucho para cambiar la tabla, ya que necesito que una de las columnas sea la clave principal.

Anónimo

Hola

Yo haría una de dos cosas en Power Query Editor

A. Cambie el tipo de datos a String pero asegúrese de que sobrescriba el original

o

A. Si no necesita la columna, escriba un SQL Select y no seleccione la columna en cuestión

Espero que esto ayude

Si respondo a su pregunta, marque mi publicación como una solución, esto también ayudará a otros.
Por favor, felicite por su apoyo.

Tomas Santandreu Polanco | Consultor principal de Business Intelligence
www.designmind.com

mwegener

Hola @GTPowerBIUser,

Creo que es un problema de plegado de consultas.

¿Fusiona la consulta con otra consulta?

Quizás puedas usar Table.Buffer.

https://docs.microsoft.com/en-us/powerquery-m/table-buffer

Piense en Table.Buffer como «cargue esta tabla en la memoria y deje de plegar las operaciones posteriores al origen de datos».

Si respondí a su pregunta, marque mi publicación como solución, esto también ayudará a otros.

Por favor, felicite por su apoyo.

GTPowerBIUser

En respuesta a mwegener

Las otras opciones no funcionaron, así que estoy tratando de usar table.buffer pero me equivoco con la sintaxis. ¿Sabes lo que estoy haciendo mal aquí?

error: Expression.Error: La tabla de importación.buffer no coincide con exportaciones. ¿Te perdiste una referencia de módulo?

let
    Source = Sql.Database("prod.windows.net", "prod-db"),
    dbo_vps_Sum = Source{[Schema="dbo",Item="vps_Sum"]}[Data],
    dbo_vpsView_SumBuffered = table.buffer(dbo_vps_Sum),
    #"Replaced Value" = Table.ReplaceValue(dbo_vpsView_SumBuffered,"D MHS","D",Replacer.ReplaceText,{"End Customer"}),
    #"Trimmed Text" = Table.TransformColumns(#"Replaced Value",{{"End Customer", Text.Trim, type text}}),
    #"Renamed Columns" = Table.RenameColumns(#"Trimmed Text",{{"End Customer", "End Customer(OneView)"}})
in
    #"Renamed Columns"

mwegener

En respuesta a GTPowerBIUser

Hola @GTPowerBIUser,

distingue entre mayúsculas y minúsculas. Tcapaz.Buffer

Si respondí a su pregunta, marque mi publicación como solución, esto también ayudará a otros.

Por favor, felicite por su apoyo.

GTPowerBIUser

En respuesta a mwegener

El mismo error, excepto que ahora lo obtengo en el editor de consultas y no al actualizar la tabla en Power BI:

DataSource.Error: Microsoft SQL: la conversión falló al convertir de una cadena de caracteres a un identificador único.
Detalles:
DataSourceKind = SQL
Ruta de origen de datos = prod-sql.database.windows.net; prod-db
Mensaje = La conversión falló al convertir de una cadena de caracteres a un identificador único.
Número = 8169
Clase = 16

dejar
Fuente = Sql.Databases («prod-sql.database.windows.net»),
# «prod-db» = Fuente {[Name=»prod-db»]}[Data],
dbo_vps_Sum = # «prod-db» {[Schema=»dbo»,Item=»vps_Sum»]}[Data],
vps_Buffer = Table.Buffer (dbo_vps_Sum)
en
vps_Buffer

Intenté eliminar la relación entre esta tabla y otra, pero eso tampoco ayudó.

En respuesta a GTPowerBIUser

@GTPowerBIUser

Esto parece estar más relacionado con Transact-SQL. Puede visitar https: //social.msdn.microsoft.com/Forums/sqlserver/en-US/home? Category = & forum = transactsql & filter = & so ….

mwegener

En respuesta a GTPowerBIUser

Hola @GTPowerBIUser,

¿Resolviste tu problema?

Si respondí a su pregunta, marque mi publicación como solución, esto también ayudará a otros.

Por favor, felicite por su apoyo.

mwegener

En respuesta a GTPowerBIUser

Hola @GTPowerBIUser

¿Es vps_Sum una tabla o vista SQL?

¿Qué pasa si consultas

SELECT * FROM [dbo].[vps_Sum]

en SQL Management Studio

Si respondí a su pregunta, marque mi publicación como solución, esto también ayudará a otros.

Por favor, felicite por su apoyo.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *