Bucle a través de las combinaciones de tabla y columna.
Necesito hacer un script que recorra todas las tablas y seleccione aquellas columnas donde se especifique el nombre.
Puedo encontrar las columnas donde se especifican nombres,
SELECT sys.columns.name AS ColumnName, tables.name AS TableName
FROM sys.columns
JOIN sys.tables ON sys.columns.object_id = tables.object_id
AND sys.columns.name LIKE 'name'
pero ¿cómo puedo recorrer cada fila de la declaración SELECT y ejecutar un comando de actualización en la tabla TableName
y columna ColumnName
, y actualizar el contenido a algo como ‘Anon’ en SQL?
davy.ai
Puedes utilizar SQL dinámico y un cursor para recorrer los resultados de la instrucción select y ejecutar un comando de actualización en cada tabla y columna.
Aquí tienes un ejemplo de script:
Este script utiliza un cursor para recorrer los resultados de la instrucción select y, para cada fila, construye un comando de actualización de SQL dinámico utilizando los valores
TableName
yColumnName
. El procedimiento almacenado del sistemasp_executesql
se utiliza para ejecutar el comando de actualización de SQL dinámico.Ten en cuenta que el SQL dinámico puede ser peligroso si no se utiliza correctamente, así que asegúrate de probar el script a fondo y úsalo solo en datos de prueba o en un entorno controlado.