Skip to content

Instantly share code, notes, and snippets.

View Tomamais's full-sized avatar

Tomás Tomamais

View GitHub Profile
using System;
using Oracle.ManagedDataAccess.Client;
using OfficeOpenXml;
using System.IO;
namespace OracleConnectionExample
{
class Program
{
static void Main(string[] args)
Sub ConnectToOracle()
Dim conn As Object
Dim cmd As Object
Dim rs As Object
Dim connString As String
Dim sqlQuery As String
Dim paramValue As String
' Set connection string
connString = "Provider=MSDAORA;Data Source=YourOracleDB;User ID=YourUsername;Password=YourPassword;"
using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Linq;
class DatabaseSyncApp
{
static string sourceConnectionString = "your_source_connection_string";
static string destinationConnectionString = "your_destination_connection_string";
Function FuzzyPercent(ByVal String1 As String, _
ByVal String2 As String, _
Optional Algorithm As Integer = 3, _
Optional Normalised As Boolean = False) As Single
'*************************************
'** Return a % match on two strings **
'*************************************
Dim intLen1 As Integer, intLen2 As Integer
Dim intCurLen As Integer
Dim intTo As Integer
CREATE FUNCTION dbo.FuzzyPercent
(
@String1 NVARCHAR(MAX),
@String2 NVARCHAR(MAX),
@Algorithm INT = 3,
@Normalised BIT = 0
)
RETURNS FLOAT
AS
BEGIN
CREATE FUNCTION dbo.CompareString
(
@keyString NVARCHAR(MAX),
@ansString NVARCHAR(MAX),
@Normalised BIT = 0
)
RETURNS NVARCHAR(MAX)
AS
BEGIN
-- Tested on SQL Server 2019
DECLARE @inputString NVARCHAR(100) = '1,3,2,4,2';
SELECT STUFF((
SELECT ',' + CAST(value AS NVARCHAR(MAX))
FROM STRING_SPLIT(@inputString, ',')
ORDER BY CAST(value AS INT)
FOR XML PATH('')
), 1, 1, '') AS SortedString;
@Tomamais
Tomamais / ranked_priority_query.sql
Created January 9, 2024 21:51
Ranked Priority Query
WITH RankedData AS (
SELECT *,
ROW_NUMBER() OVER (PARTITION BY id ORDER BY CASE WHEN type = 'I' THEN 0 ELSE 1 END) AS TypePriority
FROM your_table_name
)
SELECT id, name, type
FROM (
SELECT *,
ROW_NUMBER() OVER (PARTITION BY id ORDER BY CASE WHEN type = 'E' THEN 0 ELSE 1 END) AS ETypePriority
@Tomamais
Tomamais / sqlserver_only_tables_with_data.sql
Created April 5, 2022 18:54
List all tables with data in a SQL Server Database
DECLARE @SQL AS VarChar(MAX)
SET @SQL = ''
SELECT @SQL = @SQL + 'IF EXISTS(SELECT 1 FROM ' + TABLE_SCHEMA + '.[' + TABLE_NAME + ']) SELECT ''' + TABLE_NAME + ''' as TableName;IF EXISTS(SELECT 1 FROM ' + TABLE_SCHEMA + '.[' + TABLE_NAME + ']) SELECT * FROM ' + TABLE_SCHEMA + '.[' + TABLE_NAME + '] --ELSE SELECT ''No records'' AS [' + TABLE_NAME + ']' + CHAR(13)
FROM INFORMATION_SCHEMA.TABLES ORDER BY TABLE_NAME
EXEC (@SQL)
@Tomamais
Tomamais / modSelenium.bas
Created March 24, 2020 23:15
Live VBA na Veia
Dim driver As WebDriver
Sub ColetaDadosCorreios()
Set driver = New ChromeDriver
With driver
.Get "http://www2.correios.com.br/sistemas/precosPrazos/"
.FindElementById("data").SendKeys Format(DateAdd("d", 1, Now), "dd/MM/yyyy")
.FindElementByName("cepOrigem").SendKeys "01310-200" 'MASP - São Paulo
.FindElementByName("cepDestino").SendKeys "20021-200" 'Museu Nacional do Rio de Janeiro
.FindElementByName("servico").AsSelect().SelectByText ("PAC")