sql insert语句中的getdate()和newid()

时间:2016-01-15 04:07:09

标签: php mysql codeigniter

我正在尝试获取getdate()和newid()值并将其插入数据库。

然而,它会检测到" getdate()"和" newid()"作为插入数据库的值。

Sql语句:

$sql="insert into product_detail_image (item_id,detail_image_name,created_on,created_by,guid) 
                values ('".$item_id."','".$name."',getdate(),'".$this->session->userdata('username')."',NEWID())";

结果 这存储在数据库中 ' 4548736020191' ' 505b274eb69d4b781eddea0ec2514f8b.jpg' GetDate()'' NEWID()

我想要的GetDate()值是2015-12-23 14:45:59.330,NEWID()是1B7C352A-F46F-45C7-B2F2-697F8200409E。 我该如何改变呢?

3 个答案:

答案 0 :(得分:0)

请尝试在报价之外放置getdate()和newid()。

答案 1 :(得分:0)

试试这个

# Instead of getdate use date
# Best for Time Stamp
$date = date('H:i:s dd/mm/YY');

# Make sure session library is Loaded.
$createdBy = $this->session->userdata('username');

# NEWID is not an function in php and Codeigniter
# So i'm removing it from below array.

所以最终插入数组是

$data = array(
   'item_id'            => $item_id,
   'detail_image_name'  => $name,
   'created_on'         => $date,
   'created_by'         => $createdBy
);

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

答案 2 :(得分:0)

使用以下代码。它会起作用。

... + facet_grid(hospital ~ ., labeller = as_labeller(hospital_names))