NULL di Foreign Key

Terkadang kita memiliki FK yang tidak wajib diisi, seperti contoh kasus berikut :

Setiap sales tidak selalu memiliki atasan. Bagaimana agar FK kita bisa NULL ? caranya mudah, tinggal kita perbolehkan saja, FK kita (yaitu kode_atasan agar defaultnya adalah NULL.

DDL tabel diatas adalah sebagai berikut :

CREATE TABLE IF NOT EXISTS `t_sales` (

`kode_sales` int(11) NOT NULL AUTO_INCREMENT,

`nama_sales` text NOT NULL,

`kode_unit_sales` int(11) NOT NULL,

`kode_atasan` int(11) DEFAULT NULL,

`email` varchar(100) DEFAULT NULL,

`no_hp` varchar(15) DEFAULT NULL,

`is_deleted` int(1) DEFAULT '0',

PRIMARY KEY (`kode_sales`),

KEY `t_sales_kode_atasan_t_sales_kode_sales` (`kode_atasan`)

) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

ALTER TABLE t_sales ADD CONSTRAINT t_sales_kode_atasan_t_sales_kode_sales FOREIGN KEY (kode_atasan) REFERENCES t_sales(kode_sales);

Bagaimana proses insert/update nya jika menggunakan Doctrine 1.x ?, Sahabat bisa membacanya di sini.