Tag: sql server

Hibernate MSSQL datetime2映射

我有一个存储过程,它返回一个数据类型为datetime2的数据库,数据库为Date,Java文件为Date。 当我试图从数据库中获取时间时调用getTime()。 它返回19994321211毫秒,相当于2015年5月4日00:00:00 IST 2015.理想情况下它应该返回2015-05-04 15:21:52的毫秒,因为这是直接执行过程时数据库中显示的时间。 由于我是Hibernate的新手,我无法理解这个问题是否与hibernate映射有关或我错过了什么。 { call lsc.MLC_Get(:ABC, :XYZ, :ErrorCode)} class Mlc implements java.io.Serializable { private Integer mlcid; private Date completionTime; // getter and setter }

如何使用db = SQL Server 2008 Express在java(使用JDBC)中执行批量插入语句

我试图在SQL Server 2008 Express上执行BULK INSERT语句。 (它基本上占用指定文件中的所有字段,并将这些字段插入表中的相应列中。) 下面给出了批量插入语句的示例 – BULK INSERT SalesHistory FROM ‘c:\SalesHistoryText.txt’ WITH (FIELDTERMINATOR = ‘,’) 下面给出的是我试图使用的Java代码(但它不起作用)…有人可以告诉我这里做错了什么或者指向一个使用Bulk Insert语句的java代码示例/教程? – public void insertdata(String filename) { String path = System.getProperty(“user.dir”); String createString = “BULK INSERT Assignors FROM ” + path + “\\” +filename+ “.txt WITH (FIELDTERMINATOR = ‘,’)”; try { // Load the SQLServerDriver class, build […]

如何在使用flywaydb时对版本控制存储过程进行版本控制?

我目前有一个使用Microsoft SQL Server后端的Java Web应用程序。 数据库迁移当前由sqlcmd手动完成,它使用:r命令引用存储过程和视图的脚本文件。 这样,每个存储过程都有自己的文件“proc_someprocedure.sql”。迁移由升级脚本“6.1 upgrade.sql”完成,该脚本将proc文件放弃并在其当前版本中重新创建。 我们希望迁移到flyway并让应用程序在部署时迁移它自己的数据库。 但是,我找不到任何简单的方法来为每个存储过程维护单个源代码文件。 如果存储过程发生更改,我需要在版本控制中对V_6_1__change.sql文件和proc_someprocedure.sql文件进行更改。 我正在尝试避免复制/粘贴的sql代码,因为它在过去困扰我们。其他人如何处理这种情况?

使用不同的jdbc驱动程序连接到多个数据库

我需要编写一个基于守护进程的java进程(非基于Web),它将连接到Oracle 10G数据库,从中读取一些数据,然后连接到SQL Server数据库并将数据写入表。 听起来很简单,但我对此有几个疑问。 我需要有两个jdbc驱动程序,一个用于连接到Oracle数据库,另一个用于连接到sql server数据库。 sql server jdbc驱动程序是jtds jdbc驱动程序( http://jtds.sourceforge.net/ ),对于Oracle我将使用标准的oracle jdbc驱动程序。 我可能会遇到类路径中可用的两个驱动程序的任何问题吗? 我的猜测是我需要的是一个ConnectionManager类来管理连接和一个客户端DAO类,它将调用相关的方法来获取它需要的连接,具体取决于它是从Oracle读取还是写入SQL Server。 这是一种合理的方法还是有更好的设计/模式? 编辑 好吧,我试图整理一个快速的设计解决方案。 见下图 我认为我遇到的问题是如何提交。 这是处理流程 InvoiceBD从工厂类获取Oracle连接,并调用InvoiceUploadDAO.readData将Oracle连接对象传递给它。 InvoiceBD从工厂类获取SQL Server连接,并调用InvoiceUploadDAO.writeData,将SQL Server连接对象传递给它。 InvoiceBD重用Oracle连接将InvoiceUploadDAO.update状态调用为Oracle数据库上的“完成”设置状态。 InvoiceBD提交Oracle连接。 InvoiceBD提交SQL Server连接。 或者如果出现问题,两个连接对象都会回滚。 那个听起来是对的吗? 谢谢

JAVA中的SQL Server查询通知

我已经在网上搜索了一段时间,但到目前为止没有运气。 是否可以在JAVA中实现这一点http://www.codeproject.com/Articles/144344/Query-Notification-using-SqlDependency-and-SqlCach ? 是否支持JDBC for SQL Server 2012? 提前致谢!

Java和SQL Server中的精确噩梦

我一直在努力解决Java和SQL Server中的精确噩梦,直到​​我不知道为止。 就个人而言,我理解这个问题及其根本原因,但向全球客户解释这一点是不可行的(至少对我而言)。 情况就是这样。 我在SQL Server中有两列–Qty INT和Price FLOAT。 这些值为 – 1250和10.8601 – 因此,为了获得总值,其数量*价格和结果为13575.124999999998(在Java和SQL Server中)。 那是对的。 问题是这个 – 客户端不想看到它,他们只看到这个数字为13575.125就是这样。 在一个地方,他们可以用2位小数精度看到它,另外4位小数。 当以4位小数显示时,数字是正确的 – 13575.125,但是当以2位小数显示时,他们认为它是错误的 – 13575.12 – 应该是13575.13! 帮帮我。

如何从使用该程序的人隐藏MySQL数据库的密码

我用JDBC创建了一个java程序,它成功连接到我的计算机服务器的MySQL数据库,如下所示: try { // The newInstance() call is a work around for some // broken Java implementations Class.forName(“com.mysql.jdbc.Driver”).newInstance(); } catch (Exception ex) { // handle the error } try { conn = DriverManager.getConnection((“jdbc:mysql://191.168.1.15:3306/databasename”), “username”, “password”); // Do something with the Connection } catch (SQLException ex) { // handle any errors System.out.println(“SQLException: ” + ex.getMessage()); System.out.println(“SQLState: […]

有没有办法用SQL Server JDBC驱动程序显示PRINT结果?

如果我的存储过程中有一个print语句: print ‘message’ 有没有办法获取通过JDBC连接到SQL Server 2008的java程序中的输出? 另外,从JDBC应用程序调用时,是否存在print消息进行调试会关闭连接的危险?

JPA:如何映射SQL Server uniqueidentifier类型

我inheritance了一个我试图通过JPA映射的SQL Server数据库。 许多表都有uniqueidentifier列。 我试图像这样映射它们: @Id @GenericGenerator(name = “generator”, strategy = “guid”, parameters = {}) @GeneratedValue(generator = “generator”) @Column(name = “APPLICATION_ID”) private String id; Hibernate抱怨: Found: uniqueidentifier, expected: varchar(255)

ms sql microsoft的jdbc驱动程序和jTDS的驱动程序之间的差异

每个司机之间有什么区别? 我的意思是,除了其中一个是开源的 每个人的利弊是什么? 你会推荐哪一个? 这里是jTDS自己对这个主题的看法: http ://jtds.sourceforge.net/