Aktualna wersja: 17.09.18


Przykłady dostępu do różnych baz danych SQL za pomocą API

API programu pozwala na odczyt danych z dowolnych systemów ERP posługujących się różnymi bazami danych. Wszystkie poniżej przestawione przykłady korzystają z biblioteki TGSoft.DB, którą należy dołączyć w sekcji using.

Oczywiście poza udostępnieniem naszej biblioteki, programista może skorzystać bezpośrednio z biblioteki systemowej System.Data i korzystać z całego dobrodziejstwa ADO.NET.

  • TestMSSQL() - dostęp do bazy MS SQL Server.
  • TestFirebird() - dostęp do bazy Firebird SQL.
  • TestOleDb() - dostęp do różnych baz za pomocą sterowników OLE DB, które muszą być zainstalowane w komputerze. W przykładzie zastosowano bazę MS SQL Server.
  • TestOdbc() - dostęp do różnych baz za pomocą sterowników ODBC, które muszą być zainstalowane w komputerze. W przykładzie zastosowano bazę MS SQL Server.
  • TestDBF() - dostęp do tabel DBF (Clipper)
  • TestSqlProcedure() - przykład pobrania rekordów, które są wynikiem procedury zapisanej w bazie MS SQL Server. Procedura wymaga podania dwóch parametrów (daty).
  • TestOledbProcedure() - Powyższy przykład wykonany za pomocą sterowników OLE DB.

Poniżej cały kod C# naszego przykładu:

namespace Szark
{
    using System;
    using System.Windows.Forms;
    using System.Data;
    using System.Data.SqlClient;
    using System.Data.OleDb;
    using TGSoft.DB;

    public partial class Form1 : DevExpress.XtraEditors.XtraForm
    {
        private const string sqlSelect = "SELECT * FROM jpk_rejestry_vat";
        private DataTable dt;

        public Form1(object sender)
        {
            this.InitializeComponent();
        }

        public void Main()
        {
            this.ShowDialog();
        }   
      
        private void TestMSSQL()
        {
            var sql = new TGSoft.DB.MsSql(@"XServer\SQLExpress", "erp_database", "", "");
            dt = sql.GetSQLTable(sqlSelect);
            dataGridView1.DataSource = dt;
        }
        
        private void TestFirebird()
        {
            var sql = new TGSoft.DB.FbSql("10.1.0.12", @"c:\Katalog-ERP\PROGRAM-ERP.FDB", "SYSDBA", "masterkey");
            sql.ServerType = TGSoft.DB.FbSql.FirebirdServerType.Default;            
            dt = sql.GetSQLTable(sqlSelect);
            dataGridView1.DataSource = dt;
        }
        
        private void TestOleDb()
        {
            var sql = new TGSoft.DB.OleDb(@"Provider=SQLNCLI11;Server=XServer\SQLExpress;Database=erp_database;Trusted_Connection=Yes");
            dt = sql.GetSQLTable(sqlSelect);
            dataGridView1.DataSource = dt;
        }
       
        private void TestOdbc()
        {
            var sql = new TGSoft.DB.Odbc(@"Driver={SQL Server};Server=XServer\SQLExpress;Database=erp_database;Trusted_Connection=Yes;");
            dt = sql.GetSQLTable(sqlSelect);
            dataGridView1.DataSource = dt;
        }

        private void TestDBF()
        {
            var sql = new TGSoft.DB.ADS("", @"c:\Katalog-ERP", "", "") { TableType = ADS.AdsTableType.DBF_NTX };
            dt = sql.GetSQLTable(sqlSelect);
            dataGridView1.DataSource = dt;
        }
        
        private void TestSqlProcedure()
        {
            var param1 = new SqlParameter { ParameterName = "@data1", Value = new DateTime(2017, 1, 1) };
            var param2 = new SqlParameter { ParameterName = "@data2", Value = new DateTime(2017, 1, 31) };
            
            var sql = new TGSoft.DB.MsSql(@"XServer\SQLExpress", "erp_database", "", "");
            dt = sql.GetSPTable("dbo.RejestryVAT", new SqlParameter[] { param1, param2 });
            dataGridView1.DataSource = dt;
        }
        
        private void TestOledbProcedure()
        {
            var param1 = new OleDbParameter { ParameterName = "@data1", Value = new DateTime(2017, 1, 1) };
            var param2 = new OleDbParameter { ParameterName = "@data2", Value = new DateTime(2017, 1, 31) };
            
            var sql = new TGSoft.DB.OleDb(@"Provider=SQLNCLI11;Server=XServer\SQLExpress;Database=erp_database;Trusted_Connection=Yes");
            dt = sql.GetSPTable("dbo.RejestryVAT", new OleDbParameter[] { param1, param2 });
            dataGridView1.DataSource = dt;
        }
    }
}
        


Przykłady połączeń do różnych baz danych za pomocą sterowników OLE DB i ODBC można znaleźć na stronie: https://www.connectionstrings.com

Np. dla bazy Pervasive: https://www.connectionstrings.com/pervasive/



Zapoznaj się z następnym dokumentem Rejestr Sprzedaży VAT.