jueves, 16 de octubre de 2014

Los mejores servicios en la nube para desarrolladores

Github, el repositorio de proyectos más grande del mundo
Github
Github es una herramienta fundamental para cualquier desarrollador. Es el lugar preferido para alojar su repositorio público y poder colaborar de forma distribuida con otros desarrolladores.
Muchos de los proyectos más populares Open Source utilizan Github para alojar su código o realizar integración continua utilizando todo tipo de plugins y herramientas que se conectan con la API de Github y los mágicos hooks de git.
Si bien, no es un servicio en la nube al uso como podríamos pensar si hablamos de PaaS o IaaS, con Github podemos crear las páginas de soporte de nuestros proyectos gracias a su GitHub page, distribuir nuestro código para que cualquier desarrollador lo clone o haga un fork usando git. Además de todos el sistema de tickets, wiki, milestone para gestionar los proyectos a gran escala.
Más información | Github

Google App Engine, la nube de Google cada vez más grande

Google App Engine
La competencia entre los PaaS es dura. Google ha ido metiendo la cabeza en esa lucha especialmente contra Amazon ofreciendo su alternativa muy ligada a cómo se escalan servicios en Google. Google App Engine apareció de forma muy básica allá por 2008 soportando tan sólo Python, aunque rápidamente incorporó Java y más adelante se han ido añadiendo Groovy, JRuby, Scala, Clojure o el más reciente PHP y su experimento con Go.
La mayor diferencia frente a servicios como EC2 es su facilidad de despliegue en la nube. Como buen PaaS, simplemente nos debemos de preocupar de desarrollar la aplicación y el propio App Engine lo escalará a las maquinas que sean necesaria de forma totalmente transparente. Cuenta con varios plugins y SDK para Eclipse para facilitar la tarea de programación y despliegue.
El ecosistema de Google App Engine ha ido creciendo incorporando más servicio de Google Cloud como Google Cloud SQL, Google Cloud Storage o Google Cloud Endpoints para crear el backends de apps móviles.
Más información | Google App Engine

Windows Azure, la nube de microsoft

Windows Azure
Tengo que reconocer que cuando empecé a escuchar que Microsoft estaba preparando un servicio en la nube tenía mis reparos sobre si sería demasiado enfocado a plataformas Windows. Todo lo contrario, Azure está abierto a diversas tecnologías como Java, PHP, Ruby, Python o Node.js, sin olvidarnos de .NET. Y sus SDKs están disponibles para Mac, Windows o Linux, un acierto esa apertura.
Por supuesto, las maquinas virtuales o algunas de las bases de datos que ofrece son propietarias de Microsoft, aunque su fiabilidad en la nube es incuestionable.
Entre los servicios que ofrece como plataforma en la nube nos encontramos servicios para plataformas móviles iOS, Android, Windows Phone o Xamarin para el envío de notificaciones y backend, big data, almacenamiento, la propia de infraestructura de nuestra aplicación, etc..
Más información | Windows Azure

Conclusiones: muy difícil quedarse con tan sólo tres servicios en la nube

Aunque en esta selección del repaso de tecnologías del 2013 sólo queríamos mencionar los tres más destacados, esta categoría tiene un un gran número de plataformas y servicios increíbles para los desarrolladores. Y más que aparecerán en este 2014. Es el mayor filón para muchas empresas que han visto que ofrecer servicios a los desarrolladores tiene unas altas expectativas de monetización. Ellos nos ofrecen las herramientas y nosotros podemos crear aplicaciones de forma más ágil y eficaz. Si ahora creas una startup es imprescindible que uses un servicio de los mencionados para poder ir escalando tu infraestructura según tus necesidades.
A continuación algunos de los servicios en la nube que no podíamos dejar de mencionar:
Amazon Web Services para muchos de nosotros aunque no haya sido seleccionado entre los tres más destacados, quizás porque es algo habitual contar con EC2 o un S3 en nuestros proyectoscabe un mención muy especial. Y este año hemos conocido más servicios que se unen a su tremendo ecosistemas como los más recientes Amazon Kinesis o Amazon Simple Notification Services (SNS).
Parse, sin duda, si nos planteamos añadir a nuestras aplicaciones notificaciones push es uno de los primeros servicios en la nube al que recurriríamos. Nos ofrece un amplio abanico de servicios para el envío y gestión de notificaciones tanto a Android como iOS, así como ejecutar script en la nube para llevar parte de la lógica del envío a un backend distribuido con su reciente servicio Cloud Code.
Apigee es un servicio en la nube que nos permite manejar nuestra API con un potente panel de herramientas que van desde la gestión de la seguridad, caché, estadísticas como el mantenimiento de distintas versiones o tratamiento y transformación de los datos. Además nos permite crear en sencillo paso una consola sandbox para poder enseñar el uso de nuestra API a los desarrolladores. Empresas como Twitter la usan para este fin.
Y simplemente enlazando al resto de servicios que teníamos en nuestra lista HerokuCloud Foundry,Simperium o Bitbucket.

Lista de servicios y productos gratis de Google en internet


Google es la empresa que más recursos gratis pone a disposición de nosotros en internet.Son pocos los servicios de Google de pago, generalmente enfocados a empresas que son las que de forma indirecta hacen posible que podamos acceder a la gran mayoría de ellos gratis. Por supuesto para utilizarlos es necesario poseer una cuenta de Google, que se obtiene automáticamente al crear una cuenta de correo en Gmail, aunque ahora también se puede crear una cuenta de Google sin Gmail.

Bien vale la pena dedicar un artículo a mencionar estos servicios, promocionarlos y dar a conocer algunos casi desconocidos. En esta página no los listamos todos (son más de 100), solo los más populares, útiles y por supuesto, que son gratuitos. Trataremos de mantener este artículo actualizado ya que cada año se agregan servicios y se eliminan algunos de ellos. Anímate y dale una ojeada a la lista, de seguro descubrirás algunos productos que no conocías y te podrían ser de utilidad. 



Servicios de búsquedas e información


Búsqueda de GoogleEl primero y principal de los servicios de Google. Permite buscar en una enorme base de datos que contiene la mayor parte de las páginas web existentes en internet.
Otros servicios especializados permiten hacer búsquedas solo en determinado tipo de contenido:
Buscar solo en imágenes Google Imágenes
Buscar solo en webblogs Google Blog Search
Buscar entre datos de publicaciones escolares Google Scholar
Buscar solo libros Google Books
Buscar información sobre las finanzas Google Finance.
Google AlertsSistema de notificaciones mediante el correo electrónico que envía alertas basadas en un término de búsqueda, cuando aparece en los resultados del buscador.
Google KeepPara tomar notas y tenerlas a nuestra disposición online (similar a Evernote).
Google DocsPermite crear y compartir documentos, hojas de cálculo y presentaciones online. Funciona de forma similar a los programas de la suite Office.
Google CalendarCalendario online integrado con Gmail. Disponible para acceder a los datos desde equipos o dispositivos diferentes.
Google LocalPermite a las organizaciones, negocios y pequeñas marcas con una ubicación física tener una mejor visibilidad en las búsquedas.
Google NowAsistente personal inteligente que sugiere el contenido o servicio más apropiado, usando la voz.
Google NewsGoogle Noticias muestra las noticias más recientes sobre cualquier tema, introduciendo un término. Permite suscribirse para recibirlas por email. Obtiene estas noticias rastreando varios sitios web dedicados a la publicación.
Puedes mostrar las noticias en tu blog o compartir con Google News lo que publicas, si cumples con sus reglas haciendo la solicitud.
Lee más información.

Servicios sociales y comunicación

Google MailEl principal y el más importante servicio de correo electrónico de internet, con todas las funcionalidades necesarias. Por su rapidez, seguridad y las opciones que incluye, hace casi innecesario usar otro servicio de email.
Lee mas informacion.
Google PlusGoogle+, segunda red social en tamaño en internet. Integrada a los principales servicios de Google. Al crear una cuenta de Google, automáticamente formamos parte de esta red social.
Google Profiles Permite administrar nuestro perfil personal en la red social Google+, para que se debe mostrar sobre nosotros en internet.
Google HangoutsServicio de mensajería instantánea para enviar mensajes, hacer llamadas y efectuar video conferencias entre varias personas. Pretende convertirse en una plataforma integral de comunicación global. De ser un chat de texto pasó a soportar videoconferencias de hasta diez participantes y también a tomar el control de los SMS de los dispositivos con Android. Se dice que próximamente que integrara a Google Voice.
Google GroupsPermite crear grupos de debate sobre casi cualquier tema. Los usuarios pueden crear nuevos grupos o unirse a los existentes, crear publicaciones y compartir archivos.
Google VoiceEntrega un número telefónico para hacer llamadas gratis en los Estados Unidos y baratas al resto del mundo. Solo disponible para USA.
Google Play MusicTienda de música disponible online. Facilita tener nuestra música disponible en la nube para oírla usando dispositivos diferentes. Después de crear una cuenta podremos acceder a más de 20 000 canciones gratis.
Lee como usar Google Play Music
Google PlayGoogle Play es la tienda de contenidos de Android. En ella se pueden encontrar millones de aplicaciones, juegos, libros, películas y canciones de pago y gratis.
En la sección Descubre el mundo de Google Play se recopila el contenido más popular de cada categoría.
OrkutRed social creada en el 2004. Muy popular en Brasil y la India.
Google Cultural InstituteEl Instituto Cultural es una especie de museo virtual en el que se exponen y promocionan eventos culturales y artísticos de todo el mundo. En fechas señaladas, así como en aniversarios se puede encontrar mucha información de interés. Hermosa iniciativa de Google reciente, que esperamos se promueva más.
ActúaActúa es un proyecto de Google poco conocido que agrupa personas de todo el mundo en defensa de una Web libre y abierta. Promueve la Libertad de participación y Libertad de expresión en internet. Al registrarnos nos mantiene informado sobre todas las legislaciones que pueden afectarnos y las iniciativas que surgen a favor de la libre expresión y comunicación.

Mapas, localización y exploración

Google MapsVarios tipos de mapas de todo el mundo.
Google Street ViewMuestra fotos panorámicas de lugares y sitios en los mapas de Gmaps.
Google Map MakerServicio para contribuir editando y agregando información a los mapas de Gmaps.
Google EarthSoftware para disponer de un Atlas virtual en 3D del mundo. Usa para eso imágenes de satélites y fotos aéreas. Hay aplicaciones para dispositivos portables.
Otras versiones similares permiten admirar la Luna, el planeta Marte y explorar el espacio usando fotografias de la NASA: Google MoonGoogle Mars y Google Sky
Google SketchUpSoftware para crear modificar y compartir modelos en 3D. Pueden subirse a Google 3D Warehouse o publicarse y mostrarse en Google Earth.
PanoramioServicio para compartir fotografías de lugares del mundo geo-localizadas. Muchas de ellas se muestran en Google Earth como miniaturas que al dar clic se abren a mayor tamaño. Lee más información.

Herramientas y utilidades

Google TranslateServicio para traducir texto o páginas web completas. Podemos disponer del servicio offline en dispositivos con Android.
Google ChromeNavegador web sencillo, rápido y con disponibilidad de gran cantidad de extensiones para agregarle funcionalidades. Todos los datos de nuestra navegación como historial, contraseñas guardadas, marcadores y la cache se pueden sincronizar de forma automática con nuestra cuenta de Google y así tener un respaldo en la nube y disponer de ellos en equipos o dispositivos diferentes.
AndroidAndroid es un sistema operativo de código abierto para dispositivos portables.
Google ChromiumSitio de desarrolladores de Chromium, proyecto de código abierto detrás del navegador Google Chrome y del sistema operativo Google Chrome OS.
Google Public DNSServidores DNS alternos gratis y con buenas prestaciones para acelerar la velocidad de la navegación en internet.
Lee más información.
Google AdSenseServicio para mostrar publicidad y anuncios en las páginas de un sitio web propio o en un blog creado en Blogger. Permite obtener ingresos por el contenido que compartimos en la red.
Los anuncios que se muestran proceden del servicio Google AdWords, mediante el cual los anunciantes le pagan a Google.
AdWords es la verdadera fuente de la mayor parte de los ingresos de Google.
Lee más información: Como ganar dinero en internet insertando anuncios y publicidad
Google TakeoutTakeout es un servicio para exportar nuestra información de Google o sea descargar a nuestra computadora fotos, videos, contactos, mensajes y cualquier otro tipo de datos desde cualquier servicio de Google.
Facilita guardar los datos personales principalmente cuando Google decide cerrar cualquiera de sus servicios.

Servicios de publicación en internet

Google SitesServicio para crear un sencillo sitio web.
BloggerPlataforma de publicación para crear un blog personal con un nombre de dominio propio.
Lee: Como crear y tener mi propio blog en Blogger.
Google DriveServicio de almacenamiento en la nube donde guardar y compartir archivos como fotos, videos, documentos y cualquier otro tipo de archivo.
Lee: Como usar Google Drive para subir y guardar archivos.
PicasaAlmacenamiento de fotografías online, vinculado con nuestra cuenta en la red social Google+. Incluye herramientas para la edición, efectos, reconocimiento de rostros y geo-localización.
YouTubePopular servicio para subir, ver y compartir videos.
Google Web DesignerEditor WYSIWYG para crear y editar páginas web usando el estándar HTML5.

Herramientas y servicios para desarrolladores

Google DevelopersPágina con documentación técnica para usar y aprovechar los recursos de Google de forma avanzada.
Google CodeRepositorio o almacén donde hostear (servir) código para usarlo o compartirlo libremente con otras personas.
Repositorios de código fuente en internet
Google AnalyticsPoderoso y útil servicio de analítica y estadísticas para sitios web. Usando un código de rastreo que debemos insertar en nuestro sitio, crea informes detallados con todo tipo de datos de los visitantes.
Google Webmaster ToolsVarias herramientas para los que poseen un blog o sitio web en internet. Permite comprobar el estado de la indexación por el buscador y optimizar su visibilidad. Ofrece varios informes que nos ayudan a conocer el alcance de nuestras publicaciones, además recibimos notificaciones ante cualquier error grave.
Lee: Como usar las Herramientas para Webmasters de Google
Google PageSpeed InsightsAnaliza el funcionamiento de una página web y ofrece sugestiones para optimizarla y mejorar su velocidad de carga.
Como hacer más rápida la carga de un blog o un sitio web
Google PageSpeed ServiceServicio CDN para sitios web. Sirve las paginas desde diversos servidores de Google distribuidos geográficamente para mejorar su velocidad de carga y desempeño.
Para agregar un sitio al servicio es necesario hacer la solicitud.
Google Custom Search EnginePermite crear motores de búsqueda personalizados para un sitio web. Un ejemplo es el cuadro de búsqueda en la parte inferior de nuestras páginas, que permite a los lectores hacer búsquedas solo en el contenido de nuestro blog y sito web.
Google FontsServicio que brinda diversas fuentes online para usarlas en cualquier sitio de internet.
Google URL ShortenerAcortador de direcciones URL que también ofrece un servicio de estadísticas. Lee como usarlo.
Google App EngineServicio donde hostear nuestras aplicaciones.
Google FeedBurnerDe ayuda para bloggers para divulgar el feed RSS de las nuevas publicaciones.
Google TrendsTendencias de búsqueda de Google ofrece herramientas para comparar la popularidad de distintos términos y ubicar las tendencias de búsqueda en el mapa.
Google InsightsHerramienta para conocer la popularidad de uno o más términos de búsqueda en internet, usando la base de datos de Google.
Google SwiffyHerramienta online para convertir archivos en formato flash (SWF) a HTML5, debido a su incompatibilidad con dispositivos portables.

Registrarse en Google y crear una cuenta sin Gmail


La forma tradicional de crear una nueva cuenta que sirva para todos los servicios de Google, es al obtener una nueva cuenta de correo electrónico en el servicio de Gmail.
No obstante ahora existe la posibilidad de acceder a los servicios de Google, sin depender de Gmail.
Es de utilidad para los que poseen cuentas de correos en otros servicios como Yahoo o Outlook y no quieren crear una nueva cuenta que nunca utilizarán.
Para crear una nueva cuenta de Google usa el siguiente enlace, por supuesto es necesario indicar una cuenta existente de email, no importa que sea de otro servicio.
Crear una cuenta en Google sin Gmail 
Registrarse en Google y crear una cuenta sin Gmail
No obstante si te decides a obtener un correo de Google usa el enlace: "Quiero una nueva dirección de Gmail". 

sábado, 4 de octubre de 2014

Generar automáticamente procedimientos almacenados a partir de una tabla

La creación de procedimientos almacenados para un CRUD puede resultar una tarea bastante repetitiva. Aquí publico un procedimiento almacenado para SQL Server (T-SQL) que sirve para generar un script para crear 4 procedimientos almacenados a partir del nombre de una tabla.

El script creará 4 procedimientos. Todos los procedimientos que crea el script reciben como parámetros todos los campos de la tabla.
- SELECT filtrará por los campos recibidos que no sean NULL (where condicionado)
- INSERT insertará un registro con los parámetros recibidos
- UPDATE tal y como se genera no tiene sentido, simplemente borra las líneas que no quieras (del SET ó del WHERE)
- DELETE borrará registros filtrando por los campos recibidos que no sean NULL
- EXISTS devolverá registros que coincidan con el filtro creado con los campos recibidos que no sean NULL (where condicionado)

-----------------
-----------------
Aquí está el script:


CREATE PROCEDURE [dbo].[sp_generate]  
  @tableName AS VARCHAR(100)  
AS  
  
--CAPITALIZE TABLENAME  
SET @tableName = UPPER(LEFT(@tableName,1)) + RIGHT(@tableName, LEN(@tableName) -1)  
  
--SALTO DE LÍNEA  
DECLARE @nl AS CHAR  
SET @nl = CHAR(10) + CHAR(13)   
  
--CABECERA  
DECLARE @spHeaders AS VARCHAR(1000)  
SET @spHeaders = 'SET ANSI_NULLS ON' + @nl +  
'GO' + @nl +  
'SET QUOTED_IDENTIFIER ON' + @nl +  
'GO' + @nl +  
'-- =============================================' + @nl +  
'-- Author:  TU_NOMBRE' + @nl +  
'-- Create date: ' + CONVERT(VARCHAR, GETDATE(), 3) + @nl +  
'-- ============================================='  
  
DECLARE @table AS VARCHAR(MAX)  
DECLARE @column AS VARCHAR(MAX)  
DECLARE @data_type AS VARCHAR(MAX)  
DECLARE @length AS INT  
DECLARE @precision AS INT  
DECLARE @scale AS INT  
  
--PARÁMETROS  
DECLARE @spParameters AS VARCHAR(MAX) SET @spParameters = ''  
  
--LISTA DE CAMPOS  
DECLARE @fieldList AS VARCHAR(MAX) SET @fieldList = ''  
  
--LISTA DE CAMPOS PARA EL SET DEL UPDATE  
DECLARE @fieldSetList AS VARCHAR(MAX) SET @fieldSetList = ''  
  
--LISTA DE PARÁMETROS PARA EL INSERT  
DECLARE @insertParameters AS VARCHAR(MAX) SET @insertParameters = ''  
  
--CONDICIONES  
DECLARE @spConditions AS VARCHAR(MAX) SET @spConditions = ''  
  
DECLARE c CURSOR STATIC FOR  
select table_name, column_name, data_type, character_maximum_length,numeric_precision, numeric_scale from information_schema.columns where table_name = @tableName order by ordinal_position  
OPEN c FETCH NEXT FROM c INTO @table, @column, @data_type, @length, @precision, @scale  
WHILE @@FETCH_STATUS = 0 BEGIN  
  
 SET @spParameters = @spParameters + (CASE WHEN LEN(@spParameters) >0 THEN @nl + ' ,' ELSE '  ' END) + '@' + @column + ' ' + UPPER(@data_type) + (CASE @data_type WHEN 'VARCHAR' THEN '('+CAST(@length AS VARCHAR)+')' WHEN 'DECIMAL' THEN '('+CAST(@precision AS VARCHAR)+', '+CAST(@scale AS VARCHAR)+')' ELSE '' END) + ' = NULL'  
 SET @fieldList = @fieldList + (CASE WHEN LEN(@fieldList) >0 THEN @nl + '    ,' ELSE '' END) + @column  
 SET @spConditions = @spConditions + (CASE WHEN LEN(@spConditions) >0 THEN @nl + '   AND ' ELSE '' END) + '(@' + @column + ' IS NULL OR @' + @column + '=' + @column + ')'  
 SET @fieldSetList = @fieldSetList + (CASE WHEN LEN(@fieldSetList) >0 THEN @nl + '     ,' ELSE '      ' END) + @column + ' = @' + @column  
 SET @insertParameters = @insertParameters + (CASE WHEN LEN(@insertParameters) >0 THEN @nl + '    ,' ELSE '' END) + '@' + @column  
  
 FETCH NEXT FROM c INTO @table, @column, @data_type, @length, @precision, @scale  
END  
CLOSE c DEALLOCATE c  
  
--********************************  
--*********** SELECT *************  
--********************************  
DECLARE @SELECT AS VARCHAR(MAX)  
SET @SELECT = @spHeaders + @nl  
SET @SELECT = @SELECT + 'CREATE PROCEDURE ' + @tableName + '_Select' + @nl  
SET @SELECT = @SELECT + @spParameters + @nl  
SET @SELECT = @SELECT + 'AS' + @nl + ' SET NOCOUNT OFF;' + @nl + @nl  
SET @SELECT = @SELECT + '    SELECT ' + @fieldList + @nl  
SET @SELECT = @SELECT + '    FROM ' + @table + @nl  
SET @SELECT = @SELECt + '    WHERE ' + @spConditions + @nl  
  
--********************************  
--*********** UPDATE *************  
--********************************  
DECLARE @UPDATE AS VARCHAR(MAX)  
SET @UPDATE = @spHeaders + @nl  
SET @UPDATE = @UPDATE + 'CREATE PROCEDURE ' + @tableName + '_Update' + @nl  
SET @UPDATE = @UPDATE + @spParameters + @nl  
SET @UPDATE = @UPDATE + 'AS' + @nl + ' SET NOCOUNT OFF;' + @nl + @nl  
SET @UPDATE = @UPDATE + '    UPDATE ' + @table + ' SET ' + @nl  
SET @UPDATE = @UPDATE + @fieldSetList + @nl  
SET @UPDATE = @UPDATE + '    WHERE ' + @spConditions + @nl  
  
--********************************  
--*********** DELETE *************  
--********************************  
DECLARE @DELETE AS VARCHAR(MAX)  
SET @DELETE = @spHeaders + @nl  
SET @DELETE = @DELETE + 'CREATE PROCEDURE ' + @tableName + '_Delete' + @nl  
SET @DELETE = @DELETE + @spParameters + @nl  
SET @DELETE = @DELETE + 'AS' + @nl + ' SET NOCOUNT OFF;' + @nl + @nl  
SET @DELETE = @DELETE + '    DELETE FROM ' + @table + @nl  
SET @DELETE = @DELETE + '    WHERE ' + @spConditions + @nl  
  
--********************************  
--*********** INSERT *************  
--********************************  
DECLARE @INSERT AS VARCHAR(MAX)  
SET @INSERT = @spHeaders + @nl  
SET @INSERT = @INSERT + 'CREATE PROCEDURE ' + @tableName + '_Insert' + @nl  
SET @INSERT = @INSERT + @spParameters + @nl  
SET @INSERT = @INSERT + 'AS' + @nl + ' SET NOCOUNT OFF;' + @nl + @nl  
SET @INSERT = @INSERT + '    INSERT INTO ' + @table + '(' + @nl  
SET @INSERT = @INSERT + '     ' + @fieldList + @nl  
SET @INSERT = @INSERT + ' )' + @nl + ' VALUES(' + @nl + '     ' + @insertParameters + @nl  
SET @INSERT = @INSERT + ' )' + @nl  
  
--********************************  
--*********** EXISTS *************  
--********************************  
DECLARE @EXISTS AS VARCHAR(MAX)  
SET @EXISTS = @spHeaders + @nl  
SET @EXISTS = @EXISTS + 'CREATE PROCEDURE ' + @tableName + '_Exists' + @nl  
SET @EXISTS = @EXISTS + @spParameters + @nl  
SET @EXISTS = @EXISTS + ' ,@exists BIT OUT' + @nl  
SET @EXISTS = @EXISTS + 'AS' + @nl + ' SET NOCOUNT OFF;' + @nl + @nl  
SET @EXISTS = @EXISTS + '    IF EXISTS (' + @nl + ' SELECT ' + LEFT(@fieldList,CHARINDEX(@nl,@fieldList))  
SET @EXISTS = @EXISTS + '    FROM ' + @table + @nl  
SET @EXISTS = @EXISTS + '    WHERE ' + @spConditions + @nl + ' )' + @nl  
SET @EXISTS = @EXISTS + ' SET @exists = 1' + @nl + ' ELSE SET @exists = 0'  
  
--MOSTRAR GENERADOS  
PRINT + '-- =====INSERT==================================' + @nl + @INSERT  
PRINT + '-- =====DELETE==================================' + @nl + @DELETE  
PRINT + '-- =====UPDATE==================================' + @nl + @UPDATE  
PRINT + '-- =====SELECT==================================' + @nl + @SELECT  
PRINT + '-- =====EXISTS==================================' + @nl + @EXISTS  



FORMA DE USO
sp_generate NOMBRE_DE_TABLA  


Fuente: http://sviudes.blogspot.com/2009/11/generar-automaticamente-procedimientos.html