📜  在 ci 中插入查询 - SQL (1)

📅  最后修改于: 2023-12-03 15:23:07.782000             🧑  作者: Mango

在 CI 中插入查询 - SQL

CodeIgniter (简称CI)是一个流行的 PHP 框架,广泛用于开发 Web 应用程序。在 CodeIgniter 中,执行 SQL 查询是非常常见的操作。本文将介绍如何在 CodeIgniter 中插入查询。

插入查询

CodeIgniter 中可以使用 $this->db->insert() 函数来执行插入查询。下面是该函数的语法:

$this->db->insert($table, $data);

$table 是要插入数据的表名,$data 是包含要插入的数据的数组。例如:

$data = [
    'title' => 'CodeIgniter Tutorial',
    'author' => 'John Doe',
    'body' => 'This is a tutorial on how to use CodeIgniter.'
];

$this->db->insert('articles', $data);

上面的代码将在 articles 表中插入一条新的记录。

$this->db->insert() 函数会返回一个布尔值,表示插入操作是否成功。如果插入成功,将返回 TRUE,否则返回 FALSE

执行带有占位符的插入查询

在实际应用中,我们通常希望使用占位符来插入数据,以避免 SQL 注入攻击。CodeIgniter 支持使用占位符,例如:

$sql = "INSERT INTO mytable (title, content) VALUES (?, ?)";
$this->db->query($sql, array('My title', 'My content'));

在上面的代码中,? 是占位符,数组中的值将替换占位符并插入到 /mytable 表中。

返回自增 ID

如果表定义了自增 ID 字段,并且要获取刚刚插入的 ID,请使用 $this->db->insert_id() 方法。例如:

$data = [
    'title' => 'CodeIgniter Tutorial',
    'author' => 'John Doe',
    'body' => 'This is a tutorial on how to use CodeIgniter.'
];

$this->db->insert('articles', $data);
$insert_id = $this->db->insert_id();

上面的代码将在 articles 表中插入一条新的记录,并将自增 ID 存储在 $insert_id 变量中。

结论

在 CodeIgniter 中执行插入查询是非常简单的。我们可以使用 $this->db->insert()$this->db->insert_id() 方法来插入记录和获取刚刚插入的 ID。同时,我们也可以使用占位符来保护我们的应用免受 SQL 注入攻击。