Skip to content

Instantly share code, notes, and snippets.

View ststeiger's full-sized avatar
😎
Back from holidays

Stefan Steiger ststeiger

😎
Back from holidays
  • Switzerland
View GitHub Profile
@ststeiger
ststeiger / README.md
Last active February 23, 2021 15:28 — forked from jstcki/README.md
Swiss Cantons and Municipalities

Map of Switzerland with TopoJSON and map data from Swiss Maps. Cantons and municipalities are combined in a single TopoJSON file.

@ststeiger
ststeiger / PremissionEntities.sql
Created August 13, 2015 14:43
Users and Groups where Groups can be members of groups
/*
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'[dbo].[V_GroupMembership]'))
DROP VIEW [dbo].[V_GroupMembership]
GO
CREATE VIEW dbo.V_GroupMembership
AS
@ststeiger
ststeiger / ArrayParameter.sql
Created August 13, 2015 14:52
Arrays as Parameters in pgSQL
SELECT * FROM some_table WHERE id_column = ANY(@id_list)
-- where @id_list is bound to an int[] parameter by way of
SELECT * FROM some_table WHERE id_column = ANY(@id_list);
-- Code:
command.Parameters.Add("@id_list", NpgsqlDbType.Array | NpgsqlDbType.Integer).Value = my_id_list;
where command is a NpgsqlCommand
@ststeiger
ststeiger / UserGroupMappings.sql
Last active August 29, 2015 14:27
User Group Mappings - MultiMember + Cycle, recursive workaround
/*
CREATE TABLE T_PermissionEntity
(
Id bigint NOT NULL,
Name national character varying(255) NULL,
IsGroup bit NULL,
IsUser bit NULL,
CONSTRAINT PK_T_PermissionEntity PRIMARY KEY (Id)
);
@ststeiger
ststeiger / DateCheckConstraints
Created August 24, 2015 12:53
Create check constraints for DateFrom/DateTo
SELECT
--table_name
--,column_name,
--,' SELECT ''' + REPLACE(table_name, '''', '''''') + ''' AS tableName, * FROM ' + QUOTENAME(table_name) + ' WHERE ' + QUOTENAME(column_name) + ' > ' + REPLACE(QUOTENAME(column_name), 'Von', 'Bis') + '; ' AS cmd
--,
'
IF EXISTS (SELECT * FROM sys.check_constraints WHERE object_id = OBJECT_ID(N''dbo.CHK_' + table_name + '_' + column_name + '_LESSOREQUAL_' + REPLACE(column_name, 'Von', 'Bis') + ''') AND parent_object_id = OBJECT_ID(N''dbo.' + table_name + '''))
@ststeiger
ststeiger / V_DEV_InsertDataDependency
Created September 2, 2015 07:45
View to insert table by dependency
IF EXISTS (SELECT * FROM sys.views WHERE object_id = OBJECT_ID(N'dbo.V_DEV_InsertDataDependency'))
DROP VIEW dbo.V_DEV_InsertDataDependency
GO
CREATE VIEW dbo.V_DEV_InsertDataDependency
AS
@ststeiger
ststeiger / main_data_tables.sql
Created September 2, 2015 07:49
Get a list of main data tables (no ref tables, no sys tables)
SELECT
table_schema
,table_name
FROM INFORMATION_SCHEMA.TABLES
WHERE table_type = 'BASE TABLE'
AND table_name NOT IN ('dtproperties', 'sysdiagrams')
AND table_name LIKE 'T\_%' ESCAPE '\'
AND table_name NOT LIKE 'T\_BO\_%' ESCAPE '\'
@ststeiger
ststeiger / Disable_DELETE_Trigger.sql
Created September 2, 2015 08:33
Trigger to disable deletes ;)
CREATE TRIGGER dbo.TG_INSTEAD_DEL_T_Benutzer_Benutzergruppen
ON dbo.T_Benutzer_Benutzergruppen
INSTEAD OF DELETE
AS
BEGIN
RETURN
END
@ststeiger
ststeiger / fn_GetFlagDescription.sql
Last active September 3, 2015 14:30
GetFlagDescription (SELECT/INSERT/UPDATE/DELETE)
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'dbo.fn_GetFlagDescription') AND type in (N'FN', N'IF', N'TF', N'FS', N'FT'))
DROP FUNCTION dbo.fn_GetFlagDescription
GO
CREATE FUNCTION dbo.fn_GetFlagDescription(@flag int)
RETURNS varchar(400)
AS
Public Shared Function GetFlagDescription(flag As Integer) As String
Dim vcRet As String = Nothing
' Flag:
' SUM
' (
' CASE
' WHEN PRIVILEGE_TYPE = 'SELECT' THEN 1
' WHEN PRIVILEGE_TYPE = 'INSERT' THEN 2