database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
ㆍMS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MS-SQL Q&A 991 게시물 읽기
No. 991
[질문] NOT NULL을 줬는데도 데이터에 NULL 이.. -_-;
작성자
craveu
작성일
2003-10-17 12:16ⓒ
2003-10-17 13:12ⓜ
조회수
3,399

MS SQL 2000 씁니다

게시판을 돌립니다

 

ASP 인데.. 입력할때도 제목, 이름, 내용에도 스크립트로 아무 내용이 없을 경우 입력이 안되게 해놨구

디비 자체에서도 컬럼 속성에 NOT NULL 을 줬습니다..

 

근데 문제는 제목, 이름, 내용이 NULL 인 데이터가 올라옵니다 T.T

어이가 없습니다.. space가 들어간것도 아니고 으으

 

http의 비 정상적인 접근으로 게시물을 생성하는걸로 생각하고

컬럼에 NOT NULL 을 줬는데도 .... 계속 그런 게시물이 생깁니다

광고도 아니고 나 원 참 -_-;

 

조사를 하다가 이상한걸 발견했습죠 (이상한가 -_-;)

입력된 데이터를 디비에 들어가서 직접 컬럼 데이터를 지워버리면 그게 반영이 됩니다

혹 이런 경우는 데이터가 없을뿐 널값은 아니라는건가요.. 몰겄네...

 

이유 아는 분~

이 글에 대한 댓글이 총 1건 있습니다.

스크립트로 공백문자를 막으셨다면

결국 그 그부분만 뛰어넘게 비정상적으로 접근을 하면

디비 안으로 입력되는데에는 별다른 제약이 없는것 아닌가요?

 

그리고 NULL값이 들어 간다고 하셨는데

컬럼 속성이 not null 인데 null 이 들어간다고 볼수는 없을것 같습니다.

 

select * from tab1 where seq = (null이 나오는 레코드)

를 query analyzer 에서 부르셔서

 

값이 null 인지 빈문자열인지 확인하시기 바랍니다.

빈문자열이 space를 말하는것은 아닙니다.

 

만일 웹에서 생성되는 쿼리가

"insert into tab1 value("&col1&","&col2&)

라면

col1 이나 col2가 값이 없을때 들어 가는 값은

insert into tab1 value('','')

이렇게 되겠죠.

space가 아니라 그냥 아무것도 없는 문자입니다.

 

도움이 되셨길 바랍니다...^^

 

정민철님이 2003-10-18 10:40에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
995확장자가 dsn인 파일은 도대체 어떤 프로그램에서 만들어진건지 궁금합니다. [1]
데이타맨
2003-10-22
3440
994outer join에 대해서요.. [1]
나그네
2003-10-21
4240
993프로시져 사용에 대해.... [1]
수호신
2003-10-20
3210
991[질문] NOT NULL을 줬는데도 데이터에 NULL 이.. -_-; [1]
craveu
2003-10-17
3399
990다른 인스턴스에 있는 디비 접근
신호
2003-10-17
2820
989ID설정된 필드에대한 Index관련 질문.. [1]
궁금
2003-10-15
3621
987db 복구시 생긴 문제좀 봐주세요.
거북이
2003-10-10
2979
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.018초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다