{"id":16962620,"url":"https://github.com/jrvansuita/sqlitehelper","last_synced_at":"2025-03-22T14:30:54.963Z","repository":{"id":130109354,"uuid":"72455309","full_name":"jrvansuita/SQLiteHelper","owner":"jrvansuita","description":"🗄 This project comes in handy when you want to write a sql statement easily and smarter.","archived":false,"fork":false,"pushed_at":"2022-05-25T18:58:08.000Z","size":109,"stargazers_count":59,"open_issues_count":0,"forks_count":17,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-03-01T16:35:21.347Z","etag":null,"topics":["android","contentvalues","cursor","database","dataset","delete","insert","query","sql","sqlite","sqlite-database","sqlite3","sqlitehelper","trim","update"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jrvansuita.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-10-31T16:25:48.000Z","updated_at":"2024-08-22T10:10:38.000Z","dependencies_parsed_at":null,"dependency_job_id":"2b3f7e36-9da3-49c4-8c17-25483391b1be","html_url":"https://github.com/jrvansuita/SQLiteHelper","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrvansuita%2FSQLiteHelper","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrvansuita%2FSQLiteHelper/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrvansuita%2FSQLiteHelper/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jrvansuita%2FSQLiteHelper/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jrvansuita","download_url":"https://codeload.github.com/jrvansuita/SQLiteHelper/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244217801,"owners_count":20417664,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","contentvalues","cursor","database","dataset","delete","insert","query","sql","sqlite","sqlite-database","sqlite3","sqlitehelper","trim","update"],"created_at":"2024-10-13T23:07:18.720Z","updated_at":"2025-03-22T14:30:54.957Z","avatar_url":"https://github.com/jrvansuita.png","language":"Java","funding_links":["https://ko-fi.com/A406JCM'"],"categories":[],"sub_categories":[],"readme":"\n \u003ca href='https://ko-fi.com/A406JCM' target='_blank'\u003e\u003cimg height='36' style='border:0px;height:36px;' src='https://az743702.vo.msecnd.net/cdn/kofi4.png?v=f' border='0' alt='Buy Me a Coffee at ko-fi.com' /\u003e\u003c/a\u003e\n\n\n[![Release](https://jitpack.io/v/jrvansuita/SQLiteHelper.svg)](https://jitpack.io/#jrvansuita/SQLiteHelper)\n[![Android Arsenal](https://img.shields.io/badge/Android%20Arsenal-SQLiteParser-green.svg?style=true)](https://android-arsenal.com/details/1/4565)\n\n# SQLiteHelper \nThis Parser comes in handy when you want to write a sql statement easily and smarter.\n\n#Porpouse\n\nMake things easy when you need to write a sql statment for Android SQLite.\n\n# Usage\n\n#### Step 1. Add the JitPack repository to your build file:\n\n    allprojects {\n\t\trepositories {\n\t\t\t...\n\t\t\tmaven { url \"https://jitpack.io\" }\n\t\t}\n\t}\n\n#### Step 2. Add the dependency\n\n    dependencies {\n\t        compile 'com.github.jrvansuita:SQLiteHelper:v1.0.0'\n\t}\n\n# Samples\n You can take a look at the sample app [located on this project](/app/).\n\n# Implementation\n\n### Select\n\n##### Working with columns.   \n\n    SqlParser.query()\n       .col(\"A\")\n       .col(\"B\")\n       .col(\"C\", \"NICK\")\n       .col(\"ALIAS\",\"D\", \"NICK\")\n       .cols(\"E\", \"F\", \"G\")\n       .sum(\"H\").count()\n       .max(\"I\")\n       .table(\"YOUR_TABLE\", \"T\")\n       .build();\n\n   \u003e Output: SELECT A, B, C AS NICK, ALIAS.D AS NICK, E, F, G, SUM(H), COUNT(*), MAX(I) FROM  YOUR_TABLE T\n\n\n##### More than one table.   \n\n     SqlParser.query()\n        .col(\"P\", \"NAME\", \"PRODUCT_NAME\")\n        .col(\"C\", \"NAME\", \"COLOR_NAME\")\n        .table(\"PRODUCT\", \"P\")\n        .table(\"COLOR\", \"C\")\n        .equal(\"P\", \"IDCOLOR\", \"C\",\"ID\")\n        .build();\n\n  \u003e Output: SELECT P.NAME AS PRODUCT_NAME, C.NAME AS COLOR_NAME FROM PRODUCT P, COLOR C WHERE P.IDCOLOR = C.ID\n\n\n##### Exists or not exists.   \n   \n        SqlParser.query()\n           .table(\"TABLE\", \"T\")\n           .exists(Sql.query().table(\"XTABLE\", \"XT\").equal(\"XT\", \"FIELD\", \"T\",\"FIELD\").build())\n           .notExists(Sql.query().table(\"YTABLE\", \"YT\").equal(\"YT\", \"FIELD\", \"T\",\"FIELD\").build())\n           .build();\n  \n  \u003e Output: SELECT  *  FROM  TABLE T WHERE  EXISTS (SELECT  *  FROM  XTABLE XT WHERE XT.FIELD = T.FIELD) NOT EXISTS (SELECT  *  FROM  YTABLE YT WHERE YT.FIELD = T.FIELD)\n  \n  \n##### Greater, smaller, equal, trim.   \n  \n      SqlParser.query()\n         .table(\"TABLE\")\n         .greater(\"THE_COLUMN\" , 9)\n         .and()\n         .smallerEqual(\"THE_COLUMN\", 40)\n         .or()\n         .equalTrim(\"TEST\", \" RAW \")\n         .like(\"TEST2\", \"%fox%\")\n         .build();\n       \n   \u003e Output: SELECT  *  FROM  TABLE WHERE THE_COLUMN \u003e 9 AND THE_COLUMN \u003c= 40 OR TRIM(TEST) = 'RAW'\n       \n### Delete.\n\n     SqlParser.delete(\"TABLE\").smallerEqual(\"COL\", 0).build();     \n     \n   \u003e Output: DELETE FROM TABLE WHERE COL \u003c= 0\n   \n### Insert.\n   \n      SqlParser.insert(\"TABLE\")\n         .col(\"A\", 1)\n         .col(\"B\", \"TEST\")\n         .build();\n\n\u003e Output: INSERT INTO TABLE(A,B) VALUES(1,'TEST');\n         \n### Create.\n\n     SqlParser.create(\"TABLE\")\n                .pk(\"ID\")\n                .num(\"CODE\")\n                .num(\"TYPE\")\n                .flo(\"PRICE\")\n                .flo(\"QUANTITY\")\n                .build();\n                \n  \u003e Output: CREATE TABLE TABLE (ID INTEGER PRIMARY KEY,CODE INTEGER,TYPE INTEGER,PRICE FLOAT,QUANTITY FLOAT);\n\n         \n### Cursor.\n\n     Cursor cp = SqlParser.cursor(yourCursor);\n\n        if (cp.binded()) \n            Product product = new Product(cp.num(\"ID\")\n                                        , cp.num(\"CODE\")\n                                        , cp.flo(\"STOCK\")\n                                        , cp.flo(\"\")\n                                        , cp.str(\"NAME\"));\n                                        \n                                        \n### ContentValues.\n       \n\t SqlParser.content().add(\"NAME\", \"John\")\n\t\t          .add(\"CITY\", \"New York\")\n        \t\t  .add(\"STATE\", \"New Jersey\");\n        \t\t  \n## Update\n\n        ContentValues cv =  SqlParser.content().add(\"NAME\", \"John\")\n\t\t          .add(\"CITY\", \"New York\")\n        \t\t  .add(\"STATE\", \"New Jersey\").get();\n\n         yourDb.update(tableName, cv, rowId + \" = ?\", new String[]{String.valueOf(yourId)});\n\n\n\n\n\u003ca href=\"https://www.instagram.com/jnrvans/\" target=\"_blank\"\u003e\n  \u003cimg src=\"https://camo.githubusercontent.com/c9dacf0f25a1489fdbc6c0d2b41cda58b77fa210a13a886d6f99e027adfbd358/68747470733a2f2f6564656e742e6769746875622e696f2f537570657254696e7949636f6e732f696d616765732f7376672f696e7374616772616d2e737667\" alt=\"Instagram\" witdh=\"44\" height=\"44\" hspace=\"10\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://github.com/jrvansuita\" target=\"_blank\"\u003e\n  \u003cimg src=\"https://camo.githubusercontent.com/b079fe922f00c4b86f1b724fbc2e8141c468794ce8adbc9b7456e5e1ad09c622/68747470733a2f2f6564656e742e6769746875622e696f2f537570657254696e7949636f6e732f696d616765732f7376672f6769746875622e737667\" alt=\"Github\" witdh=\"44\" height=\"44\" hspace=\"10\"\u003e\n\u003c/a\u003e\n\u003ca href=\"https://play.google.com/store/apps/dev?id=8002078663318221363\" target=\"_blank\"\u003e\n  \u003cimg src=\"https://camo.githubusercontent.com/8ce12185c778e13eed2073e7a6aba042ce5092d4d41744e7052e0fc16363c386/68747470733a2f2f6564656e742e6769746875622e696f2f537570657254696e7949636f6e732f696d616765732f7376672f676f6f676c655f706c61792e737667\" alt=\"Google Play Store\" witdh=\"44\" height=\"44\" hspace=\"10\"\u003e\n\u003c/a\u003e\n\u003ca href=\"mailto:vansuita.jr@gmail.com\" target=\"_blank\" \u003e\n  \u003cimg src=\"https://camo.githubusercontent.com/4a3dd8d10a27c272fd04b2ce8ed1a130606f95ea6a76b5e19ce8b642faa18c27/68747470733a2f2f6564656e742e6769746875622e696f2f537570657254696e7949636f6e732f696d616765732f7376672f676d61696c2e737667\" alt=\"E-mail\" witdh=\"44\" height=\"44\" hspace=\"10\"\u003e\n\u003c/a\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjrvansuita%2Fsqlitehelper","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjrvansuita%2Fsqlitehelper","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjrvansuita%2Fsqlitehelper/lists"}