SqlContext 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
SqlContext 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
SqlContext 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」 !
SqlContext 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」「最积极运营项目」 !
SqlContext 获得 2020 年度 OSC 中国开源项目评选「最积极运营项目」 !

软件简介

一、概述

SqlContext是一个轻量级的Sql帮助类,旨在提供一种快速、简洁、优雅地数据库访问方法。

二、使用方法

本示例程序使用SQLite数据库,需要先安装SQLite的支持库。

class Program
{
    static void Main(string[] args)
    {
        /*0.创建连接*/
        var conn = new SQLiteConnection("Data Source=data.db;");

        /*1.创建表*/
        conn.CreateTable("user", "id integer primary key autoincrement,name varchar(32),password varchar(32)").NonQuery();

        /*2.插入数据,无返回值*/
        conn.Insert("user", "name,password", "test", "123456").NonQuery();

        /*3.查询多行数据*/
        var userList = conn.Select("user").Many(r => new User
        {
            Id = (long)r["id"],
            Name = (string)r["name"],
            Password = (string)r["password"]
        });

        /*4.注册Mapper函数*/
        SqlContext.RegistMapper(r => new User
        {
            Id = (long)r["id"],
            Name = (string)r["name"],
            Password = (string)r["password"]
        });

        /*5.查询多行数据(使用mapper)*/
        userList = conn.Select("user").Many<User>();

        /*6.查询单行数据(使用mapper)*/
        var user = conn.Select("user").Single<User>();

        /*7.传递参数(方式1)*/
        userList = conn.Select("user", "id>@min and id<@max", 1, 3).Many<User>();

        /*8.传递参数(方式2)*/
        userList = conn.Select("user", "id>@min and id<@max")
            .Parameters(1, 3)
            .Many<User>();

        /*9.传递参数(方式3)*/
        userList = conn.Select("user", "id>@min and id<@max")
            .Parameter("min", 1)
            .Parameter("max", DbType.Int32, 3)
            .Many<User>();

        /*10.执行任意sql(获取单个值)*/
        var count = conn.Sql("select count(*) from user").SingleValue<long>();
    }

    public class User
    {
        public long Id { get; set; }
        public string Name { get; set; }
        public string Password { get; set; }
    }
}
展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (1)

加载中
该评论暂时无法显示,详情咨询 QQ 群:912889742
更多评论
暂无内容
发表了博客
2019/07/23 17:59

SparkSession、SparkContext、SQLContext和HiveContext之间的区别。

SparkContext 是什么? 驱动程序使用SparkContext与集群进行连接和通信,它可以帮助执行Spark任务,并与资源管理器(如YARN 或Mesos)进行协调。 使用SparkContext,可以访问其他上下文,比如SQLContext和HiveContext。 使用SparkContext,我们可以为Spark作业设置配置参数。 如果您在spark-shell中,那么SparkContext已经为您提供了,并被分配给变量sc。 如果还没有SparkContext,可以先创建一个SparkConf。 //set up the spark c...

0
0
2020/04/13 09:50

Spark SQL:SQLContext

在Spark1.x中,SQLContext是我们的程序入口点,当然入口点还包括SQLContext的子类。往往是通过SparkContext来创建一个SQLContext。

0
0
发表了博客
2019/07/04 12:00

Spark教程——(4)Spark-shell调用SQLContext(HiveContext)

启动Spark-shell: [root@node1 ~]# spark-shell Setting default log level to "WARN". To adjust logging level use sc.setLogLevel(newLevel). Welcome to ____ __ / __/__ ___ _____/ /__ _\ \/ _ \/ _ `/ __/ '_/ /___/ .__/\_,_/_/ /_/\_\ version 1.6.0 /_/ Using Scala version 2.10.5 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_131) Type in expression...

0
0
发表了博客
2016/04/08 17:26

RDD、DataFrame、DataSet、SQLContext,HiveContext

RDD spark最基础的分布式数据集,RDD提供了很多api来操作这个数据集中的数据,Rdd中的每一列没有scheme,没有标识。 DataFrame spark的高级抽象,在RDD的分布式数据集上,加上了scheme的信息,每一列都有标识,标识这一列的名称和类型。提供了更多的api,这些api能实现类似sql的操作,底层实现还是RDD DataSet DataSet结合了RDD和DataFrame的优点, 并带来的一个新的概念Encoder 当序列化数据时, Encoder产生字节码与off-heap进行...

0
1
发表了博客
2016/10/26 15:45

由sqlContext.implicits._带来的一场血案

先来看看Spark里关于implicit的实现,如下: ```scala object implicits extends SQLImplicits with Serializable { protected override def _sqlContext: SQLContext = self implicit class StringToColumn(val sc: StringContext) { def $(args: Any*): ColumnName = { new ColumnName(sc.s(args: _*)) } } } ``` 其中 `SQLImplicits` 是一个抽象类,包含了一系列的隐式转换,不过主要负责将scala对象转换为DataFrame。我们主...

0
0
发表了博客
2020/01/19 10:46

SparkSql读取HDFS

public class SparkSqlBathLog { public static void main(String[] args) { SparkConf conf = new SparkConf(); conf.setMaster("local[2]").setAppName("jsonfile"); // spark 上下文 SparkContext sc = new SparkContext(conf); //创建sqlContext获取sqlcontext SQLContext sqlContext = new SQLContext(sc); //加载txt文件 从hdfs //RDD<String> stringRDD = sc.textFile("hdfs://192.168.48.11:9000/aaa/ssooo.txt"); Data...

0
0
发表了博客
2019/12/04 14:29

spark教程(八)-SparkSession

spark 有三大引擎,spark core、sparkSQL、sparkStreaming, spark core 的关键抽象是 SparkContext、RDD; SparkSQL 的关键抽象是 SparkSession、DataFrame; sparkStreaming 的关键抽象是 StreamingContext、DStream SparkSession 是 spark2.0 引入的概念,主要用在 sparkSQL 中,当然也可以用在其他场合,他可以代替 SparkContext; SparkSession 其实是封装了 SQLContext 和 HiveContext SQLContext 它是 sparkSQL 的入口点...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
暂无内容
1 评论
15 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部