SQL Server dia a dia


/ Published in: SQL
Save to your folder(s)

De las tareas que di­a a di­a necesitamos realizar en una base de datos


Copy this code and paste it in your HTML
  1. //Reiniciar el contador
  2. DBCC CHECKIDENT ('Schema.Tabla', RESEED,0)
  3.  
  4. //Reiniciar secuencia
  5. ALTER SEQUENCE fump.fumpBajaSQ RESTART WITH 1;
  6. //Saber el nombre de la BD
  7. DECLARE @nombreBD NVARCHAR(128) = DB_NAME();
  8.  
  9. SELECT @nombreBD
  10.  
  11.  
  12. SELECT * INTO SchemaDestino.SACPaginasWeb FROM SchemaOrigen.INCPaginasWeb
  13.  
  14.  
  15. Obtener el ultimo d���­a del mes
  16.  
  17. SELECT eomonth('2015-02-01')
  18.  
  19. SELECT eomonth(getdate())
  20.  
  21. //Crear tablas, IDENTITY, FOREIGN KEY
  22.  
  23. CREATE TABLE dbo.escritor(
  24. id_escritor INT IDENTITY(1,1) NOT NULL PRIMARY KEY,
  25. nombre VARCHAR(30) NOT NULL,
  26. apellido VARCHAR(40) NOT NULL,
  27. direccion VARCHAR(100) NULL
  28. )
  29.  
  30. CREATE TABLE dbo.poema(
  31. id_poema INT IDENTITY(1,1) NOT NULL PRIMARY KEY,
  32. id_escritor INT FOREIGN KEY REFERENCES escritor(id_escritor),
  33. titulo VARCHAR(50) NOT NULL,
  34. contenido text,
  35. )
  36.  
  37. CREATE TABLE dbo.libro(
  38. id_libro INT IDENTITY(1,1) NOT NULL PRIMARY KEY,
  39. titulo VARCHAR(100) NULL,
  40. precio NUMERIC(5,2) NULL
  41. )
  42.  
  43.  
  44. CREATE TABLE dbo.poema_libro(
  45. id_poema INT FOREIGN KEY REFERENCES poema(id_poema),
  46. id_libro INT FOREIGN KEY REFERENCES libro(id_libro)
  47. )
  48.  
  49.  
  50.  
  51. //Buscar un procedimiento o funcion Information Schema
  52.  
  53. SELECT *
  54. FROM INFORMATION_SCHEMA.ROUTINES
  55. WHERE ROUTINE_DEFINITION LIKE '%BuscaAltaFUMP%'
  56. AND ROUTINE_TYPE IN ('PROCEDURE','FUNCTION')
  57.  
  58. // Buscar un campo en una base de datos
  59. SELECT c.name AS 'ColumnName'
  60. ,t.name AS 'TableName'
  61. FROM sys.columns c
  62. JOIN sys.tables t ON c.object_id = t.object_id
  63. WHERE c.name LIKE '%id_escritor%'
  64. ORDER BY TableName
  65. ,ColumnName;
  66.  
  67. //CREATE tabla con para usar BOOLEAN
  68. DATABASE BOOLEAN? USE Instead
  69. Oracle No NUMBER(1)
  70. SQL Server No BIT
  71. MySQL No BIT OR TINYINT
  72. PostgreSQL Yes
  73.  
  74. CREATE TABLE dbo.practica (
  75. id_practica INT IDENTITY(1,1) NOT NULL PRIMARY KEY,
  76. descripcion VARCHAR(50) NOT NULL,
  77. estatus bit NOT NULL DEFAULT 0
  78. )
  79.  
  80.  
  81.  
  82. //Esta función busca una expresión de carácter dentro de una segunda expresión de carácter y, si la encuentra, devuelve la posición inicial de la primera expresión.
  83. //Charindex
  84.  
  85. SELECT id_practica, len(descripcion), datalength(descripcion),descripcion, charindex(' ',RTRIM(LTRIM(descripcion)))
  86. FROM dbo.practica
  87. WHERE charindex(' ',RTRIM(LTRIM(descripcion)))>0
  88.  
  89.  
  90. //Gererar las clases de la capa Entity
  91.  
  92. --#Region "Propiedades"
  93.  
  94. SELECT
  95. concat('Public Property ', column_name, '() as ', DATA_TYPE )
  96. FROM INFORMATION_SCHEMA.Columns
  97. WHERE TABLE_NAME='SACBIENES'
  98.  
  99. --#End Region
  100.  
  101.  
  102. --Revision de conversion sea correcta
  103. SELECT
  104. concat('Byval ', column_name, ' as ', DATA_TYPE ) AS TYPESQL,
  105. concat('Byval ', column_name, ' as ', net.dbtype ) AS TYPENET
  106. FROM INFORMATION_SCHEMA.Columns
  107. LEFT JOIN ActivoFijo.SQLDOTNET net ON DATA_TYPE = net.SqlDbType
  108. WHERE TABLE_NAME='SACBIENES'
  109.  
  110.  
  111. --#Region "Constructores"
  112.  
  113. --Variables
  114. DECLARE @VARIABLES AS NVARCHAR(500);
  115. SET @VARIABLES = (
  116. SELECT STUFF(
  117. (
  118. SELECT
  119. RTRIM( LTRIM(
  120. concat(',', 'Byval ', column_name, ' as System.', net.dbtype ,' ')
  121. ))
  122.  
  123. FROM INFORMATION_SCHEMA.Columns
  124. LEFT JOIN ActivoFijo.SQLDOTNET net ON DATA_TYPE = net.SqlDbType
  125. WHERE TABLE_NAME='SACBIENES'
  126.  
  127. FOR XML PATH (''))
  128. , 1, 1, '') AS CCSR)
  129.  
  130.  
  131. --select @variables
  132. SELECT CONCAT('Public Sub New(', @VARIABLES , ASCII(10),') End Sub')
  133.  
  134.  
  135.  
  136. --Asignaciones
  137. SELECT
  138. concat('Me.', column_name, ' = ', column_name )
  139. FROM INFORMATION_SCHEMA.Columns
  140. WHERE TABLE_NAME='SACBIENES'
  141.  
  142.  
  143. --#End Region
  144.  
  145.  
  146. -----------------------------------------------------------------------------------
  147. -- CAPA BL
  148. -- #Region "Propiedades"
  149. DECLARE @salto AS VARCHAR= CHAR(13) + CHAR(10);
  150. SELECT
  151. RTRIM( LTRIM(
  152. concat('Public Property ', column_name, '() as System.', net.dbtype , @salto ,
  153. ' Get ' , @salto ,
  154. ' Return Me.',TABLE_NAME, '.', column_name , @salto,
  155. ' End Get ', @salto,
  156. ' Set (value as System.', net.dbtype ,')', @salto,
  157. ' Me.',TABLE_NAME, '.', column_name ,' = value ', @salto,
  158. 'End Set ', @salto,
  159. 'End Property', @salto
  160.  
  161. )
  162. ))
  163.  
  164. FROM INFORMATION_SCHEMA.Columns
  165. LEFT JOIN ActivoFijo.SQLDOTNET net ON DATA_TYPE = net.SqlDbType
  166. WHERE TABLE_NAME='SACBIENES'
  167.  
  168. --#End Region
  169.  
  170.  
  171.  
  172. --#Region "Constructores"
  173.  
  174. --Variables
  175. DECLARE @saltoC AS VARCHAR= CHAR(13) + CHAR(10);
  176. DECLARE @variablesC AS NVARCHAR(1000);
  177. SET @variablesC = (
  178. SELECT STUFF(
  179. (
  180. SELECT
  181. RTRIM( LTRIM(
  182. concat(',', 'Byval ', column_name, ' as System.', net.dbtype ,' ')
  183. ))
  184.  
  185. FROM INFORMATION_SCHEMA.Columns
  186. LEFT JOIN ActivoFijo.SQLDOTNET net ON DATA_TYPE = net.SqlDbType
  187. WHERE TABLE_NAME='SACBIENES'
  188.  
  189. FOR XML PATH (''))
  190. , 1, 1, '') AS CCSR)
  191.  
  192.  
  193. SELECT CONCAT('Sub New()'+@saltoC +'End Sub'+@saltoC+'Public Sub New(', @variablesC , ASCII(10),')' + @saltoC + ' End Sub')
  194.  
  195.  
  196. --Asignaciones
  197. SELECT
  198. concat('Me.', column_name, ' = ', column_name )
  199. FROM INFORMATION_SCHEMA.Columns
  200. WHERE TABLE_NAME='SACBIENES'
  201.  
  202.  
  203.  
  204.  
  205. --#End Region
  206.  
  207.  
  208. USE ALMACEN
  209. ALTER DATABASE ALMACEN SET MULTI_USER
  210.  
  211.  
  212.  
  213. --- Mostrar los Trigger que estan en la BD
  214. SELECT * FROM sysobjects WHERE TYPE='TR'

Report this snippet


Comments

RSS Icon Subscribe to comments

You need to login to post a comment.