Coder Social home page Coder Social logo

dynamicquery's People

Contributors

90301 avatar

Watchers

 avatar  avatar  avatar

dynamicquery's Issues

Constant Generation

Option 1:

private const string NAME_CONST = "name";
public static ColVariable NameColVariable = new ColVariable(NAME_CONST, qmd);
...
jt1.addSameColJoin(NAME_CONST);

Option 2:

public static ColVariable NameColVariable = new ColVariable(NAME_CONST, qmd);
...
jt1.addSameColJoin(NAME_CONST);

Personally I'm leaning more towards constant generation as it might be easier to maintain the code if you don't have to change the text in multiple places.

Automatic Natural Join

Default behavior for joins (Code Generation Version) should look for column names that are the same. Better behavior would be to look for key relationships.

Select Preview

List out columns of SQL Query in C# Code Generator.
Similar process can be used for a col choose (For optimized queries)

DB Cache System

Have the ability to cache results (This is an opt in feature for a given collection / object)

Some Cache Strategies:

  • Refresh if after X minutes (only refreshes when data is needed)
  • Refresh on Method Call Only (Essentially allows a refresh button to be added, or custom user implementation)
  • Others?

Get Efficient Table

Method that gets the efficient table with joins only occurring where it is relevant. Similar to getFullTable() method.

NOTE: I think this can only use LEFT JOINS. If any other type of join is used with the potential of data loss, it must throw an error and/or call getFullTable()

Optional Manual Object Optimization

If the user so desires for certain object, they can specify the columns that they want to use, and the code generator will only produce those fields, saving memory.

☑ Select columns to generate (saves memory)

☑ Column
☐ Column
☑ Column

Case Statement Support

Look into Case Statement support for "Special" Columns.

Also, Test performance of SQL vs C#.

Collection Loading

One way to handle collection loading would be to pass the collection to a method

MyCollection = qmd.loadToCollection(MyCollection);

Get All Col Names Method

Select * with a count of 1
Intended to get all column names.
Intended to be used by C# Code Generation and SQL auto-complete / builders.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.