{"_id":"gracenode-mysql","_rev":"27-b186e957cb67711e395418b2d2604b09","name":"gracenode-mysql","description":"mysql module for gracenode framework.","dist-tags":{"latest":"0.1.5"},"versions":{"0.1.0":{"name":"gracenode-mysql","description":"mysql module for gracenode framework.","version":"0.1.0","author":{"name":"Nobuyori Takahashi","email":"voltrue2@yahoo.com"},"repository":{"type":"git","url":"https://github.com/voltrue2/gracenode-mysql.git"},"dependencies":{"node-uuid":"1.4.1","async":"0.8.0","mysql":"2.0.1"},"devDependencies":{"mocha":"1.18.2"},"engine":"node >= 0.10.20","contributors":[{"name":"Brian de Heus","email":"me@brian.jp"}],"keywords":["gracenode","framework","mysql"],"license":"MIT","bugs":{"url":"https://github.com/voltrue2/gracenode-mysql/issues"},"_id":"gracenode-mysql@0.1.0","dist":{"shasum":"4e6570d5917a866c2ab72ccce5619a78136e793c","tarball":"https://registry.npmjs.org/gracenode-mysql/-/gracenode-mysql-0.1.0.tgz","integrity":"sha512-De/UNCFtHgiwNxOgSOo9JFtFypjKfrPkG/VSvYrkFf8aB/BikqAarQmg+twZpGfW44rSqrU7w7JejnokpV5j+A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH4PYpyj5deJ5EaqvPgbXQ/adKgVCIGsLQrDPreQ8hhRAiACUSxLNWJ/l1AoVZHf1ltS4qpMbTDHC/gBQZAQELSrSQ=="}]},"_from":"/var/www/npm-repo/node_modules/gracenode-mysql/","_npmVersion":"1.3.11","_npmUser":{"name":"voltrue2","email":"voltrue2@yahoo.com"},"maintainers":[{"name":"voltrue2","email":"voltrue2@yahoo.com"}]},"0.1.1":{"name":"gracenode-mysql","description":"mysql module for gracenode framework.","version":"0.1.1","author":{"name":"Nobuyori Takahashi","email":"voltrue2@yahoo.com"},"repository":{"type":"git","url":"https://github.com/voltrue2/gracenode-mysql.git"},"dependencies":{"node-uuid":"1.4.1","async":"0.8.0","mysql":"2.0.1"},"devDependencies":{"mocha":"1.18.2"},"engine":"node >= 0.10.20","contributors":[{"name":"Brian de Heus","email":"me@brian.jp"}],"keywords":["gracenode","framework","mysql"],"license":"MIT","bugs":{"url":"https://github.com/voltrue2/gracenode-mysql/issues"},"_id":"gracenode-mysql@0.1.1","dist":{"shasum":"8f97fc772cbe07cefe5f119180741fc6d811997d","tarball":"https://registry.npmjs.org/gracenode-mysql/-/gracenode-mysql-0.1.1.tgz","integrity":"sha512-idQFYXjtkA2WUNhFbDwKbar+ZxbEFIjwDecYkTd0m+umFNGHrhaus3X16j54Y9ZMQhi8dvYh3OnDckMimo1VRw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHgxnvdoE5P1KsgCg27XsHlayGPCZy3LilimOLQ5EbaPAiAGClKp6qDIybVI1fDSe3F7UKlbUhCR5ucHImsnB/5edw=="}]},"_from":"/var/www/npm-repo/node_modules/gracenode-mysql/","_npmVersion":"1.3.11","_npmUser":{"name":"voltrue2","email":"voltrue2@yahoo.com"},"maintainers":[{"name":"voltrue2","email":"voltrue2@yahoo.com"}]},"0.1.2":{"name":"gracenode-mysql","description":"mysql module for gracenode framework.","version":"0.1.2","author":{"name":"Nobuyori Takahashi","email":"voltrue2@yahoo.com"},"repository":{"type":"git","url":"https://github.com/voltrue2/gracenode-mysql.git"},"dependencies":{"node-uuid":"1.4.1","async":"0.8.0","mysql":"2.0.1"},"devDependencies":{"mocha":"1.18.2"},"engine":"node >= 0.10.20","contributors":[{"name":"Brian de Heus","email":"me@brian.jp"}],"keywords":["gracenode","framework","mysql"],"license":"MIT","bugs":{"url":"https://github.com/voltrue2/gracenode-mysql/issues"},"_id":"gracenode-mysql@0.1.2","dist":{"shasum":"901d63c48802846149debc2e08100d518ce03ce3","tarball":"https://registry.npmjs.org/gracenode-mysql/-/gracenode-mysql-0.1.2.tgz","integrity":"sha512-re/fHGj4NawbelvBs36tU+AfP05SmaPTZhZeCv7gQi3KJDo8GS2/aVzkFHVxjYWdQKScq/IDF4hR9jTRA2/JSQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDG5aHaj59DCwgbrDaunu10hoybAzhwcoZqBdMl/we8BAiASNYl6xLg8fhbAr4wn/dZqtTykwPSAjwHOXlDGwZTdLA=="}]},"_from":"/var/www/npm-repo/node_modules/gracenode-mysql/","_npmVersion":"1.3.11","_npmUser":{"name":"voltrue2","email":"voltrue2@yahoo.com"},"maintainers":[{"name":"voltrue2","email":"voltrue2@yahoo.com"}]},"0.1.3":{"name":"gracenode-mysql","description":"mysql module for gracenode framework.","version":"0.1.3","author":{"name":"Nobuyori Takahashi","email":"voltrue2@yahoo.com"},"repository":{"type":"git","url":"https://github.com/voltrue2/gracenode-mysql.git"},"dependencies":{"node-uuid":"1.4.1","async":"0.8.0","mysql":"2.0.1"},"devDependencies":{"mocha":"1.18.2"},"engine":"node >= 0.10.20","contributors":[{"name":"Brian de Heus","email":"me@brian.jp"}],"keywords":["gracenode","framework","mysql"],"license":"MIT","bugs":{"url":"https://github.com/voltrue2/gracenode-mysql/issues"},"_id":"gracenode-mysql@0.1.3","dist":{"shasum":"5c3b67aac8e38321eeee2a0dac488ce2aa81e739","tarball":"https://registry.npmjs.org/gracenode-mysql/-/gracenode-mysql-0.1.3.tgz","integrity":"sha512-rAm8Nm8f/K02kECJc5U7+CjUh1DakLHYEWcCzR3vYWMFgzLNlhKV0a/uciQ2wTKL19EqukfwkSoCxUA4nn6k7Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCuGCzaWi3Wlt6gYOnZhfh6ByuFFS69FH0DnIrc7BUkrQIhAO1I8J4GlgBWDjcmyO/Gj8q70RdFY1EyMOlJ6LHlpkrS"}]},"_from":"/var/www/npm-repo/node_modules/gracenode-mysql/","_npmVersion":"1.3.11","_npmUser":{"name":"voltrue2","email":"voltrue2@yahoo.com"},"maintainers":[{"name":"voltrue2","email":"voltrue2@yahoo.com"}]},"0.1.4":{"name":"gracenode-mysql","description":"mysql module for gracenode framework.","version":"0.1.4","author":{"name":"Nobuyori Takahashi","email":"voltrue2@yahoo.com"},"repository":{"type":"git","url":"https://github.com/voltrue2/gracenode-mysql.git"},"dependencies":{"node-uuid":"1.4.1","async":"0.8.0","mysql":"2.0.1"},"devDependencies":{"mocha":"1.18.2"},"engine":"node >= 0.10.20","contributors":[{"name":"Brian de Heus","email":"me@brian.jp"}],"keywords":["gracenode","framework","mysql"],"license":"MIT","bugs":{"url":"https://github.com/voltrue2/gracenode-mysql/issues"},"_id":"gracenode-mysql@0.1.4","dist":{"shasum":"b2df217fa99a04c3943a01d16c011486ce166259","tarball":"https://registry.npmjs.org/gracenode-mysql/-/gracenode-mysql-0.1.4.tgz","integrity":"sha512-r/f1tzPe+6Pv13g/XypNK5qV7ZO8A366FtsoswrO7nisFEyW0vuTlm9QS35purd95ZpUaXuO72+1plouKxa90w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCQDJeQ74hSzFl8etnTZSgxhup2fTYUtCf3N+XfatzU/QIhAKE1hfHqfkad+0F03ojlAbWWWGRVFUypG3vnRA0uEaVB"}]},"_from":"/var/www/npm-repo/node_modules/gracenode-mysql/","_npmVersion":"1.3.11","_npmUser":{"name":"voltrue2","email":"voltrue2@yahoo.com"},"maintainers":[{"name":"voltrue2","email":"voltrue2@yahoo.com"}]},"0.1.5":{"name":"gracenode-mysql","description":"mysql module for gracenode framework.","version":"0.1.5","author":{"name":"Nobuyori Takahashi","email":"voltrue2@yahoo.com"},"repository":{"type":"git","url":"https://github.com/voltrue2/gracenode-mysql.git"},"dependencies":{"node-uuid":"1.4.1","async":"0.8.0","mysql":"2.0.1"},"devDependencies":{"mocha":"1.18.2"},"engine":"node >= 0.10.20","contributors":[{"name":"Brian de Heus","email":"me@brian.jp"}],"keywords":["gracenode","framework","mysql"],"license":"MIT","bugs":{"url":"https://github.com/voltrue2/gracenode-mysql/issues"},"_id":"gracenode-mysql@0.1.5","dist":{"shasum":"74810b79257f274ec7f9c41d38f3a1a99b3633e3","tarball":"https://registry.npmjs.org/gracenode-mysql/-/gracenode-mysql-0.1.5.tgz","integrity":"sha512-dQjGGwBClrM0KBcNqOtrh7IcvzjdNzwp/nAwWs0YM2aqaaJtQ+Vnqx/Aedq7auTnAwexIbm2ytTAtTg4b3YDzw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDqPdSt7CByA60qFyfynQ7K86Ov7+6zNMQBFipCcKv1igIgW2G7pckRQPIeuQIBajY/C3Qu9F10lNhtn7eqVrtKeIU="}]},"_from":"/var/www/npm-repo/node_modules/gracenode-mysql/","_npmVersion":"1.3.11","_npmUser":{"name":"voltrue2","email":"voltrue2@yahoo.com"},"maintainers":[{"name":"voltrue2","email":"voltrue2@yahoo.com"}]}},"readme":"# Mysql Module\r\n\r\nMysql module for gracenode framework.\r\n\r\nThis is designed to function within gracenode framework.\r\n\r\n## How to include it in my project\r\n\r\nTo add this package as your gracenode module, add the following to your package.json:\r\n\r\n```\r\n\"dependencies\": {\r\n        \"gracenode\": \"\",\r\n        \"gracenode-mysql\": \"\"\r\n}\r\n```\r\n\r\nTo use this module in your application, add the following to your gracenode bootstrap code:\r\n\r\n```\r\nvar gracenode = require('gracenode');\r\n// this tells gracenode to load the module\r\ngracenode.use('gracenode-mysql');\r\n```\r\n\r\nTo access the module:\r\n\r\n```\r\n// the prefix gracenode- will be removed automatically\r\ngracenode.mysql\r\n```\r\n\r\nAccess\r\n<pre>\r\ngracenode.mysql\r\n</pre>\r\n\r\nConfigurations\r\n```javascript\r\n\"modules\": {\r\n\t\"mysql\": {\r\n\t\t\"configNameOfYourChoice\": {\r\n\t\t\t\"read\": {\r\n\t\t\t\t\"database\": \"databaseName\",\r\n\t\t\t\t\"host\": \"host or IP address\",\r\n\t\t\t\t\"user\": \"databaseUser\",\r\n\t\t\t\t\"password\": \"databasePassword\",\r\n\t\t\t\t\"poolSize\": <int optional>,\r\n\t\t\t\t\"options\": {} // optional\r\n\t\t\t},\r\n\t\t\t\"write\": {\r\n\t\t\t\t\"database\": \"databaseName\",\r\n\t\t\t\t\"host\": \"host or IP address\",\r\n\t\t\t\t\"user\": \"databaseUser\",\r\n\t\t\t\t\"password\": \"databasePassword\",\r\n\t\t\t\t\"poolSize\": <int optional>\r\n\t\t\t\t\"options\": {} // optional\r\n\t\t\t}\r\n\t\t}{...}\r\n\t}\r\n}\r\n```\r\n\r\n## Optional Configurations:\r\n\r\n`gracenode-mysql` supports connection options. To add options, add `options` in your configurations.\r\n\r\n#####API: *create*\r\n<pre>\r\nMySql create(String configName)\r\n</pre>\r\n> Returns an instance of MySqlGroup class\r\n\r\n##### MySqlGroup class\r\n\r\n> **getOne**\r\n<pre>\r\nvoid getOne(String sql, Array params, Function callback)\r\n</pre>\r\n> Executes a \"select\" SQL query and passes a result to callback.\r\n>> If no result is found, the funtion will throw an error.\r\n```javascript\r\nvar mysql = gracenode.mysql.create('peopleDb');\r\nmysql.getOne('SELECT age, gender FROM people WHERE name = ?', ['bob'], function (error, result) {\r\n\tif (error) {\r\n\t\tthrow new Error('nothing found');\r\n\t}\t\r\n\t// do something here\r\n});\r\n```\r\n\r\n> **getOneFromMaster**\r\n\r\nReads from \"write-only\" database.\r\n\r\n> **getMany**\r\n<pre>\r\nvoid getMany(String sql, Array params, Function callback)\r\n</pre>\r\n> Executes a \"select\" SQL query and passes results to callback\r\n>> If no result is found, the function will throw an error.\r\n\r\n> **getManyFromMaster**\r\n\r\nReads from \"write-only\" database.\r\n\r\n> **searchOne**\r\n<pre>\r\nvoid searchOne(String sql, Array params, Function callback)\r\n</pre>\r\n> Executes a \"select\" SQL query and passes a result to callback\r\n>> No result will **NOT** throw an error.\r\n\r\n> **searchOneFromMaster**\r\n\r\nReads from \"write-only\" database.\r\n\r\n\r\n> **searchMany**\r\n<pre>\r\nvoid searchMany(String sql, Array params, Function callback)\r\n</pre>\r\n> Executes a \"select\" SQL query and passes results to callback\r\n>> No result will **NOT** throw an error.\r\n\r\n> **searchManyFromMaster**\r\n\r\nReads from \"write-only\" database.\r\n\r\n> **write**\r\n<pre>\r\nvoid write(String sql, Array params, Function callback)\r\n</pre>\r\n> Executes \"insert/update/delete/truncate/alter/create/drop/\" SQL query\r\n>> Can **NOT** be executed if the *type* is \"ro\"\r\n\r\n> **transaction**\r\n<pre>\r\nvoid transaction(Function taskCallback, Function callback)\r\n</pre>\r\n> Creates Mysql transaction and allows you to execute transactional SQL queries in taskCallback.\r\n>> Commit will be executed automatically on successful execution of taskCallback\r\n>>> An error in taskCallback will cause auto-rollback and ends the transaction.\r\n>>>> Can **NOT** be executed if the *type* is \"ro\"\r\n```javascript\r\nvar mysql = gracenode.mysql.create('animalDb');\r\nmysql.transaction(function (transactionMysql, finishCallback) {\r\n\ttransactionMysql.write('INSERT INTO animal (name, species) VALUES(?, ?)', ['dog', 'knine'], function (error, res) {\r\n\t\tif (error) {\r\n\t\t\treturn finishCallback(error);\r\n\t\t}\r\n\t\ttransactionMysql.write('INSERT INTO food (animalName, amount) VALUES(?, ?)', ['dog', 10], function (error, res) {\r\n\t\t\tif (error) {\r\n\t\t\t\treturn finishCallback(error);\r\n\t\t\t}\r\n\t\t\t// taskCallback is done. now move forward\r\n\t\t\tfinishCallback();\r\n\t\t});\r\n\t});\r\n}, \r\nfunction (error) {\r\n\tif (error) {\r\n\t\tthrow new Error(error);\r\n\t}\r\n\t// All done and committed\r\n});\r\n```\r\n\r\n> **placeHolder**\r\n<pre>\r\nArray placeHolder(Array params)\r\n</pre>\r\n> Creates and returns an array of *?* based on params given.\r\n```javascript\r\nvar mysql = gracenode.create('people');\r\nvar params = ['jenny', 'ben', 'krista', 'ken'];\r\nmysql.searchMany('SELECT * FROM people WHERE name IN (' + mylsq.placeHolder(params) + ')', params, function (error, res) {\r\n\tif (error) {\r\n\t\tthrow new Error(error);\r\n\t}\t\r\n\t// do something here\r\n});\r\n```\r\n","maintainers":[{"name":"voltrue2","email":"voltrue2@yahoo.com"}],"time":{"modified":"2022-06-18T13:46:04.810Z","created":"2014-05-22T05:35:14.662Z","0.1.0":"2014-05-22T05:35:16.236Z","0.1.1":"2014-05-26T04:56:50.984Z","0.1.2":"2014-06-06T05:04:22.822Z","0.1.3":"2014-06-30T03:44:55.803Z","0.1.4":"2014-07-02T00:36:30.902Z","0.1.5":"2014-11-05T10:44:00.210Z"},"readmeFilename":"README.md","keywords":["gracenode","framework","mysql"],"repository":{"type":"git","url":"https://github.com/voltrue2/gracenode-mysql.git"},"contributors":[{"name":"Brian de Heus","email":"me@brian.jp"}],"author":{"name":"Nobuyori Takahashi","email":"voltrue2@yahoo.com"},"bugs":{"url":"https://github.com/voltrue2/gracenode-mysql/issues"},"license":"MIT"}