Skip to content

Instantly share code, notes, and snippets.

@TransactCharlie
TransactCharlie / T9Text.py
Created August 14, 2012 10:22
CodeJam 2012 Practice t9 Text
__author__ = 'charles'
inputFile = "C-large-practice.in"
outputFile = inputFile + ".out"
t9map = {
'a': ("2", 1)
, 'b': ("2", 2)
, 'c': ("2", 3)
, 'd': ("3", 1)
@TransactCharlie
TransactCharlie / ufn_EscapeString.sql
Created July 19, 2012 10:00
A simple quote escaper
CREATE FUNCTION ufn_EscapeString(@body NVARCHAR(MAX))
RETURNS NVARCHAR(MAX)
AS BEGIN
RETURN CAST(N'''' AS NVARCHAR(MAX)) + REPLACE(@body, '''', '''''') + CAST(N'''' AS NVARCHAR(MAX))
END
@TransactCharlie
TransactCharlie / Quotename_Injection.sql
Created July 19, 2012 09:59
Showing how QUOTENAME() can be used to escape sql injection
DECLARE @sql NVARCHAR(MAX)
SET @sql = 'SELECT * FROM foo''; DROP TABLE Customers; --'
PRINT QUOTENAME(@sql, '''')
@TransactCharlie
TransactCharlie / Quotename_Injection.sql
Created July 19, 2012 09:37
Showing how QUOTENAME() can be used to escape sql injection
DECLARE @sql NVARCHAR(MAX)
SET @sql = 'SELECT * FROM foo''; DROP TABLE Customers; --'
PRINT QUOTENAME(@sql, '''')
@TransactCharlie
TransactCharlie / Table_Rows_DataSize_SQLServer2008.sql
Created July 18, 2012 08:56
Table Stats for Sql Server 2008
SELECT
o.[name] AS [Table_Name]
, rc.[rows] AS [Data_Rows]
, rc.[rows] / CASE WHEN rc.[usedPages] = 0 THEN 1 ELSE CAST(rc.[usedPages] AS FLOAT) END AS [Rows_Per_Page]
, ic.[Indexes] AS [DeclaredIndexes]
, ROUND(rc.[usedPages] * 8 / 1024.0, 2) AS [Data_Size_MB]
, ROUND(ISNULL(ic.[usedPages] * 8, 0) / 1024.0, 2) AS [Index_size_MB]
FROM
sys.objects AS o