Premiere commit - Omika

This commit is contained in:
2026-10-23 18:46:50 +02:00
commit 8ea76c1b24
2155 changed files with 984301 additions and 0 deletions
+80
View File
@@ -0,0 +1,80 @@
# ============================================================
# Probe de LECTURE SEULE de la base Licence HFSQL via OLEDB.
# N'effectue AUCUNE écriture. N'expose aucun secret.
# ============================================================
param(
[string]$ConfigPath = "config/hfsql-test.local.json",
[string]$Section = "LicenseConnection",
[string]$DatabaseOverride = ""
)
$ErrorActionPreference = "Stop"
# --- Lecture de la config locale (contient les secrets) ---
$config = Get-Content $ConfigPath -Raw | ConvertFrom-Json
$db = $config.$Section
if ($null -eq $db) {
Write-Output "SECTION $Section : ABSENTE"
exit 1
}
$server = $db.Server
$port = $db.Port
$database = if ([string]::IsNullOrWhiteSpace($DatabaseOverride)) { $db.DatabaseName } else { $DatabaseOverride }
$login = $db.Login
$password = $db.Password
Write-Output "=== PROBE LECTURE SEULE OLEDB HFSQL ==="
Write-Output "Section : $Section"
Write-Output "Server : $server"
Write-Output "Port : $port"
Write-Output "Database : $database"
Write-Output "Login : $login"
Write-Output "Provider : PCSOFT.HFSQL"
Write-Output "Mode : LECTURE SEULE (aucune ecriture)"
Write-Output ""
# --- Construction de la connection string OLEDB ---
$connStr = "Provider=PCSOFT.HFSQL;Data Source=$server`:$port;Initial Catalog=$database;User ID=$login;Password=$password"
try {
$conn = New-Object System.Data.OleDb.OleDbConnection($connStr)
$conn.Open()
Write-Output "CONNEXION : OUVERTE"
Write-Output "State : $($conn.State)"
Write-Output ""
# --- Liste des tables ---
$schema = $conn.GetOleDbSchemaTable([System.Data.OleDb.OleDbSchemaGuid]::Tables, $null)
if ($null -eq $schema) {
Write-Output "TABLES : schema non disponible"
} else {
Write-Output "TABLES ($($schema.Rows.Count)) :"
foreach ($row in $schema.Rows) {
$tableName = $row["TABLE_NAME"]
$tableType = $row["TABLE_TYPE"]
Write-Output " - $tableName [$tableType]"
}
}
Write-Output ""
# --- Test SELECT 1 ---
$cmd = $conn.CreateCommand()
$cmd.CommandText = "SELECT 1"
$result = $cmd.ExecuteScalar()
Write-Output "SELECT 1 : $result"
$conn.Close()
Write-Output ""
Write-Output "CONNEXION : FERMEE"
Write-Output "RESULTAT : OK (lecture seule)"
exit 0
}
catch {
Write-Output "CONNEXION : ECHEC"
Write-Output "Erreur : $($_.Exception.Message)"
Write-Output "RESULTAT : KO"
exit 3
}