fix: risolto errore di sintassi nella validazione delle query custom multi-database

- Corretto metodo ValidateCustomQuery per utilizzare CreateLimitedQuery con sintassi specifica per ogni tipo di database
- Rimosso uso diretto di "LIMIT 1" che causava errori su SQL Server e Oracle
- Implementato supporto per sintassi corretta: TOP (SQL Server), ROWNUM (Oracle), LIMIT (MySQL/PostgreSQL/SQLite), FETCH FIRST (DB2)
- Aggiunto messaggio di successo verde nella UI per query valide
- Migliorata gestione degli errori nella validazione con logging dettagliato
- La validazione ora funziona correttamente su tutti i database supportati (SQL Server, Oracle, MySQL, PostgreSQL, SQLite, DB2, SAP HANA)
This commit is contained in:
2025-07-02 02:08:10 +02:00
parent fb3b3142a7
commit 61883c3467
2 changed files with 234 additions and 24 deletions
+15 -10
View File
@@ -14,11 +14,6 @@
@using Microsoft.AspNetCore.Components
@using Microsoft.AspNetCore.Components.Web
@using Components
@inject IDataConnectionCredentialService CredentialService
@inject IDataConnectionFactory ConnectionFactory
@inject IJSRuntime JSRuntime
@inject ILogger<DataCoupler> Logger
@inject CredentialManager.Services.IDataCouplerProfileService ProfileService
<PageTitle>Data Coupler</PageTitle>
@@ -168,12 +163,22 @@
}
</div>
@if (!string.IsNullOrEmpty(queryValidationMessage) && !isQueryValid)
@if (!string.IsNullOrEmpty(queryValidationMessage))
{
<div class="alert alert-danger" role="alert">
<i class="fas fa-exclamation-triangle"></i>
@queryValidationMessage
</div>
@if (isQueryValid)
{
<div class="alert alert-success" role="alert">
<i class="fas fa-check-circle"></i>
@queryValidationMessage
</div>
}
else
{
<div class="alert alert-danger" role="alert">
<i class="fas fa-exclamation-triangle"></i>
@queryValidationMessage
</div>
}
}
<!-- Anteprima risultati query -->