Q&A
HOME
Tips & Tech
Q&A
Discuss
Download
자유게시판
홍보 / 광고
구인 / 구직
LOGIN
회원가입
SQL의 DELETE나 UPDATE에 관한 질문입니다...
Primary Key 지정이 없는 경우의 DELETE나 UPDATE는 어떻게 해야하는지
궁금합니다.
보통의 Table은 DBGrid에서 레코드를 이동해서 선택된 레코드를 삭제하는데,
SQL의 경우는 현재의 레코드 위치를 알고 그 위치의 레코드를 삭제하거나,
갱신하려고 하는데, 방법좀 일러주시면 감사하겠습니다.
2
COMMENTS
이승우
•
2000.08.13 19:42
예를 들어 아래와 같이 teble 이 구성되어 있다면
name type size key
aaa string 1
bbb string 2
ccc string 10
Delete-------------------------
With Query1 do Begin
Sql.add('Delete From Table_Name');
Sql.add('Where aaa = :aaa');
Parambyname('aaa').asstring := edit1.Text;
Execsql;
End;
Update-------------------------
With Query1 do Begin
Sql.add('Update Table_Name');
Sql.add('Set bbb = :bbb, ccc = :ccc');
Sql.add('Where aaa = :aaa');
Parambyname('aaa').asstring := edit1.Text;
Parambyname('bbb').asstring := edit2.Text;
Parambyname('ccc').asstring := edit3.Text;
Execsql;
End;
0
0
삭제
수정
댓글
김계성
•
2000.08.15 12:42
이승우 wrote:
>
> 예를 들어 아래와 같이 teble 이 구성되어 있다면
> name type size key
> aaa string 1
> bbb string 2
> ccc string 10
>
> Delete-------------------------
> With Query1 do Begin
> Sql.add('Delete From Table_Name');
> Sql.add('Where aaa = :aaa');
> Parambyname('aaa').asstring := edit1.Text;
> Execsql;
> End;
> Update-------------------------
> With Query1 do Begin
> Sql.add('Update Table_Name');
> Sql.add('Set bbb = :bbb, ccc = :ccc');
> Sql.add('Where aaa = :aaa');
> Parambyname('aaa').asstring := edit1.Text;
> Parambyname('bbb').asstring := edit2.Text;
> Parambyname('ccc').asstring := edit3.Text;
> Execsql;
> End;
>
위와같이 답변을 주셨는데요...제가 좀 자세히 질문을 드려야 할것 같군여...
일단. 저는 InterBase와 ISQL을 이용해서 프로그램 하구있구여.
IBDataBase, IBTransaction컴퍼넌트를 이용해 서버의 데이타베이스에 접속하고,
DBGrid에 DataSource와 IBDataSet을 연결해서 데이타의 모습을
화면에 계속 보여주는 상탭니다..
그런데 제가 앞선 질문에서 말했듯이, Primary Key를 사용하지 않고
데이터를 선택적으로(즉, DBGrid상에서 레코드를 선택해서 선택한) 레코드를 삭제, 혹은
갱신 작업을 하고 싶습니다.
이승우님께서 주신 답변은 만일 aaa필드에 같은 값이 있으면 모두 한꺼번에 지워져
버리는 결과가 나오게 되지여...ㅠ.ㅠ
ex> Name Phone
홍길동 123-4567
홍서범 234-6789 <---- 동명이인인 이 데이터만을 수정, 삭제
김길동 234-3498
홍서범 767-0009
결과적으로 저는 TTable 컴퍼넌트 처럼 자유로운 레코드 이동과 논리적으로 이동된
레코드에서의 작업을 하고 싶은겁니다.
델파이를 애용하시는 여러분의 고귀한 말씀을 기다립니다.
0
0
삭제
수정
댓글
(NOTICE) You must be
logged in
to comment on this post.
어린왕자
2000.08.14 20:53
0
COMMENTS
/
0
LIKES
진짜 어려운 알고리즘~~...
임병현
•
2000.08.14 20:22
1
COMMENTS
/
0
LIKES
원클릭을 만들어보구싶은데여...힌트 좀 얻을 수 있을까여?
고영국
•
2000.08.14 23:00
RAS 라는 Component가 있는데 이걸 참고 하시면 됩니다. 너무 간단하죠? 설명을 다 하자면 너무 길어서리...
윤수경
•
2000.08.14 20:07
1
COMMENTS
/
0
LIKES
DBGrid의 내용을 SAM 파일로 만드는 방법 좀 갈카주세염...
김영해
•
2000.08.14 20:20
윤수경 wrote: > 며칠 전에 같은 질문 올렸었는데여... ^^; > > 말 그대롭니다... > > DBGrid에 출...
델혀기
2000.08.14 19:48
0
COMMENTS
/
0
LIKES
bde인스톨에 관해...
박원관
2000.08.14 19:43
0
COMMENTS
/
0
LIKES
시험기 VS 프로그램
호야
•
2000.08.14 19:21
1
COMMENTS
/
0
LIKES
다른폼의 함수를 실행하기
parkisu
•
2000.08.15 11:07
호야 wrote: > 메인폼의 메인메뉴에 있는 "다른이름으로 저장"버튼을 누르면 > 서브폼에 있는 SaveDialo...
coolling
•
2000.08.14 19:07
8
COMMENTS
/
0
LIKES
이런 에러는 어떻게 해야 하나요......
coolling
•
2000.08.15 03:39
담배연기
•
2000.08.15 06:43
동참자
•
2001.04.21 02:40
담배연기
•
2000.08.14 21:26
coolling
•
2000.08.14 23:30
담배연기
•
2000.08.15 00:51
coolling
•
2000.08.15 01:47
• • •
사발우성
•
2000.08.14 19:15
1
COMMENTS
/
0
LIKES
스트링그리드에서 고정된 셀들이 삭제됨당......ㅠ.ㅠ 이구 이구 환장 환장 (소스포함)
최용일
•
2000.08.14 19:54
안녕하세요. 최용일입니다. 확실하지는 않은데... 아래와 같이 코딩해보세요... with stringgrid1 do...
이대선
2000.08.14 18:58
0
COMMENTS
/
0
LIKES
질문제목과 분류를 꼭 해주시길 부탁드립니다.
윤미영
•
2000.08.14 18:48
1
COMMENTS
/
0
LIKES
델파이의 화면 단위는 pixel인가요? twip인가요?
이대선
•
2000.08.14 19:00
윤미영 wrote: > 델파이의 화면 단위는 pixel인가요? visual basic은 논리적인 단위로 twip을 쓴다는데요....
윤숭열
2000.08.14 17:35
0
COMMENTS
/
0
LIKES
BLOB Data Down Load시 Progress Bar 사용법좀 알켜주세요?
이승리
•
2000.08.14 08:09
1
COMMENTS
/
0
LIKES
이구문이 무슨말인지요?
최의종
•
2000.08.14 18:14
id에 문자열 s의 '?'의 위치(몇 번째 문자가 ?다..하는 식의)가 들어갑니다.
소루
2000.08.14 07:58
0
COMMENTS
/
0
LIKES
nt 에서 dll path......
푸하하
•
2000.08.14 06:26
1
COMMENTS
/
0
LIKES
데이터베이스에 insert후에 이벤트 핸들러 오동작
이은정
•
2000.08.14 19:46
다른이벤트가 왜 발생하는지는 잘모르겠습니다.. 전에 델파이 3에서 5로 업그래이드할때 저두 폼크리에이...
고진상
2000.08.23 04:24
0
COMMENTS
/
0
LIKES
ADO에서 빈 문자 삽입/날짜와 시간 입력/ADOQuery에서의 복잡한 SQL문 런타임에러
김종석
•
2000.08.13 21:37
1
COMMENTS
/
0
LIKES
급합니다...꼭좀 봐주세요
이선경
•
2000.08.16 22:55
김종석 wrote: > 간단한 어플을 만드는중 희안한 에러에 부딪혔습니다. > 사용DB는 파라독스이며 간단한 ...
고재성
•
2000.08.13 17:48
5
COMMENTS
/
0
LIKES
Informix의 Filed에 Null 이 들어가지 않습니다.
Hoon Reader
•
2000.08.14 05:33
Not NULL로 Field 속성을 설정한걸로 보입니다. Field 속성을 Accept NULL로 설정하세요.
고재성
•
2000.08.14 08:32
Hoon Reader wrote: > Not NULL로 Field 속성을 설정한걸로 보입니다. > Field 속성을 Accept NULL로 설...
성호종
•
2000.08.14 22:33
고재성 wrote: null이 되어야 할 필드에 혹시 '' > Not NULL로 Field 속성을 설정한걸로 보입니다. > >...
고재성
•
2000.08.18 09:34
1. 가르침데로 Informix에서 SQL문으로 Update한 결과는 잘 처리되었습니다. (적용예 1) update A_DB ...
고재성
•
2000.08.15 15:22
처음에는 값을 move하지 않았었습니다. 그런데 not null이 나와서 그 다음에는 성호종님이 지적하신 것...
webcome
•
2000.08.13 15:51
1
COMMENTS
/
0
LIKES
어제까진 됐는데 오늘 뭘 잘못 코딩을 했는지.......
(주)한국인트라넷
•
2000.08.14 10:17
webcome wrote: > 안녕하심... > 어리석은 중생이 또 이렇게 질물을 올립니다. > 다름이 아니오라 > 바...
구경덕
•
2000.08.13 10:34
1
COMMENTS
/
0
LIKES
쿼리에서 저장문제 - 도대체 뭔가뭔지 모르겠네...
임형호
•
2000.08.13 22:45
구경덕 wrote: > 그동안 파빌을 애용하다 델피의 환상적인 인터페이스 디자인에 매료되어 전향(?)한 놈입...
김계성
•
2000.08.13 09:35
2
COMMENTS
/
0
LIKES
SQL의 DELETE나 UPDATE에 관한 질문입니다...
Primary Key 지정이 없는 경우의 DELETE나 UPDATE는 어떻게 해야하는지 궁금합니다. 보통의 Table은 DBGrid에서 레코드를 이동해서 선택된 레코드를 삭제하는데, SQL의 경우는 현재의 레코드 위치를 알고 그 위치의 레코드를 삭제하거나, ...
이승우
•
2000.08.13 19:42
예를 들어 아래와 같이 teble 이 구성되어 있다면 name type size key aaa string 1 bbb stri...
김계성
•
2000.08.15 12:42
이승우 wrote: > > 예를 들어 아래와 같이 teble 이 구성되어 있다면 > name type size key > aaa...
김계성
2000/08/13 09:35
Views
307
Likes
0
Comments
2
Reports
0
Tag List
수정
삭제
목록으로
한델 로그인 하기
로그인 상태 유지
아직 회원이 아니세요? 가입하세요!
암호를 잊어버리셨나요?
예를 들어 아래와 같이 teble 이 구성되어 있다면
name type size key
aaa string 1
bbb string 2
ccc string 10
Delete-------------------------
With Query1 do Begin
Sql.add('Delete From Table_Name');
Sql.add('Where aaa = :aaa');
Parambyname('aaa').asstring := edit1.Text;
Execsql;
End;
Update-------------------------
With Query1 do Begin
Sql.add('Update Table_Name');
Sql.add('Set bbb = :bbb, ccc = :ccc');
Sql.add('Where aaa = :aaa');
Parambyname('aaa').asstring := edit1.Text;
Parambyname('bbb').asstring := edit2.Text;
Parambyname('ccc').asstring := edit3.Text;
Execsql;
End;