Q&A

  • EDBEngineError

회사에서 이전에 델파이로 작성해 놓은 프로그램이 있습니다.

서버 이전을 하면서 DB 버전을 업(MS-SQL 7-> MS-SQL 2008) 하다보니 문제가 생겨 문의 드립니다.

 

델파이5

MS-SQL 2008 32bit (처음에 64bit 설치했다가 지원이 안 된다는 소리를 듣고 32bit로 다시 설치했습니다.)

컴퓨터 이름(SM_BMDB), SQL Server 명(SM_BMDB)

 

TDatabase를 사용해서 DB 접속을 하는데 다음과 같은 에러가 뜹니다.

 

Project AMain.exe raised exception class EDBEngineError with message 'Cannot locate or connect to SQL server.

Unable to connect:SQL Server is unavailable or does not exist. Connection is busy.

Alias:smin'. Process stopped. Use Step or Run to continus.

 

Cannot locate or connect to SQL server.

Unable to connect: SQL Server is unavailable or does not exitst. Connection is busy.

Alias:smin.

 

처음 64bit 였을때는 Connection is busy 부분이 서버를 찾을 수 없다 그런 메세지였는데 32ibt로 재설치후에는 busy라고 나옵니다.

막 설치한 거라 다른 접속이 없을텐데 왜 busy라고 뜰까요?

 

MS-SQL7 이었을때도 서버를 찾을 수가 없다고 해서 NTWDBLIB.DLL을 따로 시스템 폴더에 넣어주었고 이상하게도 서버 컴퓨터 D 드라이브의 public1 폴더를 공유 시켜준 다음에야 접속이 됐었습니다.

public1 폴더 안에 다른 델파이 프로그램 소스가 있었고 다른 설정 파일 같은 건 없습니다.

이것도 참 이상했어요. ㅡㅡ;;

 

아 참 그리고 BDE Administrator에서는 정상적으로 접속이 되어 초록색 상자가 표시 됩니다.

버전은 5.01 이구요.

영향이 있는지 모르겠지만 ODBC 설정도 다 잡아준 상태입니다. 

 

바쁘시겠지만 답변 기다리겠습니다.

 

참고로 혹시나 해서 TDatabase Params 부분 추가합니다.
DATABASE NAME=smin
SERVER NAME=SM_BMDB (IP로 해도 현상은 동일함)
USER NAME=sa
OPEN MODE=READ/WRITE
SCHEMA CACHE SIZE=8
BLOB EDIT LOGGING=
LANGDRIVER=DBWINUS0
SQLQRYMODE=
SQLPASSTHRU MODE=SHARED AUTOCOMMIT
DATE MODE=0
SCHEMA CACHE TIME=-1
MAX QUERY TIME=300
MAX ROWS=-1
BATCH COUNT=200
ENABLE SCHEMA CACHE=FALSE
SCHEMA CACHE DIR=
HOST NAME=
APPLICATION NAME=
NATIONAL LANG NAME=
ENABLE BCD=FALSE
TDS PACKET SIZE=4096
BLOBS TO CACHE=64
BLOB SIZE=32
ODBC DSN=smin
ROWSET SIZE=20
PASSWORD=2012

0  COMMENTS