///////////////////////////////// 数据库相关操作专用文件 ////////////////////////////////

// 创建数据库
功能 mySql创建数据库()
    变量 返回数组,ret
    ret = sqlite数据库执行返回数组("授权数据库.db","create table IF NOT EXISTS userInfo(id integer primary key autoincrement,name,pwd,islogin,isBlackUser,sex,old,address)",返回数组)//创建表
    如果(!ret)
        发送文本消息("创建表失败:"& 获取错误信息(1))
        返回 假
    否则
        返回 真
    结束
结束

// 向数据里添加一条数据
功能 mySql插入数据(name,pwd)
    变量 retArray = null,inserText
    inserText = 字符串格式化("insert into userInfo(name,pwd,islogin,isBlackUser,sex,old,address) values('%s','%s','false','false','男','18','湖南长沙')",name,pwd)
    变量 ret = sqlite数据库执行返回数组("授权数据库.db",inserText,retArray)
    如果(ret)
        发送文本消息("插入一条新的数据")
        返回 retArray
    否则
        发送文本消息("插入数据失败,原因:"&获取错误信息(1))
        返回 null
    结束
结束


// 查询所有信息
功能 mySql查询所有信息()    
    变量 sqlstr = "select * from userInfo"
    变量 返回数组,ret
    ret = sqlite数据库执行返回数组("授权数据库.db",sqlstr,返回数组)
    //sendtextmsg("查询结果："&返回数组)
    返回 返回数组    
结束

// 查询所有信息By name pwd
功能 mySql查询所有信息ByNamePwd(name,pwd)    
    变量 sqlstr = 字符串格式化("select * from userInfo where name='%s' and pwd='%s'",name,pwd)
    变量 返回数组,ret
    ret = sqlite数据库执行返回数组("授权数据库.db",sqlstr,返回数组)
    返回 返回数组
结束

// 允许登录
功能 mySql允许登录ByName(name)
    变量 返回数组,ret
    变量 sqlstr = 字符串格式化("select * from userInfo where name='%s'",name)
    ret = sqlite数据库执行返回数组("授权数据库.db",sqlstr,返回数组)
    如果(ret && 返回数组 != null)
        sqlstr = 字符串格式化("update userInfo set islogin='true' where name='%s'",name)    
        ret = sqlite数据库执行返回数组("授权数据库.db",sqlstr,返回数组)
        如果(!ret)
            发送文本消息("sql允许登录ByName失败,原因:"&获取错误信息(1))
        结束        
        返回 真
    否则
        发送文本消息("数据库没有名称为:"&name&"的数据,修改失败")
        返回 假
    结束    
结束

// 获取登录的用户信息
功能 mySql获取用户信息(name)
    变量 返回数组,ret
    变量 sqlstr = 字符串格式化("select * from userInfo where name='%s'",name)
    ret = sqlite数据库执行返回数组("授权数据库.db",sqlstr,返回数组)
    如果(ret && 返回数组 != null)
        变量 retArr = 数组()
        retArr["sex"] = 返回数组[0]["sex"]
        retArr["old"] = 返回数组[0]["old"]
        retArr["address"] = 返回数组[0]["address"]
        发送文本消息("查询结果："&返回数组)
        
        变量 json = 数组转json(retArr)
        发送文本消息("Json = "&json)
        返回 json
    否则
        发送文本消息("数据库没有名称为:"&name&"的数据,修改失败")
        返回 ""
    结束    
结束

// 修改用户的信息
功能 mySql修改用户信息(name,sex,old,address)
    变量 返回数组,ret
    变量 sqlstr = 字符串格式化("select * from userInfo where name='%s'",name)
    ret = sqlite数据库执行返回数组("授权数据库.db",sqlstr,返回数组)
    如果(ret && 返回数组 != null)        
        sqlstr = 字符串格式化("update userInfo set sex='%s',old='%s',address='%s' where name='%s'",sex,old,address,name)    
        ret = sqlite数据库执行返回数组("授权数据库.db",sqlstr,返回数组)
        如果(!ret)
            发送文本消息("mySql修改用户信息失败,原因:"&获取错误信息(1))
            返回 假
        结束
        发送文本消息("mySql修改用户信息成功")
        返回 真
    否则
        发送文本消息("数据库没有名称为:"&name&"的数据,修改失败")
        返回 假
    结束    
结束

