Oracle数据库学习之多表查询
等值连接
1234SELECT * FROM EMPLOYEES,DEPARTMENTSWHERE EMPLOYEES.DEPARTMENT_ID = DEPARTMENTS.DEPARTMENT_ID
等值连接(内连接,不匹配的会被过滤掉,不显示的)简写,可以给每个表明起一个别名
123SELECT e.EMPLOYEE_ID,e.DEPARTMENT_ID FROM EMPLOYEES e,DEPARTMENTS DWHERE e.DEPARTMENT_ID = d.DEPARTMENT_ID
等值连接(左外连接,会返回左表不满足条件的)
12345678SELECT e.EMPLOYEE_ID,e.DEPARTMENT_ID FROM EMPLOYEES e,DEPARTMENTS DWHERE e.DEPARTMENT_ID = d.DEPARTMENT_ID(+)#//--需要在右边表加上一个(+)
三个表连接查询,需要2个等值判断条件。连接n个表,需要n-1个等值条件
123456789SELECT e.EMPLOYEE_ID, e.LAST_NAM ...
Oracle数据库学习之单行函数
单行函数
lower() 大小转换为小写
upper() 全部转换为大小
initcap() 首字母转换为大写
12SELECT lower('MAGE') as mage,upper('mage 私房菜') AS mage, initcap('mamh')FROM EMPLOYEES;
caoncat() 连接2个字符串
subtree(‘helloworld’, 1, 5) 截取字符串
length()
instr() 判断某个字符在一个字符串中首次出现的位置
lpad()
rpad()
trim()
replace()
12SELECT concat('hello ', 'world'), substr('helloworld',2,4),LENGTH('helloworld')FROM EMPLOYEES;
12SELECT EMPLOYEE_ID, SALARY, lpad(SALARY, 1 ...
Maven学习之mvn命令的使用
mvn命令跳过单元测试
1234567mvn 命令加上 -DskipTests #,不执行测试用例,但编译测试用例类生成相应的class文件至target/test-classes下。mvn 命令加上 -Dmaven.test.skip=true #,不执行测试用例,也不编译测试用例类。 其中-D的意思是 -D,--define <arg> Define a system property
执行特定的测试
1234567891011121314151617mvn test -Dtest=[ClassName]mvn -Dtest=com.mamh.aais.aais.TriggerAndroidBuildTest test------------------------------------------------------- T E S T S-------------------------------------------------------Running com.mamh.aais.aais.TriggerAndro ...
Maven学习之maven-release-plugin使用
maven-release-plugin 使用
1234567891011121314151617181920关于插件目标,主要是prepare和perform两个目标prepare:概括来说,就是perform之前需要执行的准备操作,主要是代码版本修改和提交。具体来说呢?主要有以下几个:1)检测是否有未提交的代码。2)检测是否有snapshot依赖。3)修改工程的版本号为release版本(提示输入)。4)为当前代码打上一个git的tag(提示输入),提交代码至远程仓库。5)修改pom为下一个snapshot版本(输入提示),提交至远程仓库。
参考 https://www.cnblogs.com/huxiuqian/p/10281007.html
mvn release:prepare
执行过程中,你会遇到这样的提示:
What is the release version for “Slave Monitor for system load average”? (org.jenkins-ci.plugins:systemloadaverage-monitor) 1.3: — ...
Jenkins学习之PingThread和ChannelPinger
jenkins中的PingThread介绍问题引出异地jenkins节点总是断开链接,然后发出的通知有如下报错
123Connection was broken: java.util.concurrent.TimeoutException: Ping started at 1667335510986 hasn't completed by 1667335750987 at hudson.remoting.PingThread.ping(PingThread.java:134) at hudson.remoting.PingThread.run(PingThread.java:90)
上面报错 行的代码如下:
12onDead(new TimeoutException("Ping started at "+start+" hasn't completed by "+System.currentTimeMillis()));//.initCause(e)
通过计算 1667335750987 和 16673355 ...
Jenkins学习之Jenkins流水线when条件判断执行
流水线中如何使用条件判断来决定某个stage是否需要执行呢?
答案是 使用 when 这个闭包。 when 放到 stage 中使用,条件成立 就会执行 下面的 step是中的语句的。
Conditionals in a Declarative Pipeline Jenkinsfile
例子1123456789101112131415161718192021pipeline { agent any parameters { choice( choices: ['greeting' , 'silence'], description: '', name: 'REQUESTED_ACTION') } stages { stage ('Speak') { when { ...
Jenkins学习之Jenkins流水线parallel并发执行
动态的创建 一个 并行的 流水线。并且可以设置agent的。
例1
1234567891011121314151617181920212223242526272829303132333435363738394041pipeline { agent any stages { stage('BuildAll') { parallel { stage('build-win') { steps { sh "env | grep -i NODE_NAME" runParallel items: ("a".."d").collect { "Win-${it}" } ...
Jenkins学习之Jenkins流水线中parallel中的并发数
问题背景How can I limit number of certain pipelines running in parallel?
1234https://stackoverflow.com/questions/50578473/how-can-i-limit-number-of-certain-pipelines-running-in-parallel
have a simple way to limit the number of parallel branches that run concurrently
12345678https://issues.jenkins-ci.org/browse/JENKINS-44085https://issues.jenkins-ci.org/browse/JENKINS-26125
Throttle parallel step in pipeline script
1https://issues.jenkins-ci.org/browse/JENKINS-46236
123https://github.com/jenkinsci ...
Jenkins学习之Jenkins流水线中load其他groovy文件
123456789101112131415161718steps { script { def util = load("${env.WORKSPACE}/scripts/build_util.groovy") util.runStep1() } } steps { script { def util = load("${env.WORKSPACE}/scripts/build_util.groovy") util.runStep2() } } steps { script { def util = load("${env.WORKSPACE}/scripts/build_util.groovy") util.runStep3() ...
Jenkins学习之Jenkins流水线中怎么使用全局变量
jenkins学习之Jenkins流水线中怎么使用全局变量
问题背景例如我们在 stage1中 利用 script 代码块 设置赋值了一个 变量,然后想在 stage2中使用。应该怎么操作呢?
https://stackoverflow.com/questions/53541489/updating-environment-global-variable-in-jenkins-pipeline-from-the-stage-level/53541813
https://www.youtube.com/watch?v=KwQDxwZRZiE
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104你不能重写在environment{ ...
Jenkins学习之Jenkins流水线之声明式管道与脚本式管道
Jenkins pipeline最近由于项目需要,接触到了Jenkins 2.0版本,其中最重要的特性就是提供了对pipeline的支持。简单的来说,就是把Jenkins1.0版本中,Project中的相关配置信息,如SVN/Git的配置,Parameter的配置等都变成Code,即Pipeline as Code。这样的优势为可以通过写代码的形式配置Project,且Jenkins中内置了常用的steps。实现了构建步骤代码化、构建过程视图化。
声明性管道与脚本管道123456789101112131415声明式管道 和 脚本化管道 的主要区别在于它们的语法和灵活性声明性管道是一个相对较新的特性,它提出了pipeline as code的概念,它使管道代码更易于读写。管道代码是在 Jenkinsfile 文件中编写的,可以将其存放到源代码管理系统(如Git)。 脚本化管道是一个传统方式。在这个管道中,Jenkinsfile 被写在 Jenkins UI实例上。虽然这两条管道都是基于Groovy DSL的,但是脚本化的流水线使用更严格的基于Groovy的语法,因为它是Groo ...
Jenkins学习之Jenkins流水线语法
https://www.jenkins.io/doc/book/pipeline/syntax/
Declarative Pipeline所有有效的声明性管道都必须包含在管道块中,例如:
123pipeline { /* insert Declarative Pipeline here */}
agent代理 agent 部分指定整个pipeline或特定阶段 stage 将在 Jenkins 环境中执行的位置,具体取决于代理部分的放置位置。该部分必须在pipeline块内的顶层定义,但阶段级别的 stage 使用也是可以的的。
123456Required Yes 是否必须有,Parameters 有参数,详细说明往下看Allowed 可以在顶层 pipeline 代码块里用,也可以在 stage 代码块里面用
Top Level Agents
12345678910111213In agents declared at the outermost level of the Pipeline, the options are i ...