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