B-Arts DocumentationIndice generale

BAggiornaDB - Esempi

Verifica di una tabella SQL Server

using B.BData;
using B.BLog;
using B.BStatics;

using BConnection connection = new BConnection(GetDatabaseSetting());
BLogText log = new BLogText();

bool exists = BAggiornaDB.EsisteTabella(
  connection,
  "Customers",
  out bool containsRows,
  log);

false può indicare tabella assente oppure errore di interrogazione; usare BLogText.Text per la diagnostica. Il metodo è specifico di SQL Server e verifica le righe con SELECT TOP 1.

Creazione o sostituzione di oggetti SQL

bool viewCreated = BAggiornaDB.CreaVista(connection, createViewSql, log);
bool procedureCreated = BAggiornaDB.CreaStoredProcedure(connection, createProcedureSql, log);
bool functionCreated = BAggiornaDB.CreaFunction(connection, createFunctionSql, log);

I metodi ricavano il nome dal comando, eliminano l'oggetto esistente e poi eseguono il CREATE. Usarli per script di installazione o aggiornamento controllati, non durante normali letture applicative.

Mappatura dei tipi di colonna

DataColumn description = new DataColumn("Description", typeof(string))
{
  MaxLength = 500
};

string sqlType = BAggiornaDB.GetStrType(description); // NVARCHAR(MAX)
Type runtimeType = BAggiornaDB.GetTypeFromString("INT32"); // System.Int32

Formato dati B-Arts

string fieldSeparator = BAggiornaDB.K_SeparatoreCampo; // «|b|»
string rowSeparator = BAggiornaDB.K_SeparatoreRigo;    // «~b~»

Sono gli stessi separatori usati nel formato BIF; non sostituirli con delimitatori inventati.

DropAllIndex elimina gli indici individuati nelle tabelle utente. È un'operazione distruttiva destinata esclusivamente a procedure esplicite di aggiornamento database e restituisce una stringa vuota in caso di completamento oppure il testo dell'eccezione generale.