【问题标题】:Error ODBC MS SQL错误 ODBC MS SQL
【发布时间】:2013-02-20 06:28:28
【问题描述】:

我收到了这个错误

Warning: odbc_exec() [function.odbc-exec]: SQL error: [Microsoft][ODBC SQL Server Driver][SQL Server]Incorrect syntax near ''., SQL state 37000 in SQLExecDirect in D:\wamp\www\STAPP\sys_admin\1.php on line 23

Warning: odbc_exec() [function.odbc-exec]: SQL error: [Microsoft][ODBC SQL Server Driver][SQL Server]Incorrect syntax near ''., SQL state 37000 in SQLExecDirect in D:\wamp\www\STAPP\sys_admin\1.php on line 23


<?php

require_once("../includes/database_connection.php");
$conn=odbc_connect('stapp','','');

if ( isset( $_FILES['userfile'] ) )
{
$csv_file = $_FILES['userfile']['tmp_name'];

if ( ! is_file( $csv_file ) )
exit('File not found.');

$sql = '';

if (($handle = fopen( $csv_file, "r")) !== FALSE)
{
  while (($data = fgetcsv($handle, 1000, ",")) !== FALSE)
  {


$sql = "INSERT INTO `table` SET `column0` = '$data[0]',

`column1`=            '$data[1]', `column2` = '$data[2]';";

   $rs1=odbc_exec($conn,$sql);

  }
  fclose($handle);
}

// Insert into database

//exit( $sql );
exit( "Complete!" );
}
?>

第 23 行是 $rs1=odbc_exec($conn,$sql);

谁能帮我写sql语句

【问题讨论】:

    标签: php mysql sql sql-server odbc


    【解决方案1】:

    插入记录的SET方式不是标准SQL。最好采用标准方式

    INSERT into table (column0, column1, column2) values 
    ('$data[0]', '$data[1]', '$data[2]');
    

    【讨论】:

    • 哦,我忘了SET 用于mysql 而不是mssql。 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-24
    • 2020-07-16
    • 1970-01-01
    • 1970-01-01
    • 2013-11-30
    • 1970-01-01
    相关资源
    最近更新 更多