while($row = $stmh->fetch(PDO::FETCH_ASSOC)) { 이 코드가 두번째는 실행이 안되는 이유는?
PHP에서 PDOStatement 객체의 fetch() 메서드는 데이터베이스에서 반환된 결과 집합(result set)을 한 번 읽을 때마다 포인터를 한 단계 이동시킵니다. 따라서 첫 번째 while 루프에서 데이터를 모두 읽으면, 포인터가 끝으로 이동하게 되어 이후의 while($row = $stmh->fetch(PDO::FETCH_ASSOC)) 루프에서는 더 이상 읽을 데이터가 없기 때문에 실행되지 않습니다.문제 원인$stmh->fetch() 메서드는 내부적으로 커서를 이동시키면서 데이터를 반환합니다. 데이터는 한 번 읽으면 다시 읽을 수 없으므로 두 번째 while 문에서는 결과가 비어 있게 됩니다.해결 방법결과 집합을 재사용하거나 두 번 반복하려면 아래 방법 중 하나를 선택할 수 있습니다.1. 첫..
IT tech Coding/php
2024. 11. 25. 13:33
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 엑셀셀보호
- sql문장 날짜계산
- 오토핫키가이드
- 뫄프로그래밍
- #InstallForge
- coalesce는 한국어로 "코얼레스크" 또는 "코얼리스"
- 스크립트작성기초
- 티스토리챌린지
- General error: 2031
- #파이썬인스톨러
- 파이썬코드줄바꿈방법
- #InnoSetup
- #cx_Freeze
- Bootstrap 5
- 오블완
- 테크에능한여성
- 엑셀입력보호
- 프로그래머생활
- 엑셀보호
- 코딩효율성
- 2분후종료오토핫키
- 효율적코딩방법
- #파이썬패키징
- #프로그램설치
- 구글드라이브API
- chatGPT3.5파이썬버전
- #NSIS
- #독립실행파일
- #소프트웨어배포
- 코딩튜토리얼
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함