V语言mysql模块尝鲜及现存问题总结

  V语言中文网  |   1575 |    2019-08-22 12:55:28

近期,V语言更新到了0.1.18版本,更新详情可以查看链接:V语言更新日志

查看源码可以发现vlib文件夹中新增了mysql模块,快来试试水吧。

话不多说,先放码:

import mysql
fn main(){
  // 创建mysql链接,参数依次为host user_name password db_name
  db:=mysql.connect('localhost','root','123456','test')
  res:=db.query('select * from user')
  // 程序退出前 释放资源 关闭链接
  defer {
    res.free()
    db.close()
  }
  rows:=res.rows()
 
  for r in rows{
     println('r===:'+r.vals.str()) // 这里r.vals是[]string类型
  }
}


编译后运行,输出结果如下:

r===:["1", "123456", "999999", "1537368668689"]
r===:["2", "234567", "888888", "1537368699000"]


现有问题记录:

  1. macOS上编译会报错找不到<mysql.h>头文件,这是由于macOS上读取头文件路径特殊导致。解决办法是将mysql相关头文件(不要光复制mysql.h,需要复制的是mysql.h文件所在目录的所有文件)复制一份到
    /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include
  2. connect和query方法目前实现比较粗糙,遇到错误程序直接退出,应该返回(Optional/Result)类型让调用者捕获错误并处理接下来的逻辑;端口号参数也不允许自定义。

目前V语言mysql处于开发阶段,所以作者也没有写进0.1.18版本的更新日志中,现存问题后续作者会修复。

另,备受期待的UI模块也正在紧锣密鼓开发中,调用示例已经出来了,相信很快会实现。调用示例链接:

V语言UI模块使用示例

效果图:




登陆后可发表评论


热门评论

暂无评论


最新评论

暂无评论