我使用CodeIgniter在php中插入一个新的记录到Oracle表。代码如下:
public function insert_street_file( $insdata = null )
{
if ($insdata == null)
{
// return false;
}
else
{
$insdata = array(
'NAME'=>"Eray",
'SURNAME'=>"BAlk",
'CITY'=>"HALIFAX",
'PROVINCE'=>"NS",
'LSTNOLO'=>1,
'LSTNOHI'=>2,
'RSTNOLO'=>3,
'RSTNOHI'=>4,
'POSTCODE'=>"b3h1s8",
'POSTDIR'=>"1s8",
'PREDIR'=>"b3h",
'STR_CODE'=>30002
);
$results =$this->oracle_db->insert("$this->street_file_table_name", $insdata);
return $results;
,我得到下面的错误:
Error Number:
INSERT
INTO People
("NAME", "SURNAME", CITY", "PROVINCE", "LSTNOLO", "LSTNOHI",
"RSTNOLO", "RSTNOHI", "POSTCODE", "POSTDIR", "PREDIR", "STR_CODE")
VALUES ('Eray', 'Balk', 'Halifax', 'NS', 1, 2,
3, 4, 'b3h1s8', '1s8', 'b3h', 30002)
Filename: C:'inetpub'ci-2-1-3-system'database'DB_driver.php
Line Number: 330
- 没有指定错误号,所以我不知道到底是什么问题。
- 数据库连接提供,任何选择查询工作良好。
- $this->street_file_table_name值是正确的
- 列名在Oracle数据库中也是大写的。所有的列名和表名都是正确的。
如果你能帮我解决这个问题,我将不胜感激。
编辑:缺少的引号是打字错误。这不是真正的问题。
语法错误。Appostrophe失踪使用
'NAME'=>"Eray",
不是'NAME=>"Eray",