2015-01-24 2 views
1

나는 속성과 '등록'라는 이름의 테이블이 있습니다SQL 테이블에서 Null 값을 업데이트하는 방법은 무엇입니까?

student_id | section | enroll_num  
      | T4 |  1  
      | T6 |  2 
      | L2 |  3         

enroll_num는 기본 키 및 그 아래의 코드로 '섹션'필드에 작성 다른 테이블에서 값을 사용했다. 그리고 student_id는 비워 둡니다. 어떻게 NULL student_id 필드를 채우는가 또는 'section'값이 삽입 될 때 student_id를 동시에 채울 방법이 있습니까?

if(isset($_POST['add2'])) 
{ 
$group = $_POST['group']; 
$id = $_POST['id']; 

$sql = "INSERT INTO enroll (section) 
    SELECT section FROM info3 WHERE group_no LIKE '%$group%'";  

if (mysqli_query($conn, $sql)) 
{ 
echo "Successfully inserted"; 
} 
else 
{... 

나는 충분히보고하고 시도 -

$sql2 = "UPDATE enroll SET student_id ='$id' WHERE student_id IS NULL"; 

을하지만 그것은 작동하지 않습니다.

+0

중복 가능성 [MySQL은 초기 값 및 자동 증가를 설정하는 방법?] (http://stackoverflow.com/questions/1485668/how-to-set-initial-value-and-auto-increment -in-mysql) – Ben

답변

0

삽입 쿼리 내에서 student_id를 삽입 할 수 있다고 생각합니다. 여기서는 선택 쿼리에 student_id ($ id)를 추가해야합니다.

$sql = "INSERT INTO enroll (student_id, section) 
     SELECT $id, section FROM info3 WHERE group_no LIKE '%$group%'"; 
+0

나는 너에게 포옹을 줄 수 있길 바란다. 내 하루를 구했다. 완벽하게 일했습니다. –

+0

@HasanPeeal, 형님, 고마워요. 좋은 시간 되세요. :) – fortune

0

id 속성은 처음에는 NULL이 아니어야하며, 해당 데이터베이스 레코드 (행)에 대한 고유 식별자입니다.

하지만 고유 한 것으로 보이는이 테이블을 enroll_num으로 업데이트 할 수 있습니까?

"UPDATE enroll SET student_id ='$id' WHERE enroll_num = '$enroll_num'"; 
관련 문제