0

SQL 2000에서 SQL2008으로 이동합니다. SQL 2000은 Server 2003에 있습니다. SQL 2008은 Server 2008에 있습니다. 데이터베이스를 성공적으로 가져 왔습니다. 쿼리를 수행 할 수 있으며 제대로 작동합니다. IDE에서 실행중인 VB6 프로그램을 사용하여 데이터베이스를 업데이트합니다.조합 시퀀스 운영 체제에서 지원되지 않습니다.

내 VB6 프로그램이 프로그램은 다음 연결 문자열을 사용하여 연결하는 서버 2003에서 실행되는 경우 : 위의 연결 문자열을 사용

Provider=SQLOLEDB;DATABASE=mydbname;SERVER=my ip;DRIVER={SQL SERVER};UID=myuser;PWD=mypw; 

을, 나는 SQL 2000 또는 새로운 SQL 중 하나에 오류없이 연결할 수 있습니다 2008 데이터베이스 나는 새로운 SQLNCLI10 공급자

CCTdbConnectionString = "Provider=SQLNCLI10;Server=myServer\My InstanceName;Database=MyDB;UID=myuser;PWD=mypw; 

을 사용해야 할 수 있도록 서버 2008, 여기에 문제의 어떤 SQLOLEDB 드라이버 쇼가 없습니다. Server 2008에서 실행 중일 때 3228 선택된 조합 순서가 운영 체제에서 지원되지 않는 오류가 발생합니다. 디버그를 누르고 다시 시도하거나 프로그램을 중지했다가 다시 시도하면 IDE를 다시 열 때까지 해당 오류가 발생합니다. 그런 다음 오류가 발생하여 2 차 오류가 발생합니다. 3027은 업데이트 할 수 없습니다. 데이터베이스 또는 객체가 읽기 전용입니다! 이것은 결코 사라지지 않고 나는 죽었다.

답변

0

코드 컴파일 : IDE를 사용하지 않습니까? 많은 연구 후 KS KB article 246167

+0

그 결과 Collating Sequence Error Messages가 고쳐졌습니다. 원더 왜? 데이터베이스가 '읽기 전용'으로되어 있지 않습니다. 동일한 자격 증명을 사용하는 동일한 컴퓨터에서 SQL 프로필러를 사용할 수 있으며 모든 쿼리가 작동합니다. – CurtTampa

+0

BTW : 이것은 VB6에서 KB 기사는 EXCEL 용입니다. – CurtTampa

1

관련

, 나는 답을 발견했다. SQL 2005 이상에서는 ODBC 또는 OLEDB를 사용하여 액세스되는 모든 단일 테이블에 고유 키 인덱스가 있어야합니다. 문제를 해결합니다.

관련 문제