홈>
테이블에서 여러 값을 선택하려고합니다 .Playlist_generate, 조건을 사용하여 임시 테이블을 만들고 필드를 업데이트하고 내 테이블에 삽입하는 것보다
$data_tabella_duplicata = $_POST['data_duplicata'];
$data_iniziale_originale = $_GET['data_iniziale'];
$query_duplica_playlist = "
DROP TABLE IF EXISTS temp_table;
CREATE TEMPORARY TABLE temp_table LIKE playlist_generate;
SELECT data_playlist, giorno_playlist, orario_playlist, nome_evento,nome_programma FROM playlist_generate WHERE data_playlist = '".$data_iniziale_originale."';
UPDATE temp_table SET data_playlist='".$data_tabella_duplicata."';
INSERT INTO playlist_generate SELECT null,data_playlist, giorno_playlist,orario_playlist, nome_evento, nome_programma FROM temp_table;
DROP TABLE temp_table;
";
$esegui_query_duplica_playlist = $connessione->query($query_duplica_playlist);
if ($connessione->error) {
try {
throw new Exception("MySQL error $connessione->error <br> Query:<br> $query_duplica_playlist", $connessione->errno);
} catch (Exception $e) {
echo "Error No: ".$e->getCode()." - ".$e->getMessage()."<br >";
echo nl2br($e->getTraceAsString());
}
}
하지만 이해할 수없는 오류가 있습니다
와이즈 비즈phpmyadmin에서 코드를 시도하고 작동합니다
이걸 사용하면
Error No: 1064 - MySQL error You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'CREATE TEMPORARY TABLE temp_table LIKE playlist_generate; SELECT data_playlist, ' at line 2
결과가 없습니다
$query_duplica_playlist = "
DROP TABLE IF EXISTS temp_table;
CREATE TEMPORARY TABLE temp_table ENGINE = MEMORY;
SELECT data_playlist, giorno_playlist, orario_playlist, nome_evento,nome_programma FROM playlist_generate WHERE data_playlist = '".$data_iniziale_originale."';
UPDATE temp_table SET data_playlist='".$data_tabella_duplicata."';
INSERT INTO playlist_generate SELECT null,data_playlist, giorno_playlist,orario_playlist, nome_evento, nome_programma FROM temp_table;
DROP TABLE temp_table;
";
$esegui_query_duplica_playlist = $connessione->multi_query($query_duplica_playlist);
- 답변 # 1
- 답변 # 2
모두 감사합니다. 가장 좋은 방법은 더 많은 쿼리를 만드는 것입니다. 감사합니다
multi_query()
// 1 query $query_seleziona_data_controllo = "SELECT data_generata FROM data_generata WHERE data_generata ='".$data_tabella_duplicata."' "; $esegui_query_seleziona_data_controllo = $connessione->query($query_seleziona_data_controllo); $numero_righe_query_controllo = $esegui_query_seleziona_data_controllo->num_rows; if ($numero_righe_query_controllo == 0) { // 2 query $query_duplica_playlist = "INSERT INTO playlist_generate_temp SELECT null,data_playlist, giorno_playlist, orario_playlist, nome_evento,nome_programma FROM playlist_generate WHERE data_playlist = '".$data_iniziale_originale."' "; $esegui_query_duplica_playlist = $connessione->query($query_duplica_playlist); // 3 query $query_update_data_nuova = "UPDATE playlist_generate_temp SET data_playlist='".$data_tabella_duplicata."' WHERE data_playlist = '".$data_iniziale_originale."' "; $esegui_query_update_data_nuova = $connessione->query($query_update_data_nuova); // 4 query $query_inserisci_duplicato = "INSERT INTO playlist_generate SELECT null,data_playlist, giorno_playlist, orario_playlist, nome_evento,nome_programma FROM playlist_generate_temp WHERE data_playlist = '".$data_tabella_duplicata."' "; $esegui_query_inserisci_duplicato = $connessione->query($query_inserisci_duplicato); // 5 query $query_truncate_temp = "TRUNCATE TABLE playlist_generate_temp"; $esegui_query_truncate_temp = $connessione->query($query_truncate_temp); mysqli_close($connessione); } else { echo ""; }
관련 자료
- reactjs - 각 JSON 객체를 필터링하여 사용자 정의 가능한 React Table 생성
- sql - 삽입시 트리거를 만들려고 할 때 다중 부분 식별자 오류
- excel - 다른 통합 문서의 데이터에서 차트를 만들려고 할 때 런타임 오류 9
- sql - 두 날짜 사이의 매초 날짜 테이블 만들기
- postgresql - 오류 - 행이 너무 큽니다 : 크기 xxx, 최대 크기 8160 :pg_policies 테이블 관련
- 특정 행과 열이있는 html 테이블을 만드는 방법
- dataframe - R의 동일한 열에 평균 ± SEM이 포함 된 요약 테이블을 어떻게 생성합니까?
- mysql - 내 테이블 생성 쿼리에 어떤 문제가 있습니까?
- 문자열 열을 사용하여 SQL 테이블을 피벗하는 구문 오류
- sql - 파이썬을 사용하여 psql 데이터베이스에 테이블을 만드는 방법은 무엇입니까?
- powerbi - 데이터 흐름 매핑에서 동적 날짜 테이블을 만들 수 있습니까?
- oracle - PK없이 테이블에서 dblink를 통해 빠른 새로 고침 MV를 만드시겠습니까?
- oracle - 컴파일 오류로 프로 시저 SQL 성공 생성
- mysql - 존재하지 않는 경우 테이블 만들기 vs 같은 테이블 표시
- python - Pandas 데이터 프레임을 사용하여 CSV에서 테이블로 데이터를로드하는 동안 오류가 발생했습니다
- mysql - 특정 날짜 이전의 최신 날짜를 선택하여 두 테이블에서 임시 테이블을 만듭니다
- sql - 테이블 열 이름 및 데이터에서 json 키 값 만들기
- 점이있는 mysql에서 테이블을 만들 수 있습니까?
- sql - Oracle의 테이블 B에 삽입 한 후 테이블 A에 새 행을 추가하기위한 트리거를 생성하는 동안 오류가 발생했습니다
- mysql - 트리거에서 테이블을 만들고 비교
관련 질문
- php : mysql 대형 데이터베이스의 각 행에 대한 임시 공식 계산
- php : SQL에서 두 열을 결합한 다음 결합 된 결과를 기반으로 행 데이터를 선택하는 방법
- php : WooCommerce 제품을 제거하지만 카테고리를 유지합니다
- 치명적인 오류 : 15 행의 C : \ xampp \ htdocs \ done \ test1.php에서 읽기 위해 []를 사용할 수 없습니다.
- 텍스트 상자가 비어 있습니다. SQL 쿼리 및 PHP를 통해 모든 데이터 가져 오기
- cakephp를 사용하여 SQL의 여러 행에서 쉼표로 구분 된 날짜 가져 오기
- php : SQL, LAST_INSERT_ID ()에 의해 마지막 삽입 ID를 선택합니다. [복제] [복제]
- sql : 테이블의 모든 열을 나열하려면 어떻게합니까?
- mysql : 선택 쿼리에서 백틱을 사용할 때 SQL 쿼리가 테이블 데이터를 반환하는 이유는 무엇입니까?
- onclick 메서드가 PHP에서 작동하지 않는 버튼
문서에서-
와이즈 비즈또한 한 번에 여러 개의 쿼리를 실행하려고하는 것 같습니다. MySQLi를 사용하는 경우
를 사용하고 싶을 것입니다 .multi_query()
사용 , 특히이상적이지 않은과 같은 상황에서이 기능을 사용하려는 경우 논리를 신중하게 고려하십시오.