zoukankan      html  css  js  c++  java
  • beego框架之orm模块——sqlite

      今天基于beego ORM演示sqlite3数据库时,遇到了一小问题。

      问题现象1:下载go-sqlite3(go get github.com/mattn/go-sqlite3)驱动时报错说 gcc 不在 PATH 目录里。
      问题现象2:运行导入了go-sqlite3驱动的文件时编译报错说 gcc 不在 PATH 目录里。

      问题发生的原因:sqlitle3是个cgo库,需要gcc编译c代码。
      问题的解决办法:安装tdm-gcc或Mingw。(备注:本人安装的是tdm-gcc,下载地址:http://tdm-gcc.tdragon.net/download)

      beego框架连接及处理sqlite3数据库。

    models/models.go

     1 package models
     2 
     3 import (
     4     "github.com/astaxie/beego/orm"
     5 )
     6 
     7 type Student struct {
     8     Id    int // 主键
     9     Name  string
    10     Age   int
    11     Sex   string
    12     Score float32
    13     Addr  string
    14 }
    15 
    16 func init() {
    17     orm.RegisterModel(new(Student))
    18 }

    main.go

    package main
    
    import (
        "fmt"
        "github.com/astaxie/beego"
        "github.com/astaxie/beego/orm"
        "ormsqlite/models"
    
        _ "github.com/mattn/go-sqlite3"
        _ "ormsqlite/routers"
    )
    
    func init() {
        orm.RegisterDriver("sqlite", orm.DR_Sqlite)
        orm.RegisterDataBase("default", "sqlite3", "./datas/test.db")
        orm.RunSyncdb("default", false, true)
    }
    
    func main() {
        o := orm.NewOrm()
        o.Using("default")
        stu := new(models.Student)
    
        stu.Name = "bei"
        stu.Age = 25
        stu.Sex = "m"
        stu.Score = 88
        stu.Addr = "hunan.leiyang"
    
        fmt.Println(o.Insert(stu))
        beego.Run()
    }

      查看sqlite_DB里的数据:

  • 相关阅读:
    PHP 批量生成静态文件目录代码
    PHP 导出Excel 文档
    Samba Server 配置
    PHP curl超时问题
    php ci 2.0框架 ORM
    YII 的基本CURL操作
    PHP 操作socket 实现简易聊天室
    PHP simplexml_load_string 过滤<![CDATA[XXXX]]>
    PHP 获取当天 凌晨 时间戳常用代码
    2019年值得你使用的20大开发工具
  • 原文地址:https://www.cnblogs.com/hezhixiong/p/4616743.html
Copyright © 2011-2022 走看看