node-sqlite3-API-归纳总结

SQLITE3-API-LIST:
API
1. new sqlite3.Database(filename,[mode],[callback])
返回数据库对象并且自动打开和连接数据库
它没有独立打开数据库的方法
2. sqlite3.verbose()
集成数据库的执行模式,以便于调试,它没有重置的方法。
3. Database#close([callback])
关闭和释放数据库对象
4. Database#run(sql,param,...],[callback])
运行指定参数的SQL语句,完成之后调用回调函数,它不返回任何数据,在回调函数里面有一个参数,SQL语句执行成功,则参数的值为null,反之为一个错误的对象,它返回的是数据库的操作对象。在这个回调函数里面当中的this,里面包含有lastId(插入的ID)和change(操作影响的行数,如果执行SQL语句失败,则change的值永远为0);

5. Database#get(sql,[param,...],[callback])
运行指定参数的SQL语句,完成过后调用回调函数。如果执行成功,则回调函数中的第一个参数为null,第二个参数为结果集中的第一行数据,反之则回调函数中只有一个参数,只参数为一个错误的对象。

6. Database#all(sql,[param,...],[callback])
运行指定参数的SQL语句,完成过后调用回调函数。如果执行成功,则回调函数中的第一个参数为null,第二个参数为查询的结果集,反之,则只有一个参数,且参数的值为一个错误的对象。

7. Database#prepare(sql,[param,...],[callback])

预执行绑定指定参数的SQL语句,返回一个Statement对象,如果执行成功,则回调函数的第一个参数为null,反之为一个错误的对象。

示例如下:

 1 dbFactory.fn = dbFactory.prototype = {
 2         fetchAll: function (sql, callback) {
 3             var self = this;
 4             var arr = [];
 5             self._db.serialize(function () {
 6                 self._db.all(sql, function (err, rows) {
 7                     rows.forEach(function (row) {
 8                         arr.push(row);
 9                     });
10                     arr.length > 0 ? callback(null, arr) : callback(-1);
11                 });
12
13             });
14             return arr;
15         },
16         fetchRow: function (sql, callback) {
17             return this.fetchAll(sql + " limit 1", callback);
18         },
19         save:function(sql,callback){
20             var self=this;
21             //self._db.run(sql,function(){
22             self._db.run(sql,function(){
23                 console.log(this);
24                 console.log(arguments);
25             });
26         },
27         delete: function (sql) {
28             this._db.run(sql);
29         },
30         update: function (sql, callback) {
31
32         },
33         get:function(sql,callback){
34             this._db.get(sql,function(err,row){//err->true
35                 console.log(this);
36                 console.log(arguments);
37                 if(err){
38                    throw err;
39                 }
40             });
41         },run:function(){
42             var self=this;
43             self._db.serialize(function() {
44                 console.log("prepare");
45                 var stmt = self._db.prepare("insert into t1 values(null,?)");
46
47                 for (var i = 0; i < 10; i++) {
48                     stmt.run("Ipsum " + i);
49                 }
50                 stmt.finalize();
51                 self._db.each("select * from t1", function(err, row) {
52                     console.log(row);
53                 });
54                 console.log("init");
55             });
56
57         }
58     };

查看代码

归纳于2014年12月25日 11:26:07
EDIT BYN NICCKY

时间: 2024-10-25 06:31:52

node-sqlite3-API-归纳总结的相关文章

详解Node.js API系列C/C++ Addons(3) 程序实例

http://blog.whattoc.com/2013/09/08/nodejs_api_addon_3/ 再续前文,前文介绍了node.js 的addon用法和google v8 引擎,下面,我们进入真正的编码,下面将会通过六个例子,学习node addon 范例,了解addon编程的特性 创建一个空项目 随机数模块 向模块传递参数 回调函数处理 线程处理 对象管理 创建一个空项目 vi modulename.cpp #include <node.h> void RegisterModul

node.js(API解读) - process (http://snoopyxdy.blog.163.com/blog/static/60117440201192841649337/)

node.js(API解读) - process 2011-10-28 17:05:34|  分类: node |  标签:nodejs  nodejsprocess  node.jsprocess  nodjsapi  node.jsapi   |举报 |字号 订阅 下载LOFTER 我的照片书  | nodejs的process是一个全局对象,他提供了一些方法和属性,node.js官方的API说的很简单,并没有把一些详细的应用方法和作用写出来,下面结合我自己的学习,做一下小结吧.1.Even

Node.js API

Node.js v4.4.7 Documentation(官方文档) Buffer Prior to the introduction of TypedArray in ECMAScript 2015 (ES6), the JavaScript language had no mechanism for reading or manipulating streams of binary data(二进制数据). The Buffer class was introduced as part of

Node.js API —— About this Documentation(关于本文档)

// 说明    Node API 版本为 v0.10.31.    中文参考:http://nodeapi.ucdok.com/#/api/ 本段为博主注解. 目录 ● 关于本文档    ○ 稳定性指标    ○ JSON 输出 关于本文档 本文档的目的是既能从参考文档角度也能从概念概览角度综合地解释 Node.js API.每个小节描述了一个内建模块或较之上层的核心模块.    如若合适,属性类型.方法参数和事件监听器的参数会详细地在主标题下面列出.    每个 .html 文件都有一个与之

【HAVENT原创】Node Express API 通用配置

启动文件 /app.js: var express = require('express'); var bodyParser = require('body-parser'); var proxy = require('http-proxy-middleware'); var path = require('path'); var index = require('./routes/index'); var data = require('./routes/data'); var app = e

NODE.JS API —— Modules(模块)

// 说明 Node API 版本为 v0.10.31.    中文参考:http://nodeapi.ucdok.com/#/api/,http://blog.sina.com.cn/oleoneoy 本段为博主注解. 目录 ● 模块    ○ Cycles    ○ Core Modules    ○ File Modules    ○ Loading from node_modules Folders    ○ Folders as Modules    ○ Caching ■ Modul

[Node.js] Test Node RESTful API with Mocha and Chai

In this lesson, we will use Chai's request method to test our Node application's API responses.By the end of this lesson, you will know how to:- install the prerequisites to use mocha and chai in your application- test for HTTP status response codes-

Node.js API —— Events(事件)

// 说明 Node API 版本为 v0.10.31.    中文参考:http://nodeapi.ucdok.com/#/api/,http://blog.sina.com.cn/oleoneoy 本段为博主注解. 目录 ● 事件    ○ Class: events.EventEmitter ■ emitter.addListener(event, listener) ■ emitter.on(event, listener) ■ emitter.once(event, listener

Node.js API —— process(进程)

// 说明 Node API 版本为 v0.10.31.    中文参考:http://nodeapi.ucdok.com/#/api/,http://blog.sina.com.cn/oleoneoy 本段为博主注解. 目录 ● 进程    ○ Event: 'exit'    ○ Event: 'uncaughtException'    ○ Signal Events    ○ process.stdout    ○ process.stderr ○ process.stdin ○ pro

Node.js API —— Synopsis(概要)

// 说明    Node API 版本为 v0.10.31.    中文参考:http://nodeapi.ucdok.com/#/api/ 本段为博主注解. 目录 ● 概要 概要 一个以 ’Hello World‘ 作为响应的以 Node 编写的 web 服务器: 1 var http = require('http'); 2 3 http.createServer(function (request, response) { 4 response.writeHead(200, {'Cont