Not sure about other RDBMs but Oracle allows:
create table nonos("date" date, "More bad things" varchar2(20));
but the columns with 'bad' name can only be accessed the same way ie
select "date", "More bad things"
from nonos;"Karyn Ulriksen" <[EMAIL PROTECTED]> wrote in message [EMAIL PROTECTED]">news:[EMAIL PROTECTED]... > The 'date' keyword issue usually occurs at the database level. Most SQL > databases I have worked with wont even allow you to create a field with this > name. It's possible that DBI does a "sanity check" on some of the keywork > fields. The feedback on this issue should be interesting... > > K > > -----Original Message----- > From: robert pimentel [mailto:[EMAIL PROTECTED]] > Sent: Friday, April 19, 2002 12:17 PM > To: [EMAIL PROTECTED] > Subject: Keyword "date" instigating error > > > 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 > > > The following error occurs when I attempt an insert... > > [ > Couldn't execute insert statement: [Microsoft][ODBC Microsoft Access Driver] > Syntax error in INSERT INTO statement. (SQL-37000)(DBD: > st_execute/SQLExecute err=-1) > ] > > I found the problem is tied to the "date" field. Here's a snippet... > > [ > my $sth = $dbh->prepare("INSERT into $tbl (employe, project_no, po, > etiq_inv, date) VALUES (?, ?, ?, ?, ?)") > or &debug_Print("Couldn't prepare insert statement: $DBI::errstr\n") && > return(0); > > $sth->bind_param(1, $employe); > $sth->bind_param(2, $project_no); > $sth->bind_param(3, $po); > $sth->bind_param(4, $invent); > $sth->bind_param(5, $date); ### , {TYPE => SQL_DATE}); > ] > > Notice the column name in the table is named 'date'. I think that's where > the conflict exists. > I've tried passing my values in the execute ($employe, $project_no, etc), > because that will essentially bind them for me. Same result. > As you can see, I also tried defining the SQL datatype, no luck. > I also tried using an alternate name for my var ($date2) in case that was > the problem. > > 1) Any ideas? > > Quick, second, unrelated question :) > > 2) I mostly use 'qq' before preparing my statements. Unnecessary, when > using bound parameters correct? Is there risk involved, or is it simply > overkill?? > > [ > my $sql = qq{ (INSERT into $tbl (employe, project_no) VALUES (?, ?))}; > my $sth = $dbh->prepare($sql) > ....... > ] > > Thanks, > > -R- >
