Giter Site home page Giter Site logo

sql-from-file's Introduction

sql-from-file

Still find it easier to write complex query in pure SQL?

Annoyed with keeping SQL code in the same file as your code? Lack of syntax coloring in string?

sql-from-file to the rescue!

Usage

Put this in your Gemfile

gem 'sql-from-file', :git => '[email protected]:robertino/sql-from-file.git'

Syntax

Ruby

Parse SQL file and get query by it's name (see: comment)

sqf = SQLFromFile.new("filename.sql")
sqf.query(:query_name)

sqf.query # this works only if there is only one query in a file

Replace variables

sqf.query(:query_name, {date: Date.today})

SQL file format

Put SQL query in your file

Name your query by providing a comment above the query (you can skip this if only one query is in SQL file)

Comment format

-- ruby-sql-query: query_name

where query name is going to be the symbol used to get the query

Multiple queries in one file

Create comments as described above for separates queries (comment above query)

Variables

Should be defined as (2 underscores on each side):

__VARIABLE_NAME__

Other

This gem is still quite dumb. It doesn't do any string validation. There is a plan to fix that.

sql-from-file's People

Contributors

robertino avatar

Stargazers

Ben Hawker avatar Lloyd Pick avatar

Watchers

 avatar James Cloos avatar

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.