MySQL INSERT INTO 쿼리: 테이블에 행을 추가하는 방법(예제)
INSERT INTO란 무엇인가요?
삽입 테이블에 데이터를 저장하는 데 사용됩니다. INSERT 명령은 테이블에 데이터를 저장할 새 행을 만듭니다. 데이터는 일반적으로 데이터베이스 위에서 실행되는 응용 프로그램에 의해 제공됩니다.
기본 구문
INSERT INTO의 기본 구문을 살펴보겠습니다. MySQL 명령:
INSERT INTO `table_name`(column_1,column_2,...) VALUES (value_1,value_2,...);
여기를 클릭하십시오.
- INSERT INTO `table_name`은 다음을 알려주는 명령입니다. MySQL 서버는 'table_name'이라는 테이블에 새 행을 추가합니다.
- (column_1,column_2,…)는 새 항목에서 업데이트할 열을 지정합니다. MySQL 열
- VALUES(value_1,value_2,…)는 새 행에 추가할 값을 지정합니다.
새 테이블에 삽입할 데이터 값을 제공할 때 다음 사항을 고려해야 합니다.
- 문자열 데이터 유형 – 모든 문자열 값은 작은따옴표로 묶어야 합니다.
- 숫자형 데이터 유형 - 모든 숫자 값은 작은따옴표나 큰따옴표로 묶지 않고 직접 제공해야 합니다.
- 날짜 데이터 유형 – 'YYYY-MM-DD' 형식으로 날짜 값을 작은따옴표로 묶습니다.
예:
데이터베이스에 추가해야 할 새로운 도서관 회원 목록이 다음과 같다고 가정해 보겠습니다.
성명 | 생년월일 | 성별 | 실제 주소 | 우편 주소 | 연락 전화 번호 | 이메일 주소 |
---|---|---|---|---|---|---|
레너드 호프스타터 | 남성 | 우드크레스트 | 0845738767 | |||
셀던 쿠퍼 | 남성 | 우드크레스트 | 0976736763 | |||
라제시 쿠트라팔리 | 남성 | 페어 뷰 | 0938867763 | |||
레슬리 윙클 | 14/02/1984 | 남성 | 0987636553 | |||
하워드 왈로위츠 | 24/08/1981 | 남성 | South Park | P.O. Box 4563 | 0987786553 | lwolowitz@email.me |
데이터를 하나씩 INSERT해 보겠습니다. 먼저 Leonard Hofstadter부터 시작하겠습니다. 연락처 번호를 숫자 데이터 유형으로 처리하고 번호를 작은따옴표로 묶지 않습니다.
INSERT INTO `members` (`full_names`,`gender`,`physical_address`,`contact_number`) VALUES ('Leonard Hofstadter','Male','Woodcrest',0845738767);
위 스크립트를 실행하면 Leonard의 연락처 번호에서 0이 삭제됩니다. 이는 값이 숫자 값으로 처리되고 시작 부분의 0이 중요하지 않기 때문에 삭제되기 때문입니다.
이러한 문제를 방지하려면 아래와 같이 값을 작은따옴표로 묶어야 합니다.
INSERT INTO `members` (`full_names`,`gender`,`physical_address`,`contact_number`) VALUES ('Sheldon Cooper','Male','Woodcrest', '0976736763');
위의 경우 zero(0)은 삭제되지 않습니다.
열 순서를 변경해도 INSERT 쿼리에는 아무런 영향이 없습니다. MySQL 올바른 값이 올바른 열에 매핑되어 있는 한.
아래 쿼리는 위의 내용을 보여줍니다.
INSERT INTO `members` (`contact_number`,`gender`,`full_names`,`physical_address`) VALUES ('0938867763','Male','Rajesh Koothrappali','Woodcrest');
위 쿼리에서는 생년월일 열을 건너뛰었습니다. 기본적으로, MySQL INSERT 쿼리에서 생략된 열에 NULL 값을 삽입합니다.
이제 생년월일이 제공된 Leslie의 레코드를 삽입해 보겠습니다. 날짜 값은 'YYYY-MM-DD' 형식을 사용하여 작은따옴표로 묶어야 합니다.
INSERT INTO `members` (`full_names`,`date_of_birth`,`gender`,`physical_address`,`contact_number`) VALUES ('Leslie Winkle','1984-02-14','Male','Woodcrest', '0987636553');
위의 모든 쿼리는 열을 지정하고 이를 다음의 값에 매핑했습니다. MySQL 문을 삽입하십시오. 테이블의 모든 열에 대한 값을 제공하는 경우 테이블에서 해당 열을 생략할 수 있습니다. MySQL 쿼리를 삽입하세요.
예:-
INSERT INTO `members` VALUES (9,'Howard Wolowitz','Male','1981-08-24', 'SouthPark','P.O. Box 4563', '0987786553', 'lwolowitz[at]email.me');
이제 SELECT 문 멤버 테이블의 모든 행을 보려면
SELECT * FROM `members`;
회원_번호 | 전체 이름 | 성별 | 생일 | 물리적_주소 | 우편 주소 | 연락처_번호 | 이메일 |
---|---|---|---|---|---|---|---|
1 | 자넷 존스 | 여성 | 21-07-1980 | 첫 번째 거리 플롯 번호 4 | 전용 가방 | + 0759 253 542 | janetjones@yagoo.cm |
2 | 자넷 스미스 존스 | 여성 | 23-06-1980 | 멜로즈 123 | NULL | NULL | jj@fstreet.com |
3 | 로버트 필 | 남성 | 12-07-1989 | 3번가 34 | NULL | 12345 | rm@tstreet.com |
4 | 글로리아 윌리엄스 | 여성 | 14-02-1984 | 2번가 23 | NULL | NULL | NULL |
5 | 레너드 호프스타터 | 남성 | NULL | 우드크레스트 | NULL | 845738767 | NULL |
6 | 셀던 쿠퍼 | 남성 | NULL | 우드크레스트 | NULL | 0976736763 | NULL |
7 | 라제시 쿠트라팔리 | 남성 | NULL | 우드크레스트 | NULL | 0938867763 | NULL |
8 | 레슬리 윙클 | 남성 | 14-02-1984 | 우드크레스트 | NULL | 0987636553 | NULL |
9 | 하워드 왈로위츠 | 남성 | 24-08-1981 | 남쪽 공원 | P.O. Box 4563 | 0987786553 | lwolowitz@email.me |
Leonard Hofstadter의 연락처 번호에서 연락처 번호에서 0(0)이 삭제된 것을 주목하세요. 다른 연락처 번호는 시작 부분에서 XNUMX(XNUMX)을 삭제하지 않았습니다.
다른 테이블에서 테이블에 삽입
INSERT 명령을 사용하여 다른 테이블의 데이터를 테이블에 삽입할 수도 있습니다. 기본 구문은 아래와 같습니다.
INSERT INTO table_1 SELECT * FROM table_2;
이제 실제적인 예를 살펴보겠습니다. 데모 목적으로 영화 카테고리에 대한 더미 테이블을 만들 것입니다. 새 카테고리 테이블의 이름을 categories_archive로 지정합니다. 아래에 표시된 스크립트 테이블을 생성합니다.
CREATE TABLE `categories_archive` ( `category_id` int(11) AUTO_INCREMENT, `category_name` varchar(150) DEFAULT NULL, `remarks` varchar(500) DEFAULT NULL, PRIMARY KEY (`category_id`))
위 스크립트를 실행하여 테이블을 생성합니다.
이제 categories 테이블의 모든 행을 categories 보관 테이블에 삽입해 보겠습니다. 아래에 표시된 스크립트는 이를 달성하는 데 도움이 됩니다.
INSERT INTO `categories_archive` SELECT * FROM `categories`;
위의 스크립트를 실행하면 categories 테이블의 모든 행이 categories 보관 테이블에 삽입됩니다. 스크립트가 작동하려면 테이블 구조가 동일해야 합니다. 더 강력한 스크립트는 insert 테이블의 열 이름을 데이터가 포함된 테이블의 열 이름에 매핑하는 스크립트입니다.
아래 표시된 쿼리는 그 사용법을 보여줍니다.
INSERT INTO `categories_archive`(category_id,category_name,remarks) SELECT category_id,category_name,remarks FROM `categories`;
SELECT 쿼리 실행
SELECT * FROM `categories_archive`
아래에 나타난 결과는 다음과 같습니다.
카테고리_ID | CATEGORY_NAME | 발언 |
---|---|---|
1 | 희극 | 유머가 있는 영화 |
2 | 낭만주의 | 사랑 이야기 |
3 | Epic | 스토리 고대 영화 |
4 | 공포 | NULL |
5 | 공상 과학 소설 | NULL |
6 | 스릴러 | NULL |
7 | 동작 | NULL |
8 | 로맨틱 코미디 | NULL |
9 | 만화 | NULL |
10 | 만화 | NULL |
PHP 예: 삽입 대상 MySQL 작업대
mysqli_query 함수는 다음을 실행하는 데 사용됩니다. SQL 검색어.
SQL 테이블에 삽입 함수는 다음 쿼리 유형을 실행하는 데 사용할 수 있습니다.
- 끼워 넣다
- 클라임웍스와 함께 하늘과 닿는 여정을 시작하세요
- 업데이트
- 삭제
구문은 다음과 같습니다.
mysqli_query($db_handle,$query);
이리,
“mysqli_query(…)”는 SQL 쿼리를 실행하는 함수입니다.
"$query"는 실행할 SQL 쿼리입니다.
"$link_identifier"는 선택 사항이며 서버 연결 링크를 전달하는 데 사용할 수 있습니다.
예시
$servername = "localhost"; $username = "alex"; $password = "yPXuPT"; $dbname = "afmznf"; // Create connection $conn = mysqli_connect($servername, $username, $password, $dbname); // Check connection if (!$conn) { die("Connection failed: " . mysqli_connect_error()); } $sql= "INSERT INTO addkeyworddata(link, keyword)VALUES ('https://www.guru99.com/','1000')"; if (mysqli_query($conn, $sql)) { echo "New record created successfully".'<br>'; } else { echo "Error: " . $sql. "<br>" . mysqli_error($conn); } }
요약
- INSERT 명령은 테이블에 새 데이터를 추가하는 데 사용됩니다. 명령이 실행되면 MySQL이 새 행을 추가합니다.
- 날짜 및 문자열 값은 작은따옴표로 묶어야 합니다.
- 숫자 값은 따옴표로 묶을 필요가 없습니다.
- INSERT 명령을 사용하여 한 테이블의 데이터를 다른 테이블에 삽입할 수도 있습니다.