0

次のコードを使用して、codeigniter から挿入クエリを実行しようとしています

$this->db->query($query);

しかし、私は次のエラーが発生しています:

エラー番号: 1064

SQL 構文にエラーがあります。4行目のnear ''を使用する正しい構文については、MySQLサーバーのバージョンに対応するマニュアルを確認してください

INSERT INTO order_bank 
    (creation_date, order_type, so_no, 
    material_no, description, order_qty, no_of_panels, 
    division, job_number, customer_group, sales_office, 
    sales_group, project_name, project_manager, 
    net_value_myr, credit_status, so_delivery_date, 
    order_delivery_date) 
VALUES ( '2013-07-01', 'ZTOR', 3058627219, 
    101900000000, 'SUPPLY, MODIFY, INSTALL TEST VCU', 
    1, 0, 'AIS (TSM)', 'SC139203J01', 'Industry', 
    'SEA', 'DOM', 'MELAKA', 
    'Phua Tiang Hai', 42954.55, '', '2013-07-11', 
    '2013-07-05');

ファイル名: C:\wamp\www\system\database\DB_driver.php
行番号: 330

しかし、phpmyadmin で上記のクエリを実行すると、完全に機能します。問題を整理するのを手伝ってください

4

4 に答える 4

4

Codeigniter が提供するアクティブ レコードを使用すると、はるかに安全で簡単になります。

http://ellislab.com/codeigniter/user-guide/database/active_record.html

例:-

$this->db->set('description', $description);
$this->db->set('order_qty', $order_qty);
$this->db->set('no_of_panels', $no_of_panels);
$this->db->set('division', $division);
$this->db->set('job_number', $job_number);
$this->db->set('customer_group', $customer_group);
$this->db->set('sales_office', $sales_office);
$this->db->set('sales_group', $sales_group);
$this->db->set('project_name', $project_name);
$this->db->set('project_manager', $project_manager);
$this->db->set('net_value_myr', $net_value_myr);
$this->db->set('credit_status', $credit_status);
$this->db->set('so_delivery_date', $so_delivery_date);
$this->db->set('order_delivery_date', $order_delivery_date);
$this->db->insert('order_bank');

または、データが配列に格納されている場合は、実行するだけで実行できます

$this->db->insert('order_bank', $data);
于 2013-08-15T09:56:49.377 に答える
2

コントローラークラスまたは自動ロードファイルにデータベースライブラリをロードする必要があります。

オートロード ファイル内:

$autoload['libraries'] = array('database');

またはコントローラークラスで:

$this->load->library("database");
于 2013-08-16T07:00:17.090 に答える
0

42954.55 は「42954.55」でなければなりません。これは質問とは関係がないため、アクティブなレコードの例を無視します。これが、このクエリが失敗する理由です。

于 2013-08-15T10:48:13.423 に答える