在sql语句中,password是不是保留字啊,因为小弟在一张表里建立一个字段为Password,然后下列语句出错:
Update PeopdomTable Set Password = "12345" Where UserID = "wang"。
报错是:Update语句语法错误。
后来,我把字段名字给改了,就可以通过了。在此想问:这个password是不是在sql语句中有什么特殊用途?谢谢!

解决方案 »

  1.   

    Update PeopdomTable Set [Password] = "12345" Where [UserID] = "wang"这样不怕遇到关键字了。
      

  2.   

    Password当然是关键字了,一般情况下如果你不怕麻烦,用[]把你的字段名啦,表名啦,存储过程名啦什么的斗括起来
      

  3.   

    不是sql的关键字。我很久以前也碰到过。ado访问数据库用,odbc连接没事的程序,换了ole db提供者连接,就是改了连接字符串,就报错。有一个字段名user,改了就好了。可能是ole db提供者的关键字。
      

  4.   

    下面的列表中包含了Microsoft Jet 数据库引擎在 SQL 语句中使用的所有保留字 。列表中的字,若不是全部大写,也被其它应用程序所保留。所以,这些保留字的个别帮助主题所提供的一般描述并不专注于 SQL 的用法。注意  跟着一星号 * 的词是被保留的,但是当前在 Microsoft Jet SQL 语句的范畴内并没有意义(例如,Level 和 TableID)。AADD ALL Alphanumeric  And  ANY AS ASC AUTOINCREMENTB-CBetween BINARY BIT BOOLEAN CHAR,CHARACTER COLUMN CONSTRAINT Count COUNTERCREATE CURRENCY DDATABASE DATE DATETIME DELETE DESC DISALLOW DISTINCT DISTINCTROW DOUBLE  DROP E-HEqv EXISTS FLOAT FROM GENERAL GROUP GUID HAVINGI
    IEEEDOUBLE IEEESINGLE IGNORE Imp In IN INDEX INNER INSERT INT,INTEGER,INTEGER4 INTEGER2 J-MJOIN KEY LEFT Level Like LOGICAL,LOGICAL1 LONGBINARY LONGTEXT Max MEMO MONEYN-PNot NULL NUMBER   NUMERIC   OLEOBJECT On OPTION Or ORDER Outer OWNERACCESS PARAMETERS PERCENT PIVOT PRIMARY PROCEDURE Q-SREAL REFERENCES RIGHT SELECT SET SHORT SINGLE SMALLINT SOME StDev StDevP STRING T-ZTABLE TableID TEXT TIME TIMESTAMP TOP TRANSFORM UNION UNIQUE UPDATE VALUE VALUES Var VARBINARY VARCHAR VarP WHERE WITH Xor YESNO
      

  5.   

    Update PeopdomTable Set [Password] = '12345' Where [UserID] = 'wang'