jmiridium
Me gustaría ejecutar la siguiente consulta en varios servidores e ingresar los resultados en una tabla:
SELECCIONE
SERVERPROPERTY (‘MachineName’) AS [ServerName],
SERVERPROPERTY (‘ServerName’) COMO [ServerInstanceName],
SERVERPROPERTY (‘InstanceName’) AS [Instance],
SERVERPROPERTY (‘Edición’) COMO [Edition],
SERVERPROPERTY (‘ProductVersion’) COMO [ProductVersion],
Izquierda (@@ Versión, Charindex (‘-‘, @@ versión) – 2) Como VersionName
es posible?
prathy
Hola,
Lo que necesita es una consulta con todos los nombres de servidor para los que desea obtener información del servidor. Luego puede crear una función en el editor de consultas de Power Query / Power BI como se muestra a continuación
dejar
Fuente = (ServerName como cualquiera) => dejar
Fuente = Sql.Database (ServerName, «maestro», [Query=»SELECT#(lf) SERVERPROPERTY(‘MachineName’) AS [ServerName], # (lf) SERVERPROPERTY (‘ServerName’) AS [ServerInstanceName], # (lf) SERVERPROPERTY (‘InstanceName’) AS [Instance], # (lf) SERVERPROPERTY (‘Edición’) AS [Edition], # (lf) SERVERPROPERTY (‘ProductVersion’) AS [ProductVersion], # (lf) Izquierda (@@ Versión, Charindex (‘-‘, @@ versión) – 2) Como VersionName «])
en
Fuente
en
Fuente
La consulta anterior utiliza el parámetro ServerName. Una vez que tenga la función, puede invocar la función en el editor de consultas, elija la columna nombre del servidor como valor para la función. lo que le permitirá ejecutar esa función para todos los servidores al mismo tiempo.
¡Espero que ayude!
Gracias,
Prathy
prathy
Hola,
Lo que necesita es una consulta con todos los nombres de servidor para los que desea obtener información del servidor. Luego puede crear una función en el editor de consultas de Power Query / Power BI como se muestra a continuación
dejar
Fuente = (ServerName como cualquiera) => dejar
Fuente = Sql.Database (ServerName, «maestro», [Query=»SELECT#(lf) SERVERPROPERTY(‘MachineName’) AS [ServerName], # (lf) SERVERPROPERTY (‘ServerName’) AS [ServerInstanceName], # (lf) SERVERPROPERTY (‘InstanceName’) AS [Instance], # (lf) SERVERPROPERTY (‘Edición’) AS [Edition], # (lf) SERVERPROPERTY (‘ProductVersion’) AS [ProductVersion], # (lf) Izquierda (@@ Versión, Charindex (‘-‘, @@ versión) – 2) Como VersionName «])
en
Fuente
en
Fuente
La consulta anterior utiliza el parámetro ServerName. Una vez que tenga la función, puede invocar la función en el editor de consultas, elija la columna nombre del servidor como valor para la función. lo que le permitirá ejecutar esa función para todos los servidores al mismo tiempo.
¡Espero que ayude!
Gracias,
Prathy
jmiridium
En respuesta a prathy
¿Cómo ingreso varios servidores en el campo de entrada?
v-qiuyu-msft
En respuesta a jmiridium
Hola @jmiridium,
La consulta que proporcionó puede devolver un registro cada vez. Puede utilizar la sugerencia de @ prathy para definir una función personalizada e invocar para devolver varias tablas que contengan la información de cada servidor por tabla, luego use las consultas anexadas para fusionar esas tablas en una. Siga los pasos a continuación:
1. Cree una consulta en blanco, escriba la consulta sugerida por @prathy.
2. Ingrese el nombre del servidor y haga clic en Invocar, devolverá una tabla que contiene información cuando se ejecute la consulta en ese servidor específico. Puede invocar esta función varias veces para devolver varias tablas.
3. Utilice la función Fusionar consulta como nueva.
4. Puede configurar las tablas generadas por la función de invocación para que no se carguen en la tabla y solo carguen la tabla adjunta al desmarcar Habilitar carga.
Consulte el archivo .pbix adjunto.
Atentamente,
Qiuyun Yu
jmiridium
En respuesta a v-qiuyu-msft
Esto funcionó, pero agregué la consulta debido a varios servidores que necesitaban esta consulta para ejecutarse y crear una sola tabla
jmiridium
En respuesta a jmiridium
Intentando hacer lo mismo con MySQL. Recibiendo este error:
Fórmula.Firewall: La consulta ‘ENTMYSQLCC’ (paso ‘Consulta adjunta’) hace referencia a otras consultas o pasos, por lo que es posible que no acceda directamente a una fuente de datos. Reconstruya esta combinación de datos.