IGNQuery 1.2.2.2

There is a newer version of this package available.
See the version list below for details.
dotnet add package IGNQuery --version 1.2.2.2                
NuGet\Install-Package IGNQuery -Version 1.2.2.2                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="IGNQuery" Version="1.2.2.2" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add IGNQuery --version 1.2.2.2                
#r "nuget: IGNQuery, 1.2.2.2"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install IGNQuery as a Cake Addin
#addin nuget:?package=IGNQuery&version=1.2.2.2

// Install IGNQuery as a Cake Tool
#tool nuget:?package=IGNQuery&version=1.2.2.2                

Igrok-Net-Query

Query building library based on ADO .NET functionality

Parts of project are licnesed under gplv3 others are under MIT please refer to source code and to license file in each project to see under which license it is licensed. This project will be split into multiple nuget packages for convinience of use and to be able to use multiple licenses.

Base class library will be under MIT. Database specific implementations will be licensed under separate licenses

  • MYSQL: GPLV3 to be compatible with community version and connector for mysql
  • Microsoft SQL server: MIT license

If you want to build dev version with prerelease package versions, please add bin\releae folder of your IGNQuery project to package sources. Otherwise you may run into problems with package versions.

If you need to use this package it is advisable to use official nuget packages from NuGet.org

To be able to run this software from version 1.2.2 and up you need to have java 6 or higher installed on your machine

How to use

Disclaimer: We will not send you emails except for service emails (account activation, any resets or any emails that are resulting from actions you do on https://igrok-net.org), email is just used to identify if user have right to use this library.

Create table query exemple:

var dataProvider = new MySqlDataDriver("youremail@domain.com", "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX");
var query = IGNQueriable.Begin("youremail@domain.com", dataProvider, "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX").
                Create().
                Table("test", true, new List<TableColumnConfiguration>()
                {
                    TableColumnConfiguration.FromConfig("id",typeof(long),0,true,true,true,null),
                    TableColumnConfiguration.FromConfig("userId",typeof(long),0,true,false,false,null),
                    TableColumnConfiguration.FromConfig("name",typeof(string),255,false,false,false,null),
                    TableColumnConfiguration.FromConfig("testDate",typeof(DateTime),0,false,false,false,null)
                }).
                Go();
dataProvider.Execute(query);

Create database query exemple:

var dataProvider = new MySqlDataDriver("youremail@domain.com", "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX");
var query = IGNQueriable.Begin("youremail@domain.com", dataProvider, "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX").
                Create().
                Database("testdb", true).
                Go()
dataProvider.Execute(query);

Alter query exemples:

var dataProvider = new MySqlDataDriver("youremail@domain.com", "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX");
var query = IGNQueriable.Begin("youremail@domain.com", dataProvider, "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX").
    Alter("ignusers", true).
    AddColumn(TableColumnConfiguration.FromConfig("test1", typeof(string), 25, false, false, false, ""),true).
    AddColumn(TableColumnConfiguration.FromConfig("test2", typeof(string), 25, false, false, false, ""),true).
    Go();
dataProvider.Execute(query);
query = IGNQueriable.Begin("youremail@domain.com", dataProvider, "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX").
    Alter("ignusers", true).
    AlterColumn(TableColumnConfiguration.FromConfig("test1", typeof(string), 25, false, false, false, ""),true).
    Go();
dataProvider.Execute(query);
query = IGNQueriable.Begin("youremail@domain.com", dataProvider, "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX").
    Alter("ignusers", true).
    DropColumn("test1", true).
    Drop("test2", true).
    Go();
dataProvider.Execute(query);
var dataDriver = new MySqlDataDriver("youremail@domain.com", "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX");
var altquery = IGNQueriable.Begin("youremail@domain.com", dataDriver, "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX").
    Alter("ignusers", true).
    AddColumn(TableColumnConfiguration.FromConfig("test1", typeof(string), 25, false, false, false, ""),true).
    Add(TableColumnConfiguration.FromConfig("test2", typeof(string), 25, false, false, false, ""),true).
    Go();
dataDriver.Execute(altquery);

Delete query exemple:


var dataProvider = new MySqlDataDriver("youremail@domain.com", "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX");
var query = IGNQueriable.Begin("youremail@domain.com", dataProvider, "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX").
    Delete().
    From("ignusers", true).
    Go();

dataProvider.Execute(query);

Insert query exemple:

var dataProvider = new MySqlDataDriver("youremail@domain.com", "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX");
var query = IGNQueriable.Begin("youremail@domain.com", dataProvider, "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX").
        Insert().
        Into("ignusers", new List<string>() { "mail" }, true).
        Values(new List<int> { 0 }).
        Go();

dataProvider.ExecuteWithParameters(query, new List<IGNParameterValue>
    {
        IGNParameterValue.FromConfig(0, "youremail@domain.com")
    });

Drop query exemple:

var dataProvider = new MySqlDataDriver("youremail@domain.com", "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX");
var query = IGNQueriable.Begin("youremail@domain.com", dataProvider, "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX").
    Drop().
    Table("ignusers", true).
    Go();

dataProvider.Execute(query);
Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net40 is compatible.  net403 was computed.  net45 was computed.  net451 was computed.  net452 was computed.  net46 was computed.  net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on IGNQuery:

Package Downloads
IGNQuery.MySql

IGNQuery Implementation for MySQL Server

IGNQuery.SqlServer

IGNQuery Implementation for MS SQL Server

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.2.3.10 148 2/18/2024
1.2.3.1 166 1/28/2024
1.2.3 275 12/20/2023
1.2.2.2 165 9/9/2023
1.2.2 752 12/25/2022
1.2.1.1 574 10/16/2022
1.2.1 906 10/16/2022
1.2.0 955 5/15/2022
1.1.10.22 926 5/14/2022
1.1.10.13 937 5/1/2022
1.1.10.12 925 5/1/2022
1.1.10.8 929 4/3/2022
1.1.10.7 1,006 2/19/2022
1.1.10.4 459 1/23/2022
1.1.10.3 970 1/22/2022
1.1.10.1 438 1/22/2022
1.1.10 658 1/1/2022
1.1.10-alpha21 270 1/1/2022
1.1.10-alpha2 547 9/12/2021
1.1.10-alpha14 1,203 11/28/2021
1.1.9.4 488 5/12/2021
1.1.9.1 510 4/14/2021
1.1.9 907 4/5/2021
1.1.8.2 468 4/5/2021
1.1.8.1 576 3/14/2021
1.1.8 932 3/14/2021
1.1.7.22 902 3/14/2021
1.1.7.21 947 3/14/2021
1.1.7.6 868 3/13/2021
1.1.7.4 862 3/13/2021
1.1.7.1 1,173 3/8/2021
1.1.7 804 3/7/2021
1.1.6.49 948 3/7/2021
1.1.5 1,151 1/24/2021
1.1.4 862 1/23/2021
1.1.3 489 1/21/2021
1.1.2 488 1/21/2021
1.1.1 848 1/9/2021
1.1.0 829 1/9/2021
1.0.9 889 12/8/2020
1.0.8 874 12/7/2020
1.0.7 1,231 12/7/2020
1.0.6 472 12/7/2020
1.0.5 567 12/6/2020
1.0.4 1,746 12/2/2020
1.0.3 889 12/2/2020
1.0.2 391 12/2/2020
1.0.1 345 12/1/2020
1.0.0 404 11/11/2020