`
leon1509
  • 浏览: 533203 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Groovy连接2个数据库进行数据操作

阅读更多
import groovy.sql.Sql

class CardLossMSSQL {
    static {
    }
    static void main(args){
        def oradb = [url:"jdbc:oracle:thin:@(DESCRIPTION =(ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = xxx.xxx.xxx.xxx)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = bs)))", user:"scott", password:"tiger", driver:"oracle.jdbc.driver.OracleDriver"]
        def orasql = Sql.newInstance(oradb.url, oradb.user, oradb.password, oradb.driver)

		def msdb = [url:"jdbc:sqlserver://xx.xx.xx.xx:1433;DataBaseName=bs", user:"sa", password:"sa", driver:"com.microsoft.sqlserver.jdbc.SQLServerDriver"]
        def mssql = Sql.newInstance(msdb.url, msdb.user, msdb.password, msdb.driver)


		try{
			orasql.eachRow("SELECT tct.ID, tct.CardID, tct.Tpye from TCM_CARDLOST_TEMP tct ORDER BY tct.ID"){r ->
				if(r.Tpye == '1'){
					mssql.execute("delete ComUnLost where scCardID=${r.CardID}")
					mssql.execute("delete ComLost where scCardID=${r.CardID}")
					mssql.execute("insert into ComLost(scCardID) values(${r.CardID})")
					mssql.execute("Insert into ComCardOperate(scID, coType, coCount, coMoney, slID, slStationNo, ClientNo, coUseSystem, coDT, opName, coRemark) (select scID, 3 as coType,crdcount,crdmoney,0 as slID,0 as slStationNo, 1 as ClientNo, 65535 as coUseSystem,GetDate(),39, 0 as coRemark from comsendcard where sccardid = ${r.CardID})")
					mssql.execute("update ComSendCard set scCardStatus=scCardStatus | 2 where scCardID=${r.CardID}")

					orasql.execute("DELETE FROM TCM_CARDLOST_TEMP WHERE ID = ${r.ID}")
				} else {
					mssql.execute("insert into ComUnLost(scCardID,LostID) select scCardID,LostID FROM ComLost WHERE scCardID=${r.CardID}")
					mssql.execute("delete ComLost where scCardID=${r.CardID}")
					mssql.execute("Insert into ComCardOperate(scID, coType, coCount, coMoney, slID, slStationNo, ClientNo, coUseSystem, coDT, opName, coRemark) (select scID, 4 as coType,crdcount,crdmoney,0 as slID,0 as slStationNo, 1 as ClientNo, 65535 as coUseSystem,GetDate(),39, 0 as coRemark from comsendcard where sccardid = ${r.CardID})")
					mssql.execute("update comsendcard set scCardStatus=scCardStatus & 0xfffffffd where scCardID=${r.CardID}")

					orasql.execute("DELETE FROM TCM_CARDLOST_TEMP WHERE ID = ${r.ID}")
				}
			}
		} catch (java.sql.SQLException e){
            e.printStackTrace()
        } finally {
			orasql.close()
            mssql.close()
        }
    }
}
0
0
分享到:
评论

相关推荐

    groovy脚本实现对数据库的增删改查

    1. **连接数据库**: 首先,我们需要引入JDBC驱动,并建立到数据库的连接。例如,如果我们使用的是MySQL,Groovy代码可能如下所示: ```groovy import groovy.sql.Sql def url = 'jdbc:mysql://localhost:3306/...

    Java调用Groovy,实时动态加载数据库groovy脚本

    在Java与MongoDB的交互中,我们可以利用MongoDB的Java驱动程序来连接数据库并查询Groovy脚本。MongoDB不仅支持存储文档数据,还允许存储JavaScript代码,这对于我们的需求非常适用。我们可以编写一个Java方法,从...

    JDBC连接DB2数据库需要的jar包

    在Java开发中,数据库连接是不可或缺的部分,而JDBC(Java Database Connectivity)是Java平台标准中用于与各种数据库进行交互的一套接口和类。当我们要使用Java程序连接到DB2数据库时,需要依赖特定的JDBC驱动。...

    groovy编写webservice服务端和客户端(含连接数据并输出JSON数据)

    标题中的“groovy编写webservice服务端和客户端(含连接数据并输出JSON数据)”表明了本文将探讨如何使用Groovy编程语言来构建Web服务的服务器端和客户端,并且这些服务会涉及与数据库的交互以及JSON数据的处理。...

    android stuido 连接mysql数据库

    由于Android主线程不能进行耗时操作,连接数据库需在子线程(如AsyncTask)中进行,防止UI冻结。使用`doInBackground()`方法执行网络请求,然后在`onPostExecute()`更新UI。 5. **数据库适配器(Data Access ...

    Java连接MySQL数据库的jar包

    它实现了Java的JDBC API,使得开发者可以使用标准的JDBC接口来执行SQL语句,创建数据库连接,执行查询,更新数据等操作。这个驱动程序包含了一些关键类,如`com.mysql.cj.jdbc.Driver`,它是实现JDBC驱动程序接口的...

    gradle导入本地oracle包连接数据库

    在`gradle导入本地oracle包连接数据库`这个场景下,我们需要确保这个驱动包被正确地添加到Gradle项目的依赖管理中。 Gradle是基于Groovy语言的构建自动化工具,具有灵活的依赖管理和构建脚本。为了将`ojdbc6.jar`...

    [Groovy入门]第八讲.将玩具信息写到MySQL

    首先,Groovy提供了对JDBC(Java Database Connectivity)的无缝支持,这意味着我们可以使用Groovy来编写SQL语句,连接和操作MySQL数据库。在Groovy中,我们可以通过以下步骤建立数据库连接: 1. 导入所需的JDBC...

    连接postgresql数据库需要的jar包

    在Java编程中,连接到PostgreSQL数据库通常需要特定的驱动程序,这个驱动程序通常是以JAR(Java Archive)文件的形式存在。"连接postgresql数据库需要的jar包"指的是用于建立Java应用程序与PostgreSQL数据库之间通信...

    本资源包含kettle连接几乎各种常见数据库所需jar包

    【标题】"kettle连接各种数据库所需jar包资源"提供了Kettle进行数据提取、转换和加载(ETL)过程中与多种常见数据库交互所必需的Java类库(JAR包)。Kettle,又称Pentaho Data Integration(PDI),是一款强大的开源...

    java mysql数据库的连接

    Java MySQL数据库连接是Java开发中常见的一项任务,用于在应用程序中与MySQL数据库进行交互,例如存储、检索或更新数据。JDBC(Java Database Connectivity)是Java平台中的一个标准API,它提供了一种统一的方式来...

    便捷轻巧的Groovy数据库操作

    Groovy是一种动态、灵活的Java平台上的编程语言,它在许多方面简化了Java的开发,尤其是在处理数据库操作时。在Groovy中,`groovy.sql`...无论是在脚本、服务还是Web应用中,Groovy都能作为一个高效的数据库操作语言。

    groovy将表单多个字段复制到一个字段内.rar

    "Groovy将表单多个字段复制到一个字段内"这个主题聚焦于如何利用Groovy脚本语言来实现这一操作,特别是在致远(SAP Seer)这样的企业级应用中。下面将详细解释相关知识点。 1. **Groovy语言**: Groovy是一种基于...

    andriod开发直接连接mssql数据库

    在Android开发中,直接连接Microsoft SQL Server数据库是一个相对复杂的过程,因为Android系统原生并不支持直接与SQL Server交互。但通过一些技术手段,我们可以实现这一目标。以下是一些关键知识点和步骤: 1. **...

    android 连接mysql数据库jar包

    JDBC(Java Database Connectivity)是Java语言中用来规范客户端程序如何连接数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。`jtds.jar`是一个开源项目,它实现了JDBC驱动,允许Java应用程序通过...

    Android使用ORMLite进行数据库操作

    创建一个`DatabaseHelper`类,继承自ORMLite的`OrmLiteBaseHelper`,在这个类中初始化数据库连接,并定义数据库版本。 4. **实体类建模** 对于每个需要存储在数据库中的对象,创建一个对应的Java类,并使用...

    安卓连接MySql数据库

    通常会将数据库操作封装到一个单独的数据访问层(DAL,Data Access Layer),并利用Android的ContentProvider或者ORM(Object-Relational Mapping)框架如SQLiteOpenHelper、Room等,对数据进行本地缓存,以减少对远程...

    Jmeter链接mysql数据库jar包

    JDBC驱动是Java程序连接到不同数据库的桥梁,它实现了Java标准API,使得JMeter可以使用SQL语句与MySQL数据库进行数据操作。`5.1.28`是该版本的编号,表示驱动的特定迭代,可能包含错误修复和功能增强。 将这个jar包...

    GORM_ADO数据库操作模块.rar

    2. **数据操作**:GORM_ADO提供了类似于ORM(对象关系映射)的API,允许开发者通过对象操作方式来处理数据库记录。例如,创建一个新的数据记录可以通过类实例化完成,更新和删除则对应于对象的保存和删除方法。 3. ...

    idea连接mysql数据库.doc

    配置完驱动程序之后,接下来需要在 IntelliJ IDEA 中配置数据源以便连接 MySQL 数据库。 ##### 3.1 打开 Data Sources 工具窗口 1. 打开 IntelliJ IDEA,点击右侧的 Database 工具窗口(或使用快捷键 Alt + 6)。 ...

Global site tag (gtag.js) - Google Analytics