.SQLServerException: значение потока не указанной длины - PullRequest
1 голос
/ 30 мая 2019

Я пытаюсь вставить значения в унаследованные таблицы, включая тип данных изображения

я пытался вставить только в родительскую таблицу, после этого не было ошибок, когда я пытался вставить в обе, это дало мне ошибку исключения sql в указанной длине это ошибка com.microsoft.sqlserver.jdbc.SQLServerException: значение потока не указанной длины. Указанная длина составила 77 896, фактическая длина равна 0.

PreparedStatement ps = con.prepareStatement("begin transaction insert into employee (JobId,EmpFullName,empuser,emppass,empPhone,empEmail,EmpImage,empGender,empNationality,empAddress) values (?,?,?,?,?,?,?,?,?,?)commit; insert into Manager (JobId,EmpFullName,empuser,emppass,empPhone,empEmail,EmpImage,empGender,empNationality,empAddress) values (?,?,?,?,?,?,?,?,?,?)");
ps.setInt(1, 1);
ps.setString(2,txtFName.getText() );
ps.setString(3,txtUserName.getText());
ps.setString(4,txtPassword.getText());
ps.setString(5,txtPhone.getText());
ps.setString(6,txtEmail.getText());
System.out.println(fin);
ps.setBinaryStream(7,fin,len);

ps.setString(8,gender);
ps.setString(9,cmbNationality.getValue());
ps.setString(10,cmbAddress.getValue());
ps.setInt(11, 1);
ps.setString(12,txtFName.getText() );
ps.setString(13,txtUserName.getText());
ps.setString(14,txtPassword.getText());
ps.setString(15,txtPhone.getText());
ps.setString(16,txtEmail.getText());
System.out.println(fin);
ps.setBinaryStream(17,fin,len);
ps.setString(18,gender);
ps.setString(19,cmbNationality.getValue());
ps.setString(20,cmbAddress.getValue());

Я ожидал, что значения будут вставлены в обе таблицы

...