一、调用存储过程

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: "张三", Age: );
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. Lua学习高级篇

    Lua学习高级篇 之前已经说了很多,我目前的观点还是那样,在嵌入式脚本中,Lua是最优秀.最高效的,如果您有不同的观点,欢迎指正并讨论,切勿吐槽.这个系列完全来自于<Programming in ...

  8. redis学习笔记(详细)——高级篇

    redis学习笔记(详细)--初级篇 redis学习笔记(详细)--高级篇 redis配置文件介绍 linux环境下配置大于编程 redis 的配置文件位于 Redis 安装目录下,文件名为 redi ...

  9. 4 - 基于ELK的ElasticSearch 7.8.x技术整理 - 高级篇( 续 ) - 更新完毕

    0.前言 这里面一些理论和前面的知识点挂钩的,所以:建议看一下另外3篇知识内容 基础篇:https://www.cnblogs.com/xiegongzi/p/15684307.html java操作 ...

随机推荐

  1. IOS开发-jqeurey mobile

    有一阵子没写东西了,最近打算重新拾起开发,做点手机上的东东,选中了phonegap.jquery mobile,phonegap的部署网上非常多,有空了再班门弄斧,这里先记下jquery mobile ...

  2. OC基础(17)

    ARC基本概念 ARC快速入门 ARC下的内存管理 ARC和MRC兼容和转换 *:first-child { margin-top: 0 !important; } body > *:last- ...

  3. 《Code Complete》ch.26 代码调整技术

    WHAT? 提高代码运行速度的方法,减少代码的资源占用 WHY? 这里提出的都是“可以尝试的”方法,有的或许在你的环境根本不起作用,有的则能实实在在产生很好的效果 HOW? Logic - 逻辑 在知 ...

  4. vc 判断哪个按键 被按下 消息 按键 状态

    测试Numlock 是否是亮的 环境控制台程序: #include "stdafx.h" #include <stdio.h> #include <conio.h ...

  5. selenium和Firefox版本不兼容

    selenium8.py coding = utf-8 from selenium import webdriver driver = webdriver.Firefox() driver.get(' ...

  6. Ant 脚本打印系统属性变量、ant内置属性

    Ant 脚本打印系统属性变量.ant内置属性 作用 编写ant脚本的时候,经常会引用到系统属性,本脚本用于打印系统常用属性(System.getProperties)与环境变量(Environment ...

  7. 《点石成金-访客至上的web和移动可用性设计秘籍》读书笔记

      简介 作者Steve Krug,惯例先去了解一下本书的作者,发现书中介绍的并不多,百度一下后发现这本书比作者出名.好吧,百度就是这样子,作者自称web可用性咨询师,手上这本书是第三版再版,第一版2 ...

  8. C++中rapidxml用法及例子

    rapidxml是一个快速的xml库,比tinyxml快了50-100倍.本文给出创建.读取.写入xml的源码. 由于新浪博客不支持文本文件上传,在使用下面代码需要先下载 rapidxml,关于这个库 ...

  9. Leetcode026. Remove Duplicates from Sorted Array

    water class Solution { public: int removeDuplicates(vector<int>& nums) { for(vector<int ...

  10. global.autoindex dede:global.itemindex 获取子栏目自动排序序号

    {dede:channel  row='6' typeid=7 }                  [field:global.autoindex runphp='yes']             ...