es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Se produjo un error en la base de datos. Inserte datos desde la opción de selección de código igniter.

Estoy agregando datos de campo desde otra tabla, pongo los datos en la opción de selección. Quiero guardarlo pero hay un error en la base de datos “nik = null”.

Este es mi error:

La columna ‘nik’ no puede ser nula

INSERT INTO `tbl_kotak` (`nik`, `nama_kotak`, `lokasi`) VALUES (NULL, 'GM 1.3', 'Garment 1')

Mi Controlador:

function tambahaksi()
{
    $nik = $this->input->post('nik');
    $nama_kotak = $this->input->post('nama_kotak');
    $lokasi = $this->input->post('lokasi');

    $data = array(
        'nik' => $nik,
        'nama_kotak' => $nama_kotak,
        'lokasi' => $lokasi
    );

    $this->m_kotak->input_data($data, 'tbl_kotak');

    redirect('kotak/index');
}

Mi Modelo:

function get_pic(){
    $this->db->order_by('nik','asc');
    return $this->db->from('tbl_karyawan')
            ->get()
            ->result();
}

Gracias.

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Parece que estás intentando insertar un registro en la tabla tbl_kotak con un valor nulo para la columna nik, lo cual no está permitido según el mensaje de error que recibiste. Esto podría estar ocurriendo porque el valor nik que intentas insertar no está siendo pasado correctamente al controlador.

    En tu función de controlador tambah_aksi(), estás obteniendo el valor nik usando $this->input->post('nik'). Asegúrate de que el valor nik esté siendo pasado correctamente desde el formulario de la vista a esta función de controlador.

    Alternativamente, podrías modificar la tabla tbl_kotak para permitir valores nulos en la columna nik mediante la siguiente declaración SQL:

    ALTER TABLE tbl_kotak MODIFY COLUMN nik INT NULL;
    

    Sin embargo, esta podría no ser la mejor solución para tu caso de uso, ya que es probable que la columna nik tenga una restricción de clave externa con otra tabla. En ese caso, debes asegurarte de que el valor nik esté siendo pasado correctamente a la función de controlador.

    Espero que esto ayude a identificar y resolver el problema. Avísame si tienes alguna otra pregunta o inquietud.

Comments are closed.