test-execute-1.js 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. var common = require('../../common');
  2. var connection = common.createConnection();
  3. var assert = require('assert');
  4. var rows = undefined;
  5. var rows1 = undefined;
  6. var fields = undefined;
  7. connection.query([
  8. 'CREATE TEMPORARY TABLE `announcements` (',
  9. '`id` int(11) NOT NULL AUTO_INCREMENT,',
  10. '`title` varchar(255) DEFAULT NULL,',
  11. '`text` varchar(255) DEFAULT NULL,',
  12. 'PRIMARY KEY (`id`)',
  13. ') ENGINE=InnoDB DEFAULT CHARSET=utf8'
  14. ].join('\n'), function(err) {
  15. if (err) throw err;
  16. });
  17. connection.execute('SELECT 1+? as test', [123], function(err, _rows, _fields) {
  18. if (err) throw err;
  19. rows = _rows;
  20. fields = _fields;
  21. });
  22. connection.execute('SELECT 1 as test', function(err, _rows, _fields) {
  23. if (err) throw err;
  24. rows1 = _rows;
  25. fields = _fields;
  26. });
  27. connection.execute('INSERT INTO announcements(title, text) VALUES(?, ?)', ['Есть место, где заканчивается тротуар', 'Расти борода, расти'], function(err) {
  28. if (err) throw err;
  29. });
  30. connection.execute('INSERT INTO announcements(title, text) VALUES(?, ?)', ['Граждане Российской Федерации имеют право собираться мирно без оружия', 'проводить собрания, митинги и демонстрации, шествия и пикетирование'], function(err) {
  31. if (err) throw err;
  32. });
  33. connection.execute('SELECT * FROM announcements', function (err, rows) {
  34. if (err) throw err;
  35. assert.equal(rows.length, 2);
  36. assert.equal(rows[0].title, 'Есть место, где заканчивается тротуар');
  37. assert.equal(rows[0].text, 'Расти борода, расти');
  38. assert.equal(rows[1].title, 'Граждане Российской Федерации имеют право собираться мирно без оружия');
  39. assert.equal(rows[1].text, 'проводить собрания, митинги и демонстрации, шествия и пикетирование');
  40. connection.end();
  41. });
  42. process.on('exit', function() {
  43. assert.deepEqual(rows, [{'test': 124}]);
  44. assert.deepEqual(rows1, [{'test': 1}]);
  45. assert.equal(fields[0].name, 'test');
  46. });