Es posible recuperar el nombre de todas las columnas de sys.columns
Es posible recuperar el nombre de toda la tabla de sys.tables
Pero es imposible recuperar todos los datos de todas las tablas. Tan pronto como más de una tabla esté involucrada en una consulta, es necesario un JOIN. A menos que se proporcionen condiciones de unión, las tablas se unirán como producto cartesiano completo, lo que significa que cada fila de cada tabla se emparejará con cada fila de otras 11 tablas. Tal consulta como usted solicite produciría para 10 tablas con 10 registros cada uno, no menos de 10e10 registros, es decir. 100 mil millones de registros. Estoy seguro de que no quieres esto.
Tal vez si se le explica lo que lo a lograr, no cómo, nos puede ayudar mejor.
Para seleccionar * desde cada mesa, una tras otra, puede utilizar los indocumentados, pero bien conocido sp_msforeachtable:
sp_msforeachtable 'select * from ?'
¿Por qué quieres hacer esto? –
Eso realmente no tiene sentido. ¿Qué esperas exactamente de esta consulta? –
Si quería inyectar SQL, esa es una de las cosas más simples que podría inyectar para recuperar los metadatos de los metadatos. Para hacerlo realmente se requiere una declaración usando vistas del sistema, etc., pero ya ves lo que quiero decir. – Andrew