반응형
2 개의 테이블이 있습니다.
대학
:
university_id(p.k) | university_name
및 사용자
:
uid | name | university_id(f.k)
사용자 테이블에서 university_id
NULL 을 유지하는 방법은 무엇입니까?
하나의 쿼리 만 작성하고 있습니다. 내 쿼리는 다음과 같습니다.
INSERT INTO user (name, university_id) VALUES ($name, $university_id);
여기서 $ university_id
는 프런트 엔드에서 null 일 수 있습니다.
university
테이블은 기본적으로 설정됩니다.
프런트 엔드에서 학생은 university_id
가 user
테이블에 전달된다는 것에 따라 대학 이름을 선택하지만 학생이 대학 이름을 선택하지 않으면 통과해야합니다. university_id
필드의 user
테이블에 null 값이 있습니다.
해결 방법
user
테이블의 university_id
열에서 NULL
값을 허용하면 null 을 저장할 수 있습니다.
CREATE TABLE user
(
uid INT NOT NULL,
Name VARCHAR(30) NOT NULL,
university_ID INT NULL, -- <<== this will allow field to accept NULL
CONSTRAINT user_fk FOREIGN KEY (university_ID)
REFERENCES university(university_ID)
)
업데이트 1
댓글에 따라 ''
가 아닌 NULL
을 삽입해야합니다.
insert into user (name,university_id) values ('harjeet', NULL)
업데이트 2
$university_id = !empty($university_id) ? "'$university_id'" : "NULL";
insert into user (name,university_id) values ('harjeet', $university_id);
참조 페이지 https://stackoverflow.com/questions/15082874
반응형
'MySql' 카테고리의 다른 글
MySQL 데이터 프레임에서 RMySQL에 삽입 (0) | 2021.01.11 |
---|---|
MySQL 사이트 루트 외부에있는 파일에 어떻게 액세스합니까? (0) | 2021.01.10 |
MySQL Apache Solr를 mysql과 연결하는 방법 (0) | 2021.01.10 |
MySQL PHP와 MySQL-소스 코드에서 비밀번호를 피하는 방법? (0) | 2021.01.10 |
MySQL에서 하위 쿼리를 조인으로 바꾸기 (0) | 2021.01.10 |
댓글