2012-06-26 21 views
5

Nel mio lavoro, i miei colleghi stanno prendendo in considerazione l'utilizzo di hyperfile come server di database per un progetto windev. Non conosco nemmeno quel tipo di database, è di PCSOFT, la compagnia che sviluppa windev.consigli su hyperfile db

Poiché windev può funzionare anche con Microsoft SQL Server, sto cercando consigli su questo tipo di database (prestazioni, stabilità, ecc.) Da persone che lo hanno già utilizzato.

Saluti!

risposta

7

Dipende dalle dimensioni del progetto. In realtà, Windev funziona bene con HyperFileSQL. È stato progettato per questo! Usando un altro DBMS, ti tagli alcune funzionalità come la lettura/modifica/eliminazione diretta nelle tue tabelle.

Le tue prestazioni diminuiranno sensibilmente non appena avrai una buona quantità di record in una tabella (> 100'000). La gestione del database diventerà un incubo poiché non è possibile eseguire più richieste SQL contemporaneamente. Ad esempio, sto usando un altro strumento sviluppato da un ragazzo francese per gestire i miei database ed eseguire alcuni aggiornamenti.

Nonostante ciò, è stabile e fornisce un modo semplice per interagire con i campi di Windev.

A mio parere, Hyperfile SQL deve essere utilizzato con piccole applicazioni con una piccola quantità di funzioni e dati.

2

È necessario considerare attentamente quali funzioni sql verranno utilizzate. Ad esempio deg2rad, rad2deg, ... non funziona correttamente.

Inoltre, se si desidera utilizzarlo su un dispositivo mobile (Windev Mobile per iOS o Android) è necessario utilizzare SQLLite. Perché HyperFile utilizza molta memoria e sarà un problema sui dispositivi mobili.

+0

cosa è "Aggiungerò a cura di"? vuol dire che migliorerai la tua risposta? –

1

In WinDev Mobile 18 e versioni successive, è possibile utilizzare Hyperfile sul dispositivo. Ed è consigliato da me, perché è più veloce e SQLLite limita la dimensione del blob a 1MB !!

@L'utilizzo di memoria di HyperFile nel telefono è errato? Puoi darmi qualche valore? Penso che se si desidera creare un'API completa non è possibile ignorare i vantaggi di HyperFile ...

2

Se si desidera un database gratuito, utilizzare PostgreSQL, il connettore Windev per PostgreSQL è gratuito da scaricare e installare sul proprio windev come un rimpiazzo di HFSQL, sarà molto più potente mentre si usano le normali funzioni h come si farebbe con HFSQL, in più si troverà un sacco di documenti sul web per fare cose potenti.

HFSQL è in effetti lo stesso di un vecchio database ISASE DBASE, quindi richiede reindicizzazioni e cose simili a quelle dell'era dei vecchi sistemi DB.

PostgreSQL è come avere un DB Oracle gratuito con tutte le potenti funzionalità e affidabilità, abbiamo eliminato HFSQL per questo e le prestazioni sono aumentate di dieci volte più tutti gli altri vantaggi mantenendo il nostro codice più o meno lo stesso, ogni giorno sembra di scoprire omaggi e regali di ProsgreSQL dalla nostra migrazione :)

Free VS Free ... Devi andare con la potenza e le dimensioni della documentazione web e la disponibilità di informazioni disponibili.

0

FYI: Nuovo in Windev versione 19: Hyperfile SQL è ACID.

2

Aggiunta su ciò che Samuel Tremblay già scritto, direi che dopo 2 anni di utilizzo Windev con HFSQL (vecchio nome è HyperFile SQL), qui sono le mie conclusioni (io ho usato le versioni WINDEV 20 e 22):

PRO:

  • replica di un database a un altro server è piuttosto facile da installare. È possibile scegliere di replicare un intero database o una selezione di tabelle. Ma DBMS come PostgreSQL offre in realtà configurazioni di replica avanzate (https://www.2ndquadrant.com/en/resources/pglogical/).

  • facile esportare in un file di Microsoft Excel di una query/tabella

  • creare e modificare lo schema/struttura del database attraverso un'interfaccia utente grafica (GUI)

CONS:

  • Quando si utilizza il server di database fornito da Windev (cioè HFSQL), è necessario utilizzare Windev (che ti è stato imposto). Non è possibile interagire con il database con un'altra lingua/struttura diversa da Windev, è necessario utilizzare Windev per interrogare un database HFSQL. Se si utilizza invece un DBMS come PostgreSQL, mySQL/MariaDB, ecc. È possibile (e sarà possibile) interrogare il database con un altro linguaggio: C++, Java, JavaScript, ecc. Dire che si desidera ora aprire i propri dati ai clienti tramite un'app Web, sarà effettivamente necessario utilizzare il loro altro software Webdev dalla loro suite di software (e acquistarlo in realtà). Oppure, un giorno, vuoi sviluppare una semplice app per smartphone con Qt o altro. Bene, se il tuo database funziona su HFSQL, allora non sarai in grado di interrogare il tuo database a meno che non usi Windev (in realtà Windev Mobile che devi anche acquistare).
  • I vincoli UNICI non funzionano con la presenza di NULL (due righe contenenti NULL verrebbero considerate come una violazione del vincolo UNIQUE).
  • (quasi) ogni volta che si aggiorna la "analisi/analisi" (in pratica lo schema del database), sarà necessario aggiornare anche il file eseguibile binario. Dovrai ricompilare il tuo software e distribuirlo nuovamente agli utenti. Ad esempio, supponiamo di modificare una tabella aggiungendo una colonna o di modificare il tipo di una colonna, quindi è necessario ricompilare. L'eseguibile che gli utenti non hanno eseguito, dirà che la versione di "analisi" (schema) sul database non è la stessa di quella dell'eseguibile, e si fermerà. BAM!
  • il HyperFile SQL Server (HFSQL) non è così stabile, andrà in crash (spesso) quando l'esecuzione di query leggermente avanzati con non così molte righe ...
  • Non è possibile creare script per interrogare il database HFSQL: è necessario creare un eseguibile binario (un nuovo progetto) con Windev. Dì che vuoi modificare rapidamente qualcosa -> devi ricompilare (e avere un IDE Windev con te).
  • Dire di essere in viaggio, in qualche viaggio, e ti sei dimenticato di portare il tuo computer con la chiave Windev Dongle (una chiave USB crittografica di licenza: non ce l'hai, non puoi eseguire Windev), e hai bisogno fare del lavoro sul database PCSoft fornisce un software chiamato HFSQL Control Center (un software GUI) in grado di interagire con il database, ma sfortunatamente non può essere scaricato da internet.L'hai effettivamente acquistato quando acquisti Windev e sei autorizzato a distribuirlo a chi vuoi, ma non può essere scaricato dal sito Web PCSOFT. Mentre se il tuo motore di database è un altro, ad esempio PostgreSQL o MariaDB, puoi semplicemente scaricare PGAdmin o l'equivalente, e boom puoi interagire con i tuoi dati.
  • Mi sembra che HFSQL non sia un DBMS reale/genuino, mi permetta di spiegarmi: i vincoli che puoi impostare nell'analisi (UNIQUE ad esempio), non sono sempre rispettati. Ad esempio, dopo aver aggiunto un vincolo UNIQUE nello schema (analisi) e aver compilato il programma, ho visto che se inserissi alcuni dati in una tabella dall'eseguibile, esso rileverebbe la violazione del vincolo UNIQUE quando dovrebbe accadere. Tuttavia, se inserissi lo stesso insieme di dati tramite il Centro di controllo HFSQL, il vincolo non sarebbe applicato e i duplicati sarebbero inseriti.
  • Non ci sarebbe altro da dire ...

Bottom line: Dalla mia esperienza, vorrei incoraggiare fortemente chiunque, che vuole sviluppare un software affidabile e credibile che "deve" essere sviluppato con Windev (e che ha bisogno di persistenza dei dati), di non usare il loro database HFSQL. Sarebbe molto meglio usare un RDBMS come PostgreSQL o MariaDB. Questa estate porteremo i nostri database da HFSQL a PostgreSQL.