Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将java.sql.date从java类传递到sqlserver存储过程_Java_Sql Server 2008 - Fatal编程技术网

如何将java.sql.date从java类传递到sqlserver存储过程

如何将java.sql.date从java类传递到sqlserver存储过程,java,sql-server-2008,Java,Sql Server 2008,我想借助存储过程将java类中的java.sql.date参数传递给sqlserver datetime参数。但它不起作用。 从java调用存储过程:- java.util.Date d1= new SimpleDateFormat("yyyy-MM-dd").parse(obj.getDoj()); //obj,getDoj is String. java.util.Date d2= new SimpleDateFormat("yyyy-MM-dd").parse(obj.getDob());

我想借助存储过程将java类中的java.sql.date参数传递给sqlserver datetime参数。但它不起作用。 从java调用存储过程:-

java.util.Date d1= new SimpleDateFormat("yyyy-MM-dd").parse(obj.getDoj());
//obj,getDoj is String.
java.util.Date d2= new SimpleDateFormat("yyyy-MM-dd").parse(obj.getDob());
CallableStatement cs=con.prepareCall("execute insert_manager ?,?,?,?,?,?");
cs.setString(1,obj.getName());
cs.setString(2, obj.getPassword());
doj=new java.sql.Date(d1.getTime());
dob=new java.sql.Date(d2.getTime());
cs.setDate(3,doj);
cs.setDate(4, dob);
cs.setInt(5, obj.getSalary());
cs.setString(6, obj.getLocation());
boolean b = cs.execute();
存储过程:=

create procedure insert_manager @username varchar(20),@password varchar(20),                                              
@doj dateTime,@dob dateTime,@salary int,@location varchar(20)as    
begin...........

当我使用try/catch时,我发现错误出现在cs.execute行。错误是:

传入的表格数据流(TDS)远程过程调用(RPC)协议流不正确。参数6(“”):提供的值不是数据类型datetime的有效实例。检查源数据是否存在无效值。无效值的一个示例是刻度大于精度的数字类型的数据


请任何人帮我解决这个问题…错误在--cs.setDate(3,doj)和cs.setDate(4.dob)
它不工作
是不够的,请详细描述您遇到的问题。好的。当我使用try-catch时,我发现错误出现在cs.execute行。错误为:“传入的表格数据流(TDS)远程过程调用(RPC)协议流不正确。参数6(“”):提供的值不是数据类型datetime的有效实例。请检查源数据中是否存在无效值。无效值的一个示例是标度大于精度的数字类型的数据。”我将表列和过程变量的数据类型从dateTime更改为dateTime,但它给了我相同的错误。请任何人帮助我…错误在--cs.setDate(3,doj)和cs.setDate(4.dob)
中,它不起作用
是不够的,请详细描述您遇到的问题。好的。当我使用try-catch时,我发现错误出现在cs.execute行。错误为:“传入的表格数据流(TDS)远程过程调用(RPC)协议流不正确。参数6(“”):提供的值不是数据类型datetime的有效实例。请检查源数据中是否存在无效值。无效值的一个示例是标度大于精度的数字类型的数据。”我将表列和过程变量的数据类型从dateTime改为date,但它给了我相同的错误。