首页 > 数据库 >C#Sqlite插入/更新并返回数据

C#Sqlite插入/更新并返回数据

时间:2024-02-20 15:46:49浏览次数:31  
标签:Sqlite Table1 returning C# reader 插入 sql var using

关键词:returning

返回所有列:returning *;

返回指定列:returning columnname;

删除命令不支持returning

参考代码:

string path = @"Data Source=D:\Data\data.sqlite;Version=3";
using (SQLiteConnection conn = new SQLiteConnection(path))
{
    conn.Open();
    string sql = "insert into Table1 (`Column1`,`Column2`) values ('test', '123') returning *";
    //sql = "select * from Table1";
    sql = "update Table1 set `Column2`='12345' where `Column1`='test' returning *";
    //sql = "delete from Table1 where `Column1`='test'"; //delete不支持returning
    using(SQLiteCommand cmd = conn.CreateCommand())
    {
        cmd.CommandText = sql;
        using (var reader = cmd.ExecuteReader())
        {
            while(reader.NextResult())
            { }
            if (reader.Read() && reader.FieldCount > 0)
            {
                var a = reader[0];
                DataTable dt = new DataTable();
                dt.Load(reader);
                var list = dt.ToListModel<ClassA>();
                ;
            }
            else
            {
                int records = reader.RecordsAffected;
            }
        }
    }
}

 

标签:Sqlite,Table1,returning,C#,reader,插入,sql,var,using
From: https://www.cnblogs.com/RedSky/p/18023240

相关文章

  • c#使用webView2 访问本地静态html资源跨域问题 || Cors
    背景在浏览器中访问本地静态资源html网页时,可能会遇到跨域问题如图。 是因为浏览器默认启用了同源策略,即只允许加载与当前网页具有相同源(协议、域名和端口)的内容。WebView2默认情况下启用了浏览器的同源策略,即只允许加载与主机相同源的内容。所以如果我们把静态资源发布到ii......
  • 【前端开发】VSCode下载安装教程,新手入门(超详细)附安装包
    ​1.VSCode简介        VSCode,全称VisualStudioCode,是一款由微软开发的跨平台源代码编辑器,可用于Windows、Linux和macOS操作系统。以下是对VSCode的详细介绍:功能丰富:VSCode支持语法高亮、代码自动补全(又称IntelliSense)、代码重构、查看定义功能,并内置了命令行工......
  • Codeforces 1806E Tree Master
    考虑一个最基础的暴力,就是直接记忆化搜索暴力往上跳。但是能发现如果一层的节点数过多,状态数太多,就寄了。再考虑一个基础的暴力,就是直接跳。但是如果要跳的层数过多,就寄了。考虑结合一下,根号分治。对于一层内节点数\(\le\sqrt{n}\)的记录下每两个点间的答案。对于节点数......
  • C++ 以指针(*)作为参数和以指针引用(*&)作为参数的区别
    首先说结论,传入指针只能更改指针所指向的那一块内存的数据,传入指针引用既能修改指针本身的地址也能修改指针所指向的内存。假设现在有这样一个功能:传入一个数组指针,并将另一个数组的地址赋值给被传入的指针,以完成数据更新功能。定义两个函数,分别以指针和指针引用为参数://数组......
  • 新版VSC++安装QuantLib量化工具包安装及其使用
    1.下载安装boosthttps://boostorg.jfrog.io/artifactory/main/release/建议安装与当前电脑VS版本年份差不多的boost自行设置安装路径2.去Github下载开源代码QuantLibhttps://github.com/lballabio/QuantLib/releases下载解压3.安装VS安装C++window桌面开发环境!4.打......
  • Codeforces Round 928(Div. 4)
    Dashboard-CodeforcesRound928(Div.4)-Codeforces第一次参加CF,最后一道题连题都没读,下次不会就跳,菜是原罪A:找字符串中A,B数量,遍历一下最后比较即可B:判断是三角形还是正方形,题目表示除了正方形就是三角形,所以直接判断是不是正方形,用ans数组记录每一行1的个数,然后从大......
  • ESXi 8.0 下改Delll idrac密码
    ESXi8.0 下下载:https://www.dell.com/support/home/zh-cn/product-support/product/poweredge-r740/drivershttps://dl.dell.com/FOLDER09667707M/1/Dell-iDRACTools-Web-ESXi.VIB-11.1.0.0-5294_A00.zip?uid=80aaf26c-07a6-4c60-3f53-df177f2da03f&fn=Dell-iDRACTools-We......
  • CF1905D Cyclic MEX 题解
    题意:给定一个长度为\(n\)的排列\(a\),\(a_i\in[0,n-1]\)。你可以将这个排列进行循环移位,最小化\(\sum_{i=1}^{n}\text{mex}_{j=1}^ia_j\)的值。首先我们可以先计算出最初情况下每一个\(i\)位置的\(\text{mex}\)值。这个序列一定是单调非严格递增的。首先有一个比......
  • CF1893B Neutral Tonality 题解
    很巧妙的一道题。为了让\(\text{LIS}\)长度最小,我们肯定先将\(b\)数组降序排序,这样\(b\)自身对\(\text{LIS}\)的贡献最小。考虑是否存在一种插入方式使得最终\(a\)的\(\text{LIS}\)长度和最初\(a\)的\(\text{LIS}\)长度相等。这时我们会发现,如果我们插入\(b\)......
  • IDEA使用过程中src文件夹显示不出来的解决方法
    IDEA加载项目没有src目录_idea导入项目没有src-CSDN博客总结:删除本地项目目录中的idea文件夹后重新打开项目......