attempt to index a nil value (global 'luasql')


require ’socket‘

require ’luasql.mysql'

上述返回结果都是正常

但是执行 env = luasql.mysql(),报错:

stdin:1: attempt to index a nil value (global 'luasql')
stack traceback:
stdin:1: in main chunk
[C]: in ?

解决方法:

luasql= require ‘luasql.mysql'

env = luasql.mysql()或env = assert (luasql.mysql())

结果正常

原因:从lua 5.2 之后,require不再定义全局变量,需要保存其返回值。

参考链接:

http://stackoverflow.com/questions/10854971/luasql-nil-value/11657205

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM