PRB: لا يمكن بدء تشغيل اتصال مستنسخة في الوضع اليدوي للحركة

الأعراض

قد تواجهك أثناء استخدام Microsoft SQL Server 2000 Driver ل JDBC، الاستثناء التالي:
java.sql.SQLException: لا يمكن بدء تشغيل [Microsoft] [SQLServer 2000 برنامج تشغيل JDBC] اتصال مستنسخة في الوضع اليدوي للحركة.

السبب

يحدث هذا الخطأ عند محاولة تنفيذ جمل متعددة مقابل قاعدة بيانات SQL Server باستخدام برنامج تشغيل JDBC في الوضع اليدوي للحركة (التنفيذ الأوتوماتيكي = false) وأثناء استخدام المباشر (SelectMethod = المباشر) الوضع. وضع المباشر هو الوضع الافتراضي لبرنامج التشغيل.

الحل

عند استخدام الوضع اليدوي للحركة، يجب تعيين الخاصية SelectMethod من برنامج تشغيل المؤشر أو تأكد من أنك تستخدم كشف واحد فقط نشط في كل اتصال كما هو محدد في قسم "مزيد من المعلومات" من هذه المقالة.

الحالة

يعتبر هذا السلوك حسب التصميم.

مزيد من المعلومات

خطوات إعادة إنشاء المشكلة

استخدم التعليمات البرمجية التالية لإعادة إنشاء الخطأ:

ملاحظة: انظر التعليقات في التعليمات البرمجية للحصول على معلومات على تغييرات التعليمات البرمجية المطلوبة لحل المشكلة.
import java.sql.*;import java.io.*;


public class Repro{

public static void main(String args[])
{
try {
Connection con;
Statement s1 = null;
ResultSet r1 = null;
Statement s2 = null;
ResultSet r2 = null;
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
con = DriverManager.getConnection(
"jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs;SelectMethod=Direct;User=User;Password=Password");
//fix 1
//"jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs;SelectMethod=Cursor;User=User;Password=Password");
con.setAutoCommit(false);

try {
s1 = con.createStatement();
r1 = s1.executeQuery("SELECT * FROM authors");

//fix 2
//r1.close();
//s1.close();

s2 = con.createStatement();
r2 = s2.executeQuery("SELECT * FROM publishers");
}
catch (SQLException ex)
{
System.out.println(ex);
}

}
catch (Exception e)
{
e.printStackTrace();
}
}
}

المراجع

لمزيد من المعلومات حول "اتصالات استنساخ"، راجع المقطع "خصائص سلسلة الاتصال" من Microsoft SQL Server 2000 Driver تعليمات HTML JDBC أو "دليل على الإنترنت". للحصول على معلومات إضافية حول اتصالات المستنسخة ببرنامج التشغيل، انقر فوق رقم المقالة التالي لعرضها في "قاعدة المعارف ل Microsoft":

313220 PRB: اتصالات غير متوقع إلى SQL Server باستخدام جدبك
خصائص

رقم الموضوع: 313181 - آخر مراجعة: 18‏/01‏/2017 - المراجعة: 1

تعليقات