update

游标FOR循环

耗尽温柔 提交于 2020-01-29 05:58:59
游标FOR循环 在大多数时候我们在设计程序的时候都遵循下面的步骤: 1、打开游标 2、开始循环 3、从游标中取值 4、检查那一行被返回 5、处理 6、关闭循环 7、关闭游标 可以简单的把这一类代码称为游标用于循环。但还有一种循环与这种类型不相同,这就是FOR循环,用于FOR循环的游标按照正常的声明方式声明,它的优点在于不需要显式的打开、关闭、取数据,测试数据的存在、定义存放数据的变量等等。游标FOR循环的语法如下: FOR record_name IN (corsor_name[(parameter[,parameter]...)] | (query_difinition) LOOP statements END LOOP; 下面我们用for循环重写上面的例子: DECALRE CURSOR c_dept IS SELECT deptno,dname FROM dept ORDER BY deptno; CURSOR c_emp (p_dept VARACHAR2) IS SELECT ename,salary FROM emp WHERE deptno=p_dept ORDER BY ename v_tot_salary EMP.SALARY%TYPE; BEGIN FOR r_dept IN c_dept LOOP DBMS_OUTPUT.PUT_LINE(

集合和字典

不羁岁月 提交于 2020-01-29 05:25:24
集合和字典 文章目录 集合和字典 一、集合(set): 1.创建格式: 2.移除元素: 3.计算集合元素: 4.清空集合: 5.判断元素是否在集合中存在: 6.集合中内置方法 二、字典(dictionary): 1. 字典的基本格式: 2.字典操作: 3.字典的方法: 一、集合(set): 定义 : 1.由不同的元素组成 2.是无序的不重复的元素序列bi- 3.集合的元素必须是不可变类型 可以用 {} 或 set() 函数来创建集合, 注意 :创建一个空集合必须要用 set() 而不是 {} ,因为 {} 是用来创建一个空字典的。 1.创建格式: par = { value1 , value2 , value3 , . . . } 或者 set ( value ) 向集合中添加元素 s . add ( a ) #a 如果a已经存在,不进行任何操作 或者 s . update ( a ) #a可以是列表,元组,字典等。 a 可以是多个,用逗号隔开。 2.移除元素: s . remove ( a ) #将a从集合中移除出去,如果元素不存在,会报错。 s . discard ( a ) #将a从集合s中移除出去,如果元素不存在,也不会发生错误 s . pop ( ) #随机删除集合中的一个元素。 set 集合的pop方法会对集合进行无序的排序

Advanced daily build - Auto update build number and lable the source code and bin output

。_饼干妹妹 提交于 2020-01-29 04:38:38
Several days ago, coolbug posted a useful ducument about the daily build. Very instructive. But it missed some important points IMO. For the daily build, I need: 1. The build number should be increased automaticly. 2. If QA or customer report a bug on a specfic version, I should find the source code, binary outpur and pdb file for that version quickly. So the idea procedure should be: 1. daily build system check out the source code from server. 2. daily build system automatically inceased the build number according to some rules I set. 3. daily build system do the build. 4. If build

mongo 语法 增删改查

拈花ヽ惹草 提交于 2020-01-29 04:05:00
1.增 db.collection.insert()与db.collection.save() 都是增加,区别:save()遇到相同_id后,则更新此_id数据。 而insert()则报错 > db.c1.find() > db.c1.insert({_id:1, name:'use001'}); > db.c1.insert({_id:1, name:'use001'}); E11000 duplicate key error index: test.c1.$_id_ dup key: { : 1.0 } > db.c1.save({_id:1, name:'user002'}); > db.c1.save({_id:1, name:'user003'}); > db.c1.find(); { "_id" : 1, "name" : "user003" } 2.查 db.collection.find()//不带条件 查询所有 db.collection.find({name:'user007'})//条件查找 某些个 > db.c1.insert({name:'user11', age:22, sex:'man'}); > db.c1.find({name:'user11'}, {name:1});//find 第二个条件参数 { "_id" : ObjectId(

rails之路由

匆匆过客 提交于 2020-01-29 03:40:43
理解路由的目的 看懂routes.rb文件中的代码 使用经典的hash风格或者现在比较流行的Restful风格构造你自己的路径 断定一个路径会映射到哪一个controller和action 1. 路由的双重作用 Rails的路由是一个双重的机制 - 你既能把树木变成纸张,也能把纸张变成树木.更准确的说,它既能将进入服务器的HTTP请求连接到你的controller,也能帮助你(在View内)生成URL而不需要使用硬编码的字符串. 1.1 从URL到代码 当你的Rails应用接收到HTTP请求后,比如: GET /patients/17 Rails的路由引擎就是把请求分发到你的应用中合适点的那些代码.具体到这个例子,应用程序比较可能会运行patients controller中的show action,并展示id是17的patient的详细信息. 1.2 从代码到URL 路由也可以反过来作用.如果你的应用包含了以下代码 @patient = Patient.find(17) <%= link_to “Patient Record”, patient_path(@patient) %> 那么,路由引擎就会把这段代码解释成这样的URL: http://example.com/patients/17.这样使用路由,比起硬编码URL,可以降低你的应用程序的脆弱程度(增加程序健壮性)

Mybatis的高级查询&批量删除&批量添加&Mybatis集成SSM

亡梦爱人 提交于 2020-01-29 00:31:00
一、映射Mapper 接口方法映射到对应的SQL XXXMapper.xml的命名空间名称就是Mapper接口的全限定名 Mapper接口上也可以通过相应的注释来写SQL(但是最好不要这么写哦) // 查询全部 // @Select("select * from employee") List < Employee > findAll ( ) ; employeeMapper.xml < ? xml version = "1.0" encoding = "UTF-8" ? > < ! DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" > < ! -- 这里里面的名称都用全限定名 -- > < mapper namespace = "cn.cxm.mapper.mapper.EmployeeMapper" > < select id = "findOne" parameterType = "long" resultType = "cn.cxm.mapper.domain.Employee" > SELECT * FROM employee WHERE id = # { id } < / select > < select id

将Linux默认使用Python2更改为Python3

若如初见. 提交于 2020-01-29 00:23:10
直接执行这两个命令即可: sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 100 sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 150 1 2 如果要切换到Python2,执行: sudo update-alternatives --config python 来源: CSDN 作者: 我是帅气的大叔 链接: https://blog.csdn.net/qq_25639637/article/details/103733276

Vue造轮子-Tabs测试(上)

强颜欢笑 提交于 2020-01-28 22:22:08
1. 点击出现下划线的问题 // tabs-item.vue methods: { xxx() { this.eventBus.$emit('update:selected', this.name, this) } } // tabs.vue mounted(){ this.eventBus.$emit('update:selected', this.selected) } // tabs-head created(){ this.eventBus.$on('update:selected', (item, vm) => { console.log(item) console.log(vm) // 初始化的时候打印出的值为undefined }) } // 为了解决初始化打印出为undefined的问题 // tabs.vue 通过两层循环解决找到item mounted(){ this.$children.forEach((vm)=>{ if(vm.$options.name === 'GuluTabsHead'){ // 找儿子 vm.$children.forEach((childVm)=>{ // 找孙子 if(childVm.$options.name === 'GuluTabsItem' && childVm.name === this.selected){ this

hibernate整理

泪湿孤枕 提交于 2020-01-28 17:19:24
国外框架项目地址:http://websystique.com/springmvc/spring-mvc-4-angularjs-example/Angularjs文本输入框用ng-moduel,其他的用{{ }}放行用.*?Angularjs插件地址http://www.cnblogs.com/pilixiami/p/5634405.htmlUI班的教程:http://pan.baidu.com/share/link?shareid=4146906997&uk=866705889非严格读写是并发的概念Spring不支持多线程Flush()强制要求缓存与数据库一致Eache表连接,lazy子查询ORM: 编写程序时,以面向对象的方式处理数据 保存数据时是以关系型数据库的方式存储的Hibernate的数据持久化: New实例化对象时默认是瞬时的 Jdbc连接数据库时,持久化数据 将数据存入硬盘单向关联关系: 一个类单方向包含另一个类为属性,模拟数据库外键mysql数据库附加:String driver=com.mysql.jdbc.DriverString url=jdbc:mysql://localhost:3306/demohibernate注入: 实体类(1)这个表示一个实体类,Table表示对应数据库中的表名。@Entity@Table(name="t_emp")(2

游标(转2)

折月煮酒 提交于 2020-01-28 12:15:45
使用游标   这里要做一个声明,我们所说的游标通常是指显式游标,因此从现在起没有特别指明的情况,我们所说的游标都是指显式游标。要在程序中使用游标,必须首先声明游标。   声明游标   语法: CURSOR cursor_name IS select_statement;   在PL/SQL中游标名是一个未声明变量,不能给游标名赋值或用于表达式中。   例: DELCARE CURSOR C_EMP IS SELECT empno,ename,salary FROM emp WHERE salary>2000 ORDER BY ename; ........ BEGIN   在游标定义中SELECT语句中不一定非要表可以是视图,也可以从多个表或视图中选择的列,甚至可以使用*来选择所有的列 。    打开游标   使用游标中的值之前应该首先打开游标,打开游标初始化查询处理。打开游标的语法是: OPEN cursor_name   cursor_name是在声明部分定义的游标名。   例: OPEN C_EMP;    关闭游标   语法: CLOSE cursor_name   例: CLOSE C_EMP;    从游标提取数据   从游标得到一行数据使用FETCH命令。每一次提取数据后,游标都指向结果集的下一行。语法如下: FETCH cursor_name INTO