使用npm any-db 和 any-db-mysql
var db = anyDB.createConnection('mysql://db_user:921F9DB7pnn0ka777@localhost/db1',function(e,r){if(e){console.log('db.err: '+e);}}); // also tried 127.0.0.1
我应该看到控制台日志
db.err: null
但我不是。 (我看不出任何错误)。
db.query("SELECT * FROM btns WHERE id='1'").on('row',function(e,r){
console.log('err: '+e);
console.dir(r);
});
上面也没有打印任何内容(甚至没有错误);
在我的ssh会话中mysql>显示数据库;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| db1 |
| test |
+--------------------+
的MySQL>使用db1;
的MySQL> show tables;
+---------------------------+
| Tables_in_db1 |
+---------------------------+
| btns |
+---------------------------+
db_user在数据库' mysql'中,设置如下:
mysql> use mysql;
mysql> update user set password=PASSWORD('921F9DB7pnn0ka777') where user='db_user';
mysql> flush privileges;
mysql> exit;
答案 0 :(得分:1)
为什么你会期望第一个案例输出任何东西?如果错误参数是真值(null
不是),您只需记录。
对于第二种情况,any-db
/ any-db-mysql
不会发出' row'流(非回调)版本的事件。流版本返回可读流,因此您需要使用标准方法从可读流中获取数据(在对象模式下):
.read()
以获取行对象同样对于流媒体版本,您可以收听“错误”错误。检查错误的事件。