当前位置: 首页 > article >正文

2409d,d语言非常简单利用sqlite3库

1,在sqlite3d.c

#include "sqlite3.h"

2,直接使用了:

import std.conv;
import std.stdio;
import std.string;

import sqlite3d;

extern(C)
{
  static int callback(void *NotUsed, int argc, char **argv, char **azColName)
  {
    int i;
    for(i=0; i<argc; i++){
      printf("%s = %s\n", azColName[i], argv[i] ? argv[i] : "NULL");
    }
    printf("\n");
    return 0;
  }
}

int main(string[] args)
{
  sqlite3 *db;
  char *zErrMsg;
  int rc;

  if( args.length!=3 ){
    writeln("Usage: ./app DATABASE SQL-STATEMENT");
    return 1;
  }

  rc = sqlite3_open(&args[1].dup[0], &db);
  if( rc ){
    writeln("Can't open database: " ~ to!string(sqlite3_errmsg(db)));
    sqlite3_close(db);
    return 1;
  }

  rc = sqlite3_exec(db, &args[2].dup[0], &callback, null, &zErrMsg);
  if( rc!=SQLITE_OK ){
    writeln("SQL error: "~fromStringz(zErrMsg));
    sqlite3_free(zErrMsg);
  }

  sqlite3_close(db);
  return 0;
}

这里


http://www.kler.cn/a/288037.html

相关文章:

  • 单片机智能家居火灾环境安全检测
  • 如何保证MySQL与Redis缓存的数据一致性?
  • C++的一些模版
  • css中的变量使用
  • 当你想要conda安装遇到UnavailableInvalidChannel: HTTP 404 NOT FOUND for channel的问题
  • Llama架构及代码详解
  • 前端宝典二十六:vue3的新特性
  • 群晖NAS本地使用Docker搭建Home Assistant智能家居平台与远程访问
  • vue3的学习(1)
  • vscode安装rest client插件,提示XHR failed
  • 使用EF框架进行查询(Find、where、select、count)
  • 深度学习-VGG16原理和代码详解
  • 光影漫游者:科技感十足的圆形气膜场馆—轻空间
  • C++泛型库
  • 05.整合Axios+MockJs
  • Python中传参是按值传递还是按引用传递?
  • GO、KEGG等富集棒棒图
  • 为了支持XR,3GPP R18都做了哪些增强?
  • Spring源码(9)--FactoryBean简介
  • Prometheus 学习笔记
  • vscode自动添加python文件的头部注释
  • Jenkins+docker+springboot 一键自动部署项目步骤
  • 代码随想录刷题记录(七)——二叉树(2)
  • WordShield 一款轻量级且灵活的敏感词过滤库
  • 【论文阅读】语义通信安全研究综述(2024)
  • Xinstall赋能,H5与App完美融合,打造极致用户体验