Search This Blog

2010-02-22

How-to save object permissions for a database during development


-- HOW-TO MOVE ALL THE PRODUCTION'S DATABASE PERMISSIONS ON A DEV DB
-- and ensure that each time you change the DDL in your db  the same 
-- permissions will apply 
-- The script for getting the permissions is from  here 

USE [DB_DEV]
GO
 
/****** Object:  Table [dbo].[Permissions]    Script Date: 02/22/2010 12:13:30 ******/
IF  EXISTS (SELECT * FROM sys.objects 
WHERE object_id = OBJECT_ID(N'[dbo].[Permissions]') AND type in (N'U'))
DROP TABLE [dbo].[Permissions]
GO
 
USE [DB_DEV]
GO
 
/****** Object:  Table [dbo].[Permissions]    Script Date: 02/22/2010 12:13:31 ******/
SET ANSI_NULLS ON
GO
 
SET QUOTED_IDENTIFIER ON
GO
 
CREATE TABLE [dbo].[Permissions](
[PermissionsId] [int] IDENTITY(1,1) NOT NULL,
[principle_name] [nvarchar](20) NULL,
[principle_type_desc] [nvarchar](20) NULL,
[object_name] [nvarchar](100) NULL,
[permission_name] [nvarchar](100) NULL,
[permission_state_desc] [nvarchar](100) NULL,
CONSTRAINT [PK_Permissions] PRIMARY KEY CLUSTERED 
(
[PermissionsId] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, 
IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, 
ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]
 
GO
 
 






-- Now simply copy the permissions from the production's 
-- fullback database to the new Permissions table 
 
use DB_FB
GO
INSERT INTO [DB_TEST].[dbo].[Permissions]
([principle_name]
,[principle_type_desc]
,[object_name]
,[permission_name]
,[permission_state_desc])
 
select dp.NAME AS principal_name,
dp.type_desc AS principal_type_desc,
o.NAME AS object_name,
p.permission_name,
p.state_desc AS permission_state_desc 
from    sys.database_permissions p
left    OUTER JOIN sys.all_objects o
on     p.major_id = o.OBJECT_ID
inner   JOIN sys.database_principals dp
on     p.grantee_principal_id = dp.principal_id



IF  EXISTS (SELECT * FROM sys.triggers 
WHERE parent_class_desc = 'DATABASE' AND name = N'trig_ApplyPermissions')
DISABLE TRIGGER [trig_ApplyPermissions] ON DATABASE
 
GO
 
USE [DB_DEV]
GO
 
/****** Object:  DdlTrigger [trig_ApplyPermissions]    Script Date: 02/22/2010 11:35:36 ******/
IF  EXISTS (SELECT * FROM sys.triggers 
WHERE parent_class_desc = 'DATABASE' AND name = N'trig_ApplyPermissions')DROP TRIGGER [trig_ApplyPermissions] ON DATABASE
GO
USE [DB_DEV]
GO
 
/****** Object:  DdlTrigger [trig_ApplyPermissions]    Script Date: 02/22/2010 11:35:36 ******/
SET ANSI_NULLS ON
GO
 
SET QUOTED_IDENTIFIER ON
GO
 
 
 
 
create trigger [trig_ApplyPermissions]
on database
for create_procedure, alter_procedure, 
create_table, alter_table, 
create_function, alter_function
as
 
set nocount on
 
declare @data xml
set @data = EVENTDATA()
 
declare @objName nvarchar(200) 
set @objname  = @data.value('(/EVENT_INSTANCE/ObjectName)[1]', 'varchar(256)')
 
declare @sqlCode nvarchar(max) 
set @sqlCode = '' 
 
 
 
--Grab all the functions for the current DB 
SELECT 
IDENTITY(INT,1,1) AS PermissionsId,
[principle_name]
,[principle_type_desc]
,[object_name]
,[permission_name]
,[permission_state_desc]
 
INTO #ObjList
FROM [Permissions]
where [object_name] = @objName
 
 
 
DECLARE
@Loopid INT,
@MaxId INT,
@principle_name nvarchar(100) , 
@principle_type_desc nvarchar(100) , 
@object_name nvarchar(100) , 
@permission_name nvarchar(100), 
@permission_state_desc nvarchar(100)
 
 
--Grab start and end values for the loop
SELECT @Loopid = 1,
@MaxId = MAX(PermissionsId)
FROM #ObjList
 
 
--This is where the loop starts
WHILE @Loopid <= @MaxId BEGIN
 
--grab the function name and type
SELECT 
 
@principle_name = [principle_name] , 
@principle_type_desc   = [principle_type_desc] , 
@object_name = [object_name] , 
@permission_name = [permission_name] , 
@permission_state_desc = [permission_state_desc]
 
 
FROM #ObjList
WHERE PermissionsId = @Loopid
 
SELECT @sqlCode = 
@permission_state_desc + ' ' + @permission_name + 
' ON ' + @object_name+ 
' TO ' + @principle_name + ' '  + 
' as DBO ;' FROM [Permissions] 
EXEC sp_executesql @sqlCode 
 
 
--increment counter
SET @Loopid = @Loopid + 1
END --eof while 
 
--clean up
DROP TABLE #ObjList
 
 
GO
 
SET ANSI_NULLS OFF
GO
 
SET QUOTED_IDENTIFIER OFF
GO
 
DISABLE TRIGGER [trig_ApplyPermissions] ON DATABASE
GO
 
ENABLE TRIGGER [trig_ApplyPermissions] ON DATABASE
GO
 
 

2010-02-17

how-to get the list of a columns in tsql

Courtesy to :
James Horsley
http://www.sqlservercentral.com/Forums/Topic865846-2623-3.aspx#bm866809



declare @tableName varchar(200) = 'TableToGetTheColsFor'
declare @cols varchar(max)
SET @Cols = ''
SELECT 
@Cols = @Cols + CASE WHEN ORDINAL_POSITION = 1 THEN '' ELSE ',' END + COLUMN_NAME 
FROM 
INFORMATION_SCHEMA.COLUMNS 
WHERE 
TABLE_NAME=@tableName
SELECT @cols  

.Net to C# type converter



 
using System;
 
namespace Gaf.Utils
{
 
/// <summary>
/// This class converts the .Net reflected Built-In Types ( passed as strings to different string codes ) 
/// </summary>
class Converter
{
 
/// <summary>
/// Converts the reflected .Net type passed as string to a C# built-in type as string
/// </summary>
/// <param name="strDotNetTypeString">The .Net type passed as string</param>
/// <returns>the converted built-in C# type </returns>
public static string FromDotNetTypeToCSharpType( string strDotNetTypeString ) 
{
 
string strConvertTo = strDotNetTypeString;
 
#region DefineTheConvertedType
 
//<source>http://msdn.microsoft.com/en-us/library/ya5y69ds.aspx</source>
//<source>http://ysgitdiary.blogspot.com/2010/02/c-types-vs-net-types-code-generation.html</source>
switch (strDotNetTypeString)
{
case "System.Boolean":
strConvertTo = "bool";
break;
 
case "System.Byte":
strConvertTo = "byte";
break;
 
case "System.SByte":
strConvertTo = "sbyte";
break;
 
case "System.Char":
strConvertTo = "char";
break;
 
case "System.Decimal":
strConvertTo = "decimal";
break;
 
case "System.Double":
strConvertTo = "double";
break;
 
case "System.Single":
strConvertTo = "float";
break;
 
case "System.Int32":
strConvertTo = "int";
break;
 
case "System.UInt32":
strConvertTo = "uint";
break;
 
case "System.Int64":
strConvertTo = "long";
break;
 
case "System.UInt64":
strConvertTo = "ulong";
break;
 
case "System.Object":
strConvertTo = "object";
break;
 
case "System.Int16":
strConvertTo = "short";
break;
 
case "System.UInt16":
strConvertTo = "ushort";
break;
 
case "System.String":
strConvertTo = "string";
break;
 
case "System.Nullable`1[System.Boolean]":
strConvertTo = "bool?";
break;
 
case "System.Nullable`1[System.Byte]":
strConvertTo = "byte?";
break;
 
case "System.Nullable`1[System.SByte]":
strConvertTo = "sbyte?";
break;
 
case "System.Nullable`1[System.Char]":
strConvertTo = "char?";
break;
 
case "System.Nullable`1[System.Decimal]":
strConvertTo = "decimal?";
break;
 
case "System.Nullable`1[System.Double]":
strConvertTo = "double?";
break;
 
case "System.Nullable`1[System.Single]":
strConvertTo = "float?";
break;
 
case "System.Nullable`1[System.Int32]":
strConvertTo = "int?";
break;
 
case "System.Nullable`1[System.UInt32]":
strConvertTo = "uint?";
break;
 
case "System.Nullable`1[System.Int64]":
strConvertTo = "long?";
break;
 
case "System.Nullable`1[System.UInt64]":
strConvertTo = "ulong?";
break;
 
case "System.Nullable`1[System.Object]":
strConvertTo = "object?";
break;
 
case "System.Nullable`1[System.Int16]":
strConvertTo = "short?";
break;
 
case "System.Nullable`1[System.UInt16]":
strConvertTo = "ushort?";
break;
 
case "System.Nullable`1[System.String]":
strConvertTo = "string?";
break;
 
}//eof switch 
 
return strConvertTo;
 
#endregion DefineTheConvertedType
} //eof method 
 
/// <summary>
/// Convertes a .Net reflected Build-In type passed as string to a string code to convert this type in 
/// to basic Convert.ToTypeOfType sting code
/// </summary>
/// <param name="strDotNetTypeString">the basic built-in type as string </param>
/// <returns>the basic built-in type </returns>
public static string FromDotNetTypeToConvertToDotNetTypeCode(string strDotNetTypeString)
{
 
string strConvertTo = strDotNetTypeString;
 
#region DefineTheConvertedType
 
//<source>http://msdn.microsoft.com/en-us/library/ya5y69ds.aspx</source>
//<source>http://ysgitdiary.blogspot.com/2010/02/c-types-vs-net-types-code-generation.html</source>
switch (strDotNetTypeString)
{
case "System.Boolean":
strConvertTo = "Convert.ToBoolean";
break;
 
case "System.Byte":
strConvertTo = "Convert.ToByte";
break;
 
case "System.SByte":
strConvertTo = "Convert.ToSByte";
break;
 
case "System.Char":
strConvertTo = "Convert.ToChar";
break;
 
case "System.Decimal":
strConvertTo = "Convert.ToDecimal";
break;
 
case "System.Double":
strConvertTo = "Convert.ToDouble";
break;
 
case "System.Single":
strConvertTo = "Convert.ToSingle";
break;
 
case "System.Int32":
strConvertTo = "Convert.ToInt32";
break;
 
case "System.UInt32":
strConvertTo = "Convert.ToUInt32";
break;
 
case "System.Int64":
strConvertTo = "Convert.ToInt64";
break;
 
case "System.UInt64":
strConvertTo = "Convert.ToUInt64";
break;
 
case "System.Object":
strConvertTo = "Convert.ToObject";
break;
 
case "System.Int16":
strConvertTo = "Convert.ToInt16";
break;
 
case "System.UInt16":
strConvertTo = "Convert.ToUint16";
break;
 
case "System.String":
strConvertTo = "Convert.ToString";
break;
 
case "System.Nullable`1[System.Boolean]":
strConvertTo = "Convert.ToBool";
break;
 
case "System.Nullable`1[System.Byte]":
strConvertTo = "Convert.ToByte";
break;
 
case "System.Nullable`1[System.SByte]":
strConvertTo = "Convert.ToSByte";
break;
 
case "System.Nullable`1[System.Char]":
strConvertTo = "Convert.ToChar";
break;
 
case "System.Nullable`1[System.Decimal]":
strConvertTo = "Convert.ToDecimal";
break;
 
case "System.Nullable`1[System.Double]":
strConvertTo = "Convert.ToDouble";
break;
 
case "System.Nullable`1[System.Single]":
strConvertTo = "Convert.ToSingle";
break;
 
case "System.Nullable`1[System.Int32]":
strConvertTo = "Convert.ToInt32";
break;
 
case "System.Nullable`1[System.UInt32]":
strConvertTo = "Convert.ToUInt32";
break;
 
case "System.Nullable`1[System.Int64]":
strConvertTo = "Convert.ToInt64";
break;
 
case "System.Nullable`1[System.UInt64]":
strConvertTo = "Convert.ToUInt64";
break;
 
case "System.Nullable`1[System.Object]":
strConvertTo = "Convert.ToObject";
break;
 
case "System.Nullable`1[System.Int16]":
strConvertTo = "Convert.ToInt16";
break;
 
case "System.Nullable`1[System.UInt16]":
strConvertTo = "Convert.ToUInt16";
break;
 
case "System.Nullable`1[System.String]":
strConvertTo = "Convert.ToString";
break; 
 
}//eof switch 
 
return strConvertTo;
 
#endregion DefineTheConvertedType
} //eof method 
 
} //eof class 
} //eof 
 

Converter class derived from previous post ...



using System;
 
namespace Gaf.Utils
{
class Converter
{
 
public static string FromDotNetTypeToCSharpType( string strDotNetTypeString ) 
{
 
string strConvertedType = strDotNetTypeString; 
 
#region DefineTheConvertedType
 
//<source>http://msdn.microsoft.com/en-us/library/ya5y69ds.aspx</source>
//<source>http://ysgitdiary.blogspot.com/2010/02/c-types-vs-net-types-code-generation.html</source>
switch (strDotNetTypeString)
{
case "System.Boolean":
strConvertedType = "bool";
break;
 
case "System.Byte":
strConvertedType = "byte";
break;
 
case "System.SByte":
strConvertedType = "sbyte";
break;
 
case "System.Char":
strConvertedType = "char";
break;
 
case "System.Decimal":
strConvertedType = "decimal";
break;
 
case "System.Double":
strConvertedType = "double";
break;
 
case "System.Single":
strConvertedType = "float";
break;
 
case "System.Int32":
strConvertedType = "int";
break;
 
case "System.UInt32":
strConvertedType = "uint";
break;
 
case "System.Int64":
strConvertedType = "long";
break;
 
case "System.UInt64":
strConvertedType = "ulong";
break;
 
case "System.Object":
strConvertedType = "object";
break;
 
case "System.Int16":
strConvertedType = "short";
break;
 
case "System.UInt16":
strConvertedType = "ushort";
break;
 
case "System.String":
strConvertedType = "string";
break;
 
}//eof switch 
 
return strDotNetTypeString; 
 
#endregion DefineTheConvertedType
} //eof method 
 
public static string FromDotNetTypeToConvertToDotNetTypeCode(string strDotNetTypeString)
{
 
string strConvertTo = strDotNetTypeString;
 
#region DefineTheConvertedType
 
//<source>http://msdn.microsoft.com/en-us/library/ya5y69ds.aspx</source>
//<source>http://ysgitdiary.blogspot.com/2010/02/c-types-vs-net-types-code-generation.html</source>
switch (strDotNetTypeString)
{
case "System.Boolean":
strConvertTo = "System.Convert.ToBoolean";
break;
 
case "System.Byte":
strConvertTo = "System.Convert.ToByte";
break;
 
case "System.SByte":
strConvertTo = "System.Convert.ToSByte";
break;
 
case "System.Char":
strConvertTo = "System.Convert.ToChar";
break;
 
case "System.Decimal":
strConvertTo = "System.Convert.ToDecimal";
break;
 
case "System.Double":
strConvertTo = "System.Convert.ToDouble";
break;
 
case "System.Single":
strConvertTo = "System.Convert.ToSingle";
break;
 
case "System.Int32":
strConvertTo = "System.Convert.ToInt32";
break;
 
case "System.UInt32":
strConvertTo = "System.Convert.ToUInt32";
break;
 
case "System.Int64":
strConvertTo = "System.Convert.ToInt64";
break;
 
case "System.UInt64":
strConvertTo = "System.Convert.ToUInt64";
break;
 
case "System.Object":
strConvertTo = "System.Convert.ToObject";
break;
 
case "System.Int16":
strConvertTo = "System.Convert.ToInt16";
break;
 
case "System.UInt16":
strConvertTo = "System.Convert.ToUInt16";
break;
 
case "System.String":
strConvertTo = "System.Convert.ToString";
break;
 
}//eof switch 
 
return strDotNetTypeString;
 
#endregion DefineTheConvertedType
} //eof method 
 
} //eof class 
} //eof 
 

2010-02-16

C# types vs. .Net types --> code generation with textpad

C# type.Net Type
boolSystem.Boolean
byteSystem.Byte
sbyteSystem.SByte
charSystem.Char
decimalSystem.Decimal
doubleSystem.Double
floatSystem.Single
intSystem.Int32
uintSystem.UInt32
longSystem.Int64
ulongSystem.UInt64
objectSystem.Object
shortSystem.Int16
ushortSystem.UInt16
stringSystem.String


Some regexes:
Build this table
Find:^([a-z]*)\t([a-z\.A-Z0-9]*)
Replace:
\1\2


Build switch case for each type:
Find:^([a-z]*)\t([a-z\.A-Z0-9]*)
Replace:\t\tcase "\2": \n\t\t\tstrConvertedType = "\1"; \n\t\t\tbreak;\n\n


Build the ConvertToCodeCalls:
Find: ^([a-z]*)\t([a-zA-Z0-9]*)\.([a-zA-Z0-9]*)
Replace:\t\tcase "\2.\3" : \n\t\t strConvertTo = "System.Convert.To\3" ;\n\t\t break;\n

2010-02-15

Db versioning with DbScripter.exe



   1:    'COPY D:\Temp\Temp\POC_DEV\Programmability\StoredProcedures\' + 
   2:    ObjectName + '.sql D:\temp\temp\POC_DEV\1.2.8\StoredProcedures\'
   3:    + ObjectName + '.sql'
   4:   
   5:  FROM tbDataMeta_ChangeLog
   6:  where ObjectType = 'PROCEDURE' 
   7:  AND EventDate>'2010-02-10'
   8:   
   9:   
  10:   
  11:   
  12:   
  13:   
  14:  USE [MY_DB]
  15:  GO
  16:   
  17:  IF  EXISTS (SELECT * FROM dbo.sysobjects 
  18:  WHERE id = OBJECT_ID(N'[DF_EventsLog_EventDate]') AND type = 'D')
  19:  BEGIN
  20:  ALTER TABLE [dbo].[DbObjectsChangeStore] DROP CONSTRAINT [DF_EventsLog_EventDate]
  21:  END
  22:   
  23:  GO
  24:   
  25:  USE [MY_DB]
  26:  GO
  27:   
  28:  /****** Object:  Table [dbo].[DbObjectsChangeStore]    
  29:  Script Date: 02/11/2010 17:58:00 ******/
  30:  IF  EXISTS (SELECT * FROM sys.objects 
  31:  WHERE object_id = OBJECT_ID(N'[dbo].[DbObjectsChangeStore]') AND type in (N'U'))
  32:  DROP TABLE [dbo].[DbObjectsChangeStore]
  33:  GO
  34:   
  35:  USE [MY_DB]
  36:  GO
  37:   
  38:  /****** Object:  Table [dbo].[DbObjectsChangeStore]    
  39:  Script Date: 02/11/2010 17:58:00 ******/
  40:  SET ANSI_NULLS ON
  41:  GO
  42:   
  43:  SET QUOTED_IDENTIFIER ON
  44:  GO
  45:   
  46:  CREATE TABLE [dbo].[DbObjectsChangeStore](
  47:      [LogId] [int] IDENTITY(1,1) NOT NULL,
  48:      [DatabaseName] [varchar](256) NOT NULL,
  49:      [EventType] [varchar](50) NOT NULL,
  50:      [ObjectName] [varchar](256) NOT NULL,
  51:      [ObjectType] [varchar](25) NOT NULL,
  52:      [SqlCommand] [varchar](max) NOT NULL,
  53:      [EventDate] [datetime] NOT NULL,
  54:      [LoginName] [varchar](256) NOT NULL
  55:  ) ON [PRIMARY]
  56:   
  57:  GO
  58:   
  59:  ALTER TABLE [dbo].[DbObjectsChangeStore] 
  60:  ADD  CONSTRAINT [DF_EventsLog_EventDate]  
  61:  DEFAULT (getdate()) FOR [EventDate]
  62:  GO
  63:   
  64:   
  65:  IF  EXISTS (SELECT * FROM sys.triggers
  66:   WHERE parent_class_desc = 'DATABASE' AND name = N'trig_BackUpDbObjects')
  67:  DISABLE TRIGGER [trig_BackUpDbObjects] ON DATABASE
  68:   
  69:  GO
  70:   
  71:  USE [MY_DB]
  72:  GO
  73:   
  74:  /****** Object:  DdlTrigger [trig_BackUpDbObjects]   
  75:   Script Date: 02/11/2010 17:58:49 ******/
  76:  IF  EXISTS (SELECT * FROM sys.triggers 
  77:  WHERE parent_class_desc = 'DATABASE' 
  78:  AND name = N'trig_BackUpDbObjects')
  79:  DROP TRIGGER [trig_BackUpDbObjects] ON DATABASE
  80:  GO
  81:   
  82:  USE [MY_DB]
  83:  GO
  84:   
  85:  /****** Object:  DdlTrigger [trig_BackUpDbObjects]    Script Date: 02/11/2010 17:58:49 ******/
  86:  SET ANSI_NULLS ON
  87:  GO
  88:   
  89:  SET QUOTED_IDENTIFIER ON
  90:  GO
  91:   
  92:   
  93:   
  94:  create trigger [trig_BackUpDbObjects]
  95:  on database
  96:  for create_procedure, alter_procedure, drop_procedure,
  97:  create_table, alter_table, drop_table,
  98:  create_function, alter_function, drop_function
  99:  as
 100:   
 101:  set nocount on
 102:   
 103:  declare @data xml
 104:  set @data = EVENTDATA()
 105:   
 106:  insert into [dbo].[DbObjectsChangeStore](databasename, eventtype, 
 107:  objectname, objecttype, sqlcommand, loginname)
 108:  values(
 109:  @data.value('(/EVENT_INSTANCE/DatabaseName)[1]', 'varchar(256)'),
 110:  @data.value('(/EVENT_INSTANCE/EventType)[1]', 'varchar(50)'), 
 111:  @data.value('(/EVENT_INSTANCE/ObjectName)[1]', 'varchar(256)'), 
 112:  @data.value('(/EVENT_INSTANCE/ObjectType)[1]', 'varchar(25)'), 
 113:  @data.value('(/EVENT_INSTANCE/TSQLCommand)[1]', 'varchar(max)'), 
 114:  @data.value('(/EVENT_INSTANCE/LoginName)[1]', 'varchar(256)')
 115:  )
 116:   
 117:   
 118:   
 119:   
 120:  GO
 121:   
 122:  SET ANSI_NULLS OFF
 123:  GO
 124:   
 125:  SET QUOTED_IDENTIFIER OFF
 126:  GO
 127:   
 128:  DISABLE TRIGGER [trig_BackUpDbObjects] ON DATABASE
 129:  GO

2010-02-02

how-to use counter in a single selecte statement - a row_number usage in tsql



SELECT 'SELECT ' + convert( nvarchar , (ROW_NUMBER() over(order by tbGuiTabWizardId) ) + 106) + 
', 51, N''~/tabwizard.aspx?pageid=' +
convert( nvarchar , (ROW_NUMBER() over(order by tbGuiTabWizardId) ) + 106) +  '&tabid=' +CONVERT(nvarchar ,  tbGuiTabWizardId) + ''' , 
N''' + TabTitle + ''''', N'''''', N'''', 0, 0 UNION ALL'   FROM tbGuiTabWizard

Labels

perl (41) Cheat Sheet (25) how-to (24) sql server 2008 (13) windows (13) oracle (12) sql (12) Unix (11) linux (11) cmd windows batch (10) mssql (10) cmd (9) script (9) textpad (9) netezza (8) sql server 2005 (8) cygwin (7) meta data mssql (7) metadata (7) code generation (6) Informatica (5) cheatsheet (5) energy (5) tsql (5) utilities (5) bash (4) excel (4) future (4) generic (4) html (4) perl modules (4) programs (4) settings (4) sh (4) shortcuts (4) поуки (4) принципи (4) Focus Fusion (3) Solaris (3) cool programs (3) development (3) economy (3) example (3) freeware (3) fusion (3) git cheat sheet (3) morphus (3) mssql 2005 (3) nuclear (3) nz (3) parse (3) python (3) sftp (3) sofware development (3) source (3) sqlplus (3) table (3) vim (3) .Net (2) C# (2) China (2) GUI (2) Google (2) GoogleCL (2) Solaris Unix (2) ascii (2) awk (2) batch (2) cas (2) chrome extensions (2) code2html (2) columns (2) configuration (2) conversion (2) duplicates (2) excel shortcuts (2) export (2) file (2) free programs (2) informatica sql repository (2) logging (2) mssql 2008 (2) mysql (2) next big future (2) nsis (2) nz netezza cheat sheet (2) nzsql (2) ora (2) prediction (2) publish (2) release management (2) report (2) security (2) single-click (2) sqlserver 2005 (2) sqlserver 2008 (2) src (2) ssh (2) template (2) tools (2) vba (2) video (2) xlt (2) xml (2) youtube videos (2) *nix (1) .vimrc (1) .virmrc vim settings configs (1) BSD license (1) Bulgaria (1) Dallas (1) Database role (1) Dense plasma focus (1) Deployment (1) ERP (1) ExcelToHtml (1) GD (1) GDP (1) HP-UX (1) Hosting (1) INC (1) IT general (1) ITIL management bullshit-management (1) IZarc (1) Java Web Start (1) JavaScript anchor html jquery (1) Khan Academy (1) LINUX UNIX BASH AND CYGWIN TIPS AND TRICKS (1) Linux Unix rpm cpio build install configure (1) Linux git source build .configure make (1) ListBox (1) MIT HYDROGEN VIRUS (1) OO (1) Obama (1) PowerShell (1) Run-time (1) SDL (1) SIWA (1) SOX (1) Scala (1) Services (1) Stacks (1) SubSonic (1) TED (1) abstractions (1) ansible hosts linux bash (1) ansible linux deployment how-to (1) ansible yum pip python (1) apache (1) apache 2.2 (1) application life cycle (1) architecture (1) archive (1) arguments (1) avatar (1) backup (1) bash Linux open-ssh ssh ssh_server ssh_client public-private key authentication (1) bash perl search and replace (1) bash stub (1) bin (1) biofuels (1) biology (1) books (1) browser (1) bubblesort (1) bugs (1) build (1) byte (1) cas_sql_dev (1) chennai (1) chrome (1) class (1) claut (1) cmdow (1) code generation sqlserver (1) command (1) command line (1) conf (1) confluence (1) console (1) convert (1) cool programs windows free freeware (1) copy-paste (1) csv (1) ctags (1) current local time (1) cygwin X11 port-forwarding mintty xclock Linux Unix X (1) cygwin bash how-to tips_n_tricks (1) cygwin conf how-to (1) data (1) data types (1) db2 cheat sheet (1) db2 starter ibm bash Linux (1) debt (1) diagram (1) dictionaries (1) digital (1) disk (1) disk space (1) documentation (1) dos (1) dubai (1) e-cars (1) electric cars (1) electricity (1) emulate (1) errors (1) exponents (1) export workflow (1) extract (1) fast export (1) fexp (1) file extension (1) file permissions (1) findtag (1) firewall (1) for loop (1) freaky (1) functions (1) fusion research (1) german (1) git gitlab issues handling system (1) google cli (1) google code (1) google command line interface (1) gpg (1) ha (1) head (1) helsinki (1) history (1) hop or flop (1) host-independant (1) how-to Windows cmd time date datetime (1) ibm db2 cognos installation example db deployment provisioning (1) ideas (1) image (1) informatica oracle sql (1) informatica repo sql workflows sessions file source dir (1) informatica source files etl (1) install (1) it management best practices (1) java (1) jump to (1) keyboard shortcuts (1) ksh (1) level (1) linkedin (1) linux bash ansible hosts (1) linux bash commands (1) linux bash how-to shell expansion (1) linux bash shell grep xargs (1) linux bash tips and t ricks (1) linux bash unix cygwin cheatsheet (1) linux bash user accounts password (1) linux bash xargs space (1) linux cheat sheet (1) linux cheat-sheet (1) linux cheatsheet cheat-sheet revised how-to (1) linux how-to non-root vim (1) linux ssh hosts parallel subshell bash oneliner (1) london (1) make (1) me (1) metacolumn (1) metadata functions (1) metaphonre (1) method (1) model (1) movie (1) multithreaded (1) mysql cheat sheet (1) mysql how-to table datatypes (1) n900 (1) nano (1) neteza (1) netezza bash linux nps (1) netezza nps (1) netezza nps nzsql (1) netezza nz Linux bash (1) netezza nz bash linux (1) netezza nz nzsql sql (1) netezza nzsql database db sizes (1) non-password (1) nord pol (1) nps backup nzsql schema (1) number formatting (1) nz db size (1) nz table count rows (1) nzsql date timestamp compare bigint to_date to_char now (1) on-lier (1) one-liners (1) one-to-many (1) oneliners (1) open (1) open source (1) openrowset (1) oracle PL/SQL (1) oracle Perl perl (1) oracle installation usability (1) oracle number formatting format-model ora-sql oracle (1) oracle templates create table (1) oracle trigger generic autoincrement (1) oracle vbox virtual box cheat sheet (1) oracle virtual box cheat sheet (1) outlook (1) parser (1) password (1) paths (1) perl @INC compile-time run-time (1) perl disk usage administration Linux Unix (1) perl modules configuration management (1) permissions (1) php (1) picasa (1) platform (1) postgreSQL how-to (1) powerShell cmd cygwin mintty.exe terminal (1) ppm (1) predictions (1) prices (1) principles (1) productivity (1) project (1) prompt (1) proxy account (1) public private key (1) publishing (1) putty (1) qt (1) read file (1) registry (1) relationship (1) repository (1) rm (1) scp (1) scripts (1) scsi (1) sed (1) sendEmail (1) sh stub (1) shortcuts Windows sql developer Oracle (1) sidebar (1) silicon (1) smtp (1) software procurement (1) sofware (1) sort (1) sql script (1) sql_dev (1) sqlcmd (1) sqlite (1) sqlite3 (1) sshd (1) sshd cygwin (1) stackoverflow (1) stored procedure (1) stub (1) stupidity (1) subroutines (1) svn (1) sysinternals (1) tail (1) tar (1) temp table (1) templates (1) teradata (1) terminal (1) test (1) testing (1) theory (1) thorium (1) time (1) tip (1) title (1) tmux .tmux.conf configuration (1) tmux efficiency bash (1) tool (1) ui code prototyping tips and tricks (1) umask Linux Unix bash file permissions chmod (1) url (1) urls (1) user (1) utility (1) utils (1) vb (1) vim perl regex bash search for string (1) vim recursively hacks (1) vim starter (1) vim-cheat-sheet vim cheat-sheet (1) vimeo (1) visual stuio (1) warsaw (1) wiki (1) wikipedia (1) window (1) windows 7 (1) windows 8 (1) windows programs (1) windows reinstall (1) windows utility batch perl space Windows::Clipboard (1) wisdoms (1) workflow (1) worth-reading (1) wrapper (1) xp_cmdshell (1) xslt (1) youtube (1)

Blog Archive

Translate with Google Translate

My Blog List

VideoBar

This content is not yet available over encrypted connections.