Advertisement
Guest User

Untitled

a guest
Oct 13th, 2017
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.35 KB | None | 0 0
  1. var Connection = require('tedious').Connection;
  2. var Request = require('tedious').Request;
  3. var TYPES = require('tedious').TYPES;
  4. var async = require('async');
  5. var express = require('express');
  6.  
  7. // Create connection to database
  8. var config = {
  9. userName: 'ladymey', // update me
  10. password: 'MeY0544808130', // update me
  11. server: 'ladymey.database.windows.net',
  12. options: {
  13. database: 'meyDB'
  14. , encrypt: true
  15.  
  16. }
  17. }
  18.  
  19. var connection = new Connection(config);
  20.  
  21. var app = express();
  22. var server = app.listen(3000);
  23.  
  24. app.use(express.static('public'));
  25.  
  26. var socket = require('socket.io');
  27. var io = socket(server);
  28.  
  29. var result = "";
  30.  
  31. io.sockets.on('connection', newConnection);
  32.  
  33. function newConnection(socket){
  34. console.log('new connection ' + socket.id);
  35.  
  36. Read();
  37.  
  38. console.log(result);
  39.  
  40. io.sockets.emit('load list', result);
  41.  
  42. result = "";
  43.  
  44. socket.on('new entry',insertEntry);
  45. socket.on('update entry',updateEntry);
  46. socket.on('delete entry',deleteEntry);
  47.  
  48. function insertEntry(data)
  49. {
  50. console.log(data);
  51. Insert(data.name,data.phone);
  52.  
  53. io.sockets.emit('load list', contactsDB);
  54. }
  55. function updateEntry(data)
  56. {
  57. console.log(data);
  58. Update(data.name,data.phone);
  59.  
  60. io.sockets.emit('load list', contactsDB);
  61. }
  62. function deleteEntry(data)
  63. {
  64. console.log(data);
  65. Delete(data.name);
  66.  
  67. // TODO: BRING ALL DB
  68. io.sockets.emit('load list', contactsDB);
  69. }
  70. }
  71.  
  72. function Read() {
  73.  
  74. console.log('Reading rows from the Table...');
  75.  
  76. // Read all rows from table
  77. request = new Request(
  78. 'SELECT Name, Phone FROM ContactsSchema.Contacts;',
  79. function(err, rowCount, rows) {
  80. if (err) {
  81. console.log(err);
  82. } else {
  83. console.log(rowCount + ' row(s) returned');
  84. }
  85. });
  86. // Print the rows read
  87. request.on('row', function(columns) {
  88. columns.forEach(function(column) {
  89. if (column.value === null) {
  90. console.log('NULL');
  91. } else {
  92. result += column.value + " ";
  93. }
  94. });
  95.  
  96. //console.log(result);
  97. });
  98.  
  99. // Execute SQL statement
  100. connection.execSql(request);
  101. }
  102.  
  103. function Insert(name, Phone) {
  104. console.log("Inserting '" + name + "' into Table...");
  105.  
  106. request = new Request(
  107. 'INSERT INTO ContactsSchema.Contacts (Name, Phone) OUTPUT INSERTED.Id VALUES (@Name, @Phone);',
  108. function(err, rowCount, rows) {
  109. if (err) {
  110. console.log(err);
  111. } else {
  112. console.log(rowCount + ' row(s) inserted');
  113. }
  114. });
  115. request.addParameter('Name', TYPES.NVarChar, name);
  116. request.addParameter('Phone', TYPES.NVarChar, Phone);
  117.  
  118. // Execute SQL statement
  119. connection.execSql(request);
  120. }
  121.  
  122. function Update(name, Phone) {
  123. console.log("Updating Phone to '" + Phone + "' for '" + name + "'...");
  124.  
  125. // Update the employee record requested
  126. request = new Request(
  127. 'UPDATE ContactsSchema.Contacts SET Phone=@Phone WHERE Name = @Name;',
  128. function(err, rowCount, rows) {
  129. if (err) {
  130. console.log(err);
  131. } else {
  132. console.log(rowCount + ' row(s) updated');
  133. }
  134. });
  135. request.addParameter('Name', TYPES.NVarChar, name);
  136. request.addParameter('Phone', TYPES.NVarChar, Phone);
  137.  
  138. // Execute SQL statement
  139. connection.execSql(request);
  140. }
  141.  
  142. function Delete(name) {
  143. console.log("Deleting '" + name + "' from Table...");
  144.  
  145. // Delete the employee record requested
  146. request = new Request(
  147. 'DELETE FROM ContactsSchema.Contacts WHERE Name = @Name;',
  148. function(err, rowCount, rows) {
  149. if (err) {
  150. console.log(err);
  151. } else {
  152. console.log(rowCount + ' row(s) deleted');
  153. }
  154. });
  155. request.addParameter('Name', TYPES.NVarChar, name);
  156.  
  157. // Execute SQL statement
  158. connection.execSql(request);
  159. }
  160.  
  161. // Attempt to connect and execute queries if connection goes through
  162. connection.on('connect', function(err) {
  163. if (err) {
  164. console.log(err);
  165. } else {
  166. console.log('Connected to Database...!');
  167.  
  168. }
  169.  
  170. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement