Q&A

  • MS SQL에서 varchar가 250자 이상일때 에러
Q:



필드를 Text Type으로 바꾸어 잘 사용했습니다.

그런데 문제가 SQL Server에서 발생했습니다.

Table lock이 걸려 동시에 여러 유저가 (각각 다른 레코드)데이타를 수정할 수 없습니다.

다시 Text Field Type을 varChar로 바꾸면 lock이 걸리지 않구요.



1. Text Field Type으로 사용할때 Table lock이 걸리지 않게 하거나

2. varChar를 244byte 이상으로 사용하는 방법(500byte 이상) 중

어떻게 이문제를 풀어야 할까요?

좋은 해결 방법을 알려 주세요

여러분의 도움이 필요합니다.



감사합니다.



==============================================

A:



Text Type 으로 설정하시지요.



Text로 선언된 필드를

Select 문에서 distinct 명령어를 사용할 수 없더군요.

==============================================

Q:



송종근 wrote:

> MS SQL v7.0 이구요,

> Delphi 는 4.0 입니다.

>

> SQL 에서 size가 250 이상인 varchar 필드를 만들면 (예를들어 'remark' varchar size:500),

> Delphi Database Desktop에서 그 필드의 size가 250이하로 설정되어 버립니다.

> 그리고 TTable componant의 Fields Editor에서 그필드의

> Size를 500으로 고쳐서 Table active를 True 로 해주면

> "Size mismatch for field 'remark', expacting: 500, actual:144."

> 에러가 됩니다.

> 어떻게 이문제를 해결해야 할까요?

> 도와주세요.

1  COMMENTS
  • Profile
    김범석 2000.11.25 01:23
    from table_name with (nolock) 하시면 lock 이 안걸리겠죠









    송종근 wrote:

    > Q:

    >

    > 필드를 Text Type으로 바꾸어 잘 사용했습니다.

    > 그런데 문제가 SQL Server에서 발생했습니다.

    > Table lock이 걸려 동시에 여러 유저가 (각각 다른 레코드)데이타를 수정할 수 없습니다.

    > 다시 Text Field Type을 varChar로 바꾸면 lock이 걸리지 않구요.

    >

    > 1. Text Field Type으로 사용할때 Table lock이 걸리지 않게 하거나

    > 2. varChar를 244byte 이상으로 사용하는 방법(500byte 이상) 중

    > 어떻게 이문제를 풀어야 할까요?

    > 좋은 해결 방법을 알려 주세요

    > 여러분의 도움이 필요합니다.

    >

    > 감사합니다.

    >

    > ==============================================

    > A:

    >

    > Text Type 으로 설정하시지요.

    > 단

    > Text로 선언된 필드를

    > Select 문에서 distinct 명령어를 사용할 수 없더군요.

    > ==============================================

    > Q:

    >

    > 송종근 wrote:

    > > MS SQL v7.0 이구요,

    > > Delphi 는 4.0 입니다.

    > >

    > > SQL 에서 size가 250 이상인 varchar 필드를 만들면 (예를들어 'remark' varchar size:500),

    > > Delphi Database Desktop에서 그 필드의 size가 250이하로 설정되어 버립니다.

    > > 그리고 TTable componant의 Fields Editor에서 그필드의

    > > Size를 500으로 고쳐서 Table active를 True 로 해주면

    > > "Size mismatch for field 'remark', expacting: 500, actual:144."

    > > 에러가 됩니다.

    > > 어떻게 이문제를 해결해야 할까요?

    > > 도와주세요.