一、调用存储过程

1、不带参数

CREATE PROCEDURE ProcedureWithoutParams
AS
SELECT * FROM ORDER;

调用db.ProcedureWithoutParams();

2、带参数

CREATE PROCEDURE ProcedureWithoutParams
@ORDERCODE VARCHAR(MAX)
AS
SELECT * FROM ORDER WHERE ORDERCODE=@ORDERCODE;

调用db.ProcedureWithoutParams(1);

或者db.ProcedureWithoutParams(ORDERCODE:1);

二、事务

using (var transaction = db.BeginTransaction())
{
   transaction.Users.Insert(Name: );
   transaction.Commit();
}

三、分页

1、获取多条数据,没有跳过数据

IEnumerable<dynamic> q = db.Order.All().Take().ToList<dynamic>();

2、跳过多条记录返回多条数据

IEnumerable<dynamic> q = db.Order.All().Skip().Take().ToList<dynamic>();

四、Simple.Data.Oracle使用心得

1、Sequence使用

db.Customer.Insert(CustomerId:Sequence.Next("Customers_SEQ"));

加入CustomerId作为Order的外键,新增时需要获取到生成的Sequence赋值给Order

using (var tx = db.BeginTransaction())
{
db.Customer.Insert(CustomerId:Sequence.Next("Customers_SEQ"));
db.Order.Insert(CustomerId:Sequence.Current("Customers_SEQ"));
tx.Commit();
}

2、存储过程调用

目前是不支持游标返回

create or replace PROCEDURE ORDERCOUNTBYFACTORYNAME(V_FACTORYNAME  IN VARCHAR,V_COUNT OUT NUMBER) ISbegin
select COUNT(*) INTO V_COUNT FROM ORDER O
INNER JOIN ORDERDETAIL OD on O.PKID= OD.ORDERID
WHERE O.FACTORYNAME = V_FACTORYNAME ;end ORDERCOUNTBYFACTORYNAME;

调用方法是由:包头名称+__+存储过程名称组成

var result = db.PKG__ORDERCOUNTBYFACTORYNAME("SO20140917");
var count = result.OutputValues["V_COUNT "];

学习simple.data之高级篇的更多相关文章

  1. 学习simple.data之基础篇

    simple.data是一个轻量级的.动态的数据访问组件,支持.net4.0. 1.必须条件和依赖性: v4.0 or greater of the .NET framework, or v2.10 ...

  2. 学习simple.data之进阶篇

    一.结果排序 -OrderBy(升序) -OrderByDescending(降序) db.Product.All().OrderByFactoryName(); db.Product.All().O ...

  3. 数据库MySQL学习笔记高级篇

    数据库MySQL学习笔记高级篇 写在前面 学习链接:数据库 MySQL 视频教程全集 1. mysql的架构介绍 mysql简介 概述 高级Mysql 完整的mysql优化需要很深的功底,大公司甚至有 ...

  4. Python3学习(3)-高级篇

    Python3学习(1)-基础篇 Python3学习(2)-中级篇 Python3学习(3)-高级篇 文件读写 源文件test.txt line1 line2 line3 读取文件内容 f = ope ...

  5. 【原创 深度学习与TensorFlow 动手实践系列 - 4】第四课:卷积神经网络 - 高级篇

    [原创 深度学习与TensorFlow 动手实践系列 - 4]第四课:卷积神经网络 - 高级篇 提纲: 1. AlexNet:现代神经网络起源 2. VGG:AlexNet增强版 3. GoogleN ...

  6. Spark学习体系整理(基础篇、中级篇、高级篇所涉及内容)

    新手刚开始学习比较迷茫,参考下面,然后找相关资料学习 1 Spark基础篇      1.1 Spark生态和安装部署          在安装过程中,理解其基本操作步骤.          安装部署 ...

  7. PHP笔记(PHP高级篇)

    高级篇中将涉及数据库的使用以及Cookie和Session会话,提高PHP的开发效率和运行效率 PHP程序员需要掌握的MySQL操作 为项目设计表 使用SQL语句 MySQL的目录结构 data目录中 ...

  8. Kotlin——从无到有系列之高级篇(一):Lambda表达式

    如果您对Kotlin很有兴趣,或者很想学好这门语言,可以关注我的掘金,或者进入我的QQ群大家一起学习.进步. 欢迎各位大佬进群共同研究.探索 QQ群号:497071402 进入正题 经过前面一系列对K ...

  9. Android 之窗口小部件高级篇--App Widget 之 RemoteViews

    Android 之窗口小部件高级篇--App Widget 之 RemoteViews 在之前的一篇博文(Android 之窗口小部件详解--App Widget)中,已经介绍了App Widget的 ...

随机推荐

  1. Git 冲突合并

    在多人协作开发,经常遇到Git冲突,每次都不大记住命令.所以自己备注一下! git pull 之后有冲突: $ git pullremote: Counting objects: 5, done.re ...

  2. grep/awk/sed 或者 并且 否定

    Grep 'OR' Operator Find all the lines in a file, that match any of the following patterns. Using GRE ...

  3. javascript------&gt;delete

    delete只能删除属性,不能删除变量 var a = "roboce"; delete a; // false a; b = "haha"; delete b ...

  4. 如何实现phpcms v9_4X版本tag的伪静态?

    这两个月来写的文章越来越少了,不是懒,因为太忙了--为客户赶做网站.因为客户指定要使用phpcms v9,还要求使用phpcms v9_42版本实现tag伪静态,在接手的时候phpcms v9_42是 ...

  5. java web 中的转发和重定向

    假设应用程序的 contextPath 为 /ctx,在 http://localhost:8080/ctx/a/b 资源中,我们转发和重定向到 http://localhost:8080/ctx/x ...

  6. C#DbHelperOleDb,Access数据库帮助类 (转载)

    主要功能如下数据访问抽象基础类 主要是访问Access数据库主要实现如下功能 .数据访问基础类(基于OleDb)Access数据库, .得到最大值:是否存在:是否存在(基于OleDbParameter ...

  7. SDWebImage 官方文档

    API documentation is available at CocoaDocs - SDWebImage Using UIImageView+WebCache category with UI ...

  8. IOS 开发-- 常用-- 核心代码

    网络请求 (包含block 和 delegate) 数据持久化技术 手势处理’ XML数据解析 多线程实现 核心动画编程 地图定位功能 CoreData数据持久化技术 本地通知和推送通知 常用宏定义 ...

  9. MResource

    public class MResource { public static int getIdByName(Context context, String className, String nam ...

  10. Davinci DM6446开发攻略——u-boot-1.3.4移植(1)

    UBOOT的版本更新速度比较快,截止今天,稳定正式的版本是u-boot-2009.11-rc2,而TI最新的EVM开发包里的UBOOT是1.2.0版本,国内很多公司还一直使用u-boot-1.1.4和 ...