Most, if not all of you are aware of this, but I'll post if for archiving
purposes.

Hello,

Windows NT (sp6)
Access 2000 (9.0.3821 SR-1)
Access Driver 4.00.4403.02 (May be slightly outdated (8/8/99))
Perl 5.6.1
DBI 1.1.4
DBD-ODBC 0.28

[
my $sql =
    qq{ (UPDATE $tbl SET "bou_imprim�" = ? WHERE bou_projet = ? )};
                      ### \�
                      ### bou_imprime

my $sth = $dbh->prepare($sql)
    or &debug_Print("Couldn't prepare update statement: $DBI::errstr\n") &&
return(0);

$sth->bind_param(1, $date);
$sth->bind_param(2, $project_no);
]

The first two examples produce the following error...

[
23/04/2002 15:45 Couldn't execute update statement: [Microsoft][ODBC
Microsoft Access Driver] Operation must use an updateable query.
(SQL-S1000)(DBD: st_execute/SQLExecute err=-1)
]

Using a regular english 'e' produces the following error instead..

[
23/04/2002 16:16 Couldn't execute update statement: [Microsoft][ODBC
Microsoft Access Driver] Too few parameters. Expected 3. (SQL-07001)(DBD:
st_execute/SQLExecute err=-1)
]

I thought the error was related to the name of the column (French). Turns
out, the parentheses were the culprit.

[
my $sql =
    qq{ UPDATE $tbl SET bou_imprim� = ? WHERE bou_projet = ? };
]

Works nicely. Thanks to DK, and MH for their examples.

-Robert-

Reply via email to