diff --git a/Definitions/msnodesql-0.2.d.ts b/Definitions/msnodesql-0.2.d.ts new file mode 100644 index 000000000..00ea8c950 --- /dev/null +++ b/Definitions/msnodesql-0.2.d.ts @@ -0,0 +1,22 @@ +// Type definitions for msnodesql 0.2 +// Project: https://github.com/WindowsAzure/node-sqlserver +// Definitions by: Boris Yankov +// Definitions: https://github.com/borisyankov/DefinitelyTyped + + +/// + +declare module "msnodesql" { + export function open(connectionString: string, callback: Function): Connection; + + export function query(connectionString: string, query: string): StreamEvents; + export function query(connectionString: string, query: string, callback: Function): StreamEvents; + export function query(connectionString: string, query: string, params, callback: Function): StreamEvents; + + export function queryRaw(connectionString: string, query: string): StreamEvents; + export function queryRaw(connectionString: string, query: string, callback: Function): StreamEvents; + export function queryRaw(connectionString: string, query: string, params, callback: Function): StreamEvents; + + interface Connection { } + interface StreamEvents extends EventEmitter { } +} \ No newline at end of file diff --git a/README.md b/README.md index 0ab1a07b3..5627ed3f0 100644 --- a/README.md +++ b/README.md @@ -14,6 +14,7 @@ Complete * [CodeMirror](http://codemirror.net) (by [François de Campredon](https://github.com/fdecampredon)) * [Chosen](http://harvesthq.github.com/chosen/) * [dynatree](http://code.google.com/p/dynatree/) (by [François de Campredon](https://github.com/fdecampredon)) +* [EaselJS](http://www.createjs.com/#!/EaselJS) * [ember.js](http://emberjs.com/) * [Express](http://expressjs.com/) * [Fancybox](http://fancybox.net/) @@ -36,6 +37,7 @@ Complete * [Mustache.js](https://github.com/janl/mustache.js) * [Node.js](http://nodejs.org/) (from TypeScript samples) * [node_redis](https://github.com/mranney/node_redis) +* [node-sqlserver](https://github.com/WindowsAzure/node-sqlserver) * [QUnit](http://qunitjs.com/) (by [Diullei Gomes](https://github.com/Diullei)) * [Raphael](http://raphaeljs.com/) (by [CheCoxshall](https://github.com/CheCoxshall)) * [Sammy.js](http://sammyjs.org/) diff --git a/Tests/msnodesql-tests.ts b/Tests/msnodesql-tests.ts new file mode 100644 index 000000000..babbb59be --- /dev/null +++ b/Tests/msnodesql-tests.ts @@ -0,0 +1,35 @@ +/// + +import sql = module('msnodesql'); + +function test_streaming() { + + var conn_str = "Driver={SQL Server Native Client 11.0};Server={(local)\\SQLEXPRESS};Database={DBName};Trusted_Connection={Yes};"; + + var stmt = sql.query(conn_str, "SELECT * from TestTable"); + stmt.on('meta', function (meta) { console.log("We've received the metadata"); }); + stmt.on('row', function (idx) { console.log("We've started receiving a row"); }); + stmt.on('column', function (idx, data, more) { console.log(idx + ":" + data); }); + stmt.on('done', function () { console.log("All done!"); }); + stmt.on('error', function (err) { console.log("We had an error :-( " + err); }); +} + +function test_explicit() { + var conn_str = "Driver={SQL Server Native Client 11.0};Server={(localdb)\\v11.0};Database={DBName};Trusted_Connection={Yes};"; + + sql.open(conn_str, function (err, conn) { + if (err) { + console.log("Error opening the connection!"); + return; + } + conn.queryRaw("SELECT * FROM TestTable", function (err, results) { + if (err) { + console.log("Error running query!"); + return; + } + for (var i = 0; i < results.rows.length; i++) { + console.log("0:" + results.rows[i][0]); + } + }); + }); +} \ No newline at end of file