由下可见,当输入 Test 7 seven xxx 过快时,就会重复
大概是事物控制的问题,或者 %find调用不能并发
Trigger:^Test (%x)%s(%x)%s(%x)
Execute:
#var name %1m%2
#if (%find(@name)) {#find @name} {#new}
#dbput {name=@name|value=%3}
Test 7 seven sevenb
11 7mseven seven
12 7mseven seven
Test 7 seven sevenb
11 7mseven seven
12 7mseven seven
Test 7 seven sevenb
11 7mseven seven
12 7mseven seven
Test 7 seven sevenb
11 7mseven sevenb
12 7mseven seven
Test 7 seven sevenb
11 7mseven sevenb
12 7mseven seven
Test 7 seven sevenB
11 7mseven sevenb
12 7mseven seven
Test 7 seven sevenC
11 7mseven sevenB
12 7mseven seven
Test 7 seven sevenC
11 7mseven sevenC
12 7mseven seven
Test 7 seven sevenC
11 7mseven sevenC
12 7mseven seven
Test 7 seven sevenC
Test 7 seven sevenC
Test 7 seven sevenC
11 7mseven sevenC
12 7mseven seven
13 7mseven sevenC
14 7mseven sevenC
Test 7 seven sevenC
Test 7 seven sevenC
Test 7 seven sevenC
Test 7 seven sevenC
Test 7 seven sevenC
Test 7 seven sevenC
Test 7 seven sevenC
11 7mseven sevenC
12 7mseven seven
13 7mseven sevenC
14 7mseven sevenC
15 7mseven sevenC
16 7mseven sevenC
17 7mseven sevenC
18 7mseven sevenC
19 7mseven sevenC
20 7mseven sevenC
mush下连odbc,如果有直接的lua驱动当然更好
需要
odbc.dll (luasql.org有下载,会从mush根目录开始寻找,或操作系统)
如下引用的luasql.odbc 存放于F:\zmud\MUSHclient4.37\luasql\odbc.dll
require "luasql.odbc"
env = assert (luasql.odbc())
con = assert (env:connect ("DSNname",
"username",
"password"))
...
good
cisco给我的回显就是非常快,#find的结果开始还正常,后来都积压在一起了
看来是这个问题
从这个点出发寻求解决办法
luo odbc连接数据库
和js jdbc连接access数据库
哪个更容易些?
应该是JDBC好一些,LUA ODBC连接数据库要自己再在系统里设置DSN,比较不爽……
但MUSHCLIENT有SQLITE3的API,连接SQLITE3的数据库就比较爽……
建议楼主把zmud的帮助里面db部分好好看一下
原帖由 maper 于 2009-6-23 08:44 PM 发表 http://www.pkuxkx.net/forum/images/common/back.gif
建议楼主把zmud的帮助里面db部分好好看一下
真的?那太好了。我再仔细看看。
早先玩mud用过zmud7.04,数据库就不是很稳定,那时候格式是mdb
这次直接cmud,中间也出了不少问题,比如创建了数据库打不开之类
还有cmud查看帮助的时候挂起,search不好用
问题多多,但是毕竟很熟悉
打算要是cmud能顶下来,先把东西做出来看看效果,以后改写到mush
从头学mush lua js时间太长
其实取到了数据,最好也要转换成文本,用access或excel分析作图
mush也直接支持sqlite3倒是不错,给程序内部使用数据方便
也是因为不爽,还没有安装sqlite的odbc驱动
maper是zmud大牛,多问问它吧,呵呵
是啊,大牛拉一把
我再cmud mush摇摆不定,甚至打算去tcl了
#if (%find(@ipmac)) {#dbput %find(@ipmac) {ipmac=@ipmac|ip=@ip|mac=@mac|age=@age|vlan=@vlan|time=%time(c)}} {#new all {ipmac=@ipmac|ip=@ip|mac=@mac|age=@age|vlan=@vlan|time=%time(c)}}
试试看吧,只要接收速度不是很快的话不会出现重复。
db可以导出成excel文件。