日期:2014-05-19  浏览次数:20451 次

SQL SERVER2005的一个奇怪问题,急,急,急!!!!!
我自己写了个Web   service,用的是SQL   SERVER2005数据库,然而当我新建另一个数据库后,把Web   service中的与数据库有关的代码更改后,访问这个新建的数据库却总是报如下错误

关键字   'user '   附近有语法错误。

user是我在新数据库里新建的一张表。数据库权限问题已经排除,因为所有数据库的权限我都设为一样的。我的代码如下:
public   bool   login(string   username,   string   userpassword)
        {
                bool   b   =   false;
                string   connstr   =   "Data   Source=ANDY;Initial   Catalog=eve;Integrated   Security=True ";
                SqlConnection   conn   =   new   SqlConnection(connstr);
                SqlCommand   comm   =   new   SqlCommand( "select   *   from   user   where   name=@name   and   pwd=@password ",   conn);
                comm.Parameters.Add( "name ",   SqlDbType.VarChar);
                comm.Parameters.Add( "password ",   SqlDbType.VarChar);
                comm.Parameters[ "name "].Value   =   username;
                comm.Parameters[ "password "].Value   =   userpassword;
                if(conn.State==ConnectionState.Closed)
                {
                        conn.Open();
                        MessageBox.Show( "hao ");
                }
                SqlDataReader   result   =   comm.ExecuteReader();
                if   (result.Read()   ==   true)
                {   b   =   true;   }
                result.Close();
                conn.Close();
                return   b;
        }

就是换了数据库,就不能访问了。


------解决方案--------------------
from [user] where
------解决方案--------------------
加[]
------解决方案--------------------
凡是带有特殊字符或与系统保留字冲突的字段名、表名,都要加[]

如:

[姓 名]

[123]