问题描述
这个我确定有的,在本地执行正常,挂到服务器就报这样的错对象名'users_info'无效。说明:执行当前Web请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。异常详细信息:System.Data.SqlClient.SqlException:对象名'users_info'无效。源错误:行320:{行321:行322:throwe;行323:}finally{connection.Close();}行324:}源文件:e:InetpubwwwrootLocalUseryybainianApp_CodeDBHelp.cs行:322堆栈跟踪:[SqlException(0x80131904):对象名'users_info'无效。]DBHelp.GetDataSet(StringsafeSql)ine:InetpubwwwrootLocalUseryybainianApp_CodeDBHelp.cs:322SQLdata.selectUser(Stringid)ine:InetpubwwwrootLocalUseryybainianApp_CodeSQLdata.cs:36_Default.Button1_Click(Objectsender,EventArgse)ine:InetpubwwwrootLocalUseryybainianCitiesAllianceusersDefault.aspx.cs:23System.Web.UI.WebControls.Button.OnClick(EventArgse)+105System.Web.UI.WebControls.Button.RaisePostBackEvent(StringeventArgument)+107System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(StringeventArgument)+7System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandlersourceControl,StringeventArgument)+11System.Web.UI.Page.RaisePostBackEvent(NameValueCollectionpostData)+33System.Web.UI.Page.ProcessRequestMain(BooleanincludeStagesBeforeAsyncPoint,BooleanincludeStagesAfterAsyncPoint)+5087
解决方案
解决方案二:
检查数据源是否正确连接,包括主机地址
解决方案三:
服务器上配置文件中,连接的数据库中,没有这个表.
解决方案四:
在数据库执行语句试试。。
解决方案五:
或者是,表名称没有严格对应
解决方案六:
数据库表名写错了
解决方案七:
你确定的服务器上的表名为dbo.users_info
解决方案八:
我用的access数据库
解决方案九:
用上[users_info]加表名称
解决方案十:
表名直接负制粘贴的
解决方案十一:
[users_info]这个也用过了的,还是一样的错
解决方案十二:
数据库没挂好,和本机的不一样
解决方案十三:
重新生成一下,
解决方案十四:
同个数据库里的,另一个表的表名有效,字段名无效
解决方案十五:
贴代码
解决方案:
列名'adminName'无效。列名'adminpwd'无效。说明:执行当前Web请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。异常详细信息:System.Data.SqlClient.SqlException:列名'adminName'无效。列名'adminpwd'无效。源错误:这个的表名和上面的表名是在同一个数据库的
解决方案:
根据你15楼的情况,估计是你的这个数据库有问题异常详细信息:System.Data.SqlClient.SqlException:列名'adminName'无效。//你看这个异常,是SqlException,也就是说应该是MSSQL的吧//之前你说你用Access类型数据库,可能我也不懂,但我一般对这种类型数据库,是使用OleDbConnection对象和OleDbCommand对象去操作的//当然,如果楼主确实本地正常的话,那应该不是我说的问题//最后提醒一下,ACCESS数据库最麻烦的就是路径问题,本地的和服务器上的不一样,你必须配置文件那考虑到这些,你可以尝试把数据库链接字符串读取出来在一个新的页面显示一下,看它是否真的指向你的数据库文件
解决方案:
数据库相对路径没写对?
解决方案:
不是数据库名称不对,就是字段没写对!要不就是,表里面没那个字段。
解决方案:
数据库链接错误,或当前链接的数据库中没有这张表
解决方案:
应该连接哦数据库跟你看到数据库不是一个
解决方案:
如果确定表名没错,那可能是当前连到别的库上去了
解决方案:
检查一下连接配置吧。应该是这方面的问题
解决方案:
引用15楼conjure的回复:
列名'adminName'无效。列名'adminpwd'无效。说明:执行当前Web请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。异常详细信息:System.Data.SqlClient.SqlException:列名'adminName'无效。列名'adminpwd'无效。源错误:……
你去看一下那个表里是否有这个列,你这个是adminName和adminpwd没有,你看一下数据库里面的表结构吧
解决方案:
如果你是用三层加油的话,你要重新生成下dalbllmodel这3个成的dal文件在上传到服务上去、Default.aspx.cs23行跟着调试下去
解决方案:
不存在user-info的表
解决方案:
计算机不会骗人的
解决方案:
///<summary>///测试连接数据库是否成功///</summary>///<returns></returns>publicstaticboolConnectionTest(){//获取数据库连接字符串ConnectionString=ConnectionInfo.ConnectionString();//创建连接对象mySqlConnection=newSqlConnection(ConnectionString);//如:server=.;uid=sa;pwd=;database=PMIS;IntegratedSecurity=SSPI;ConnectionTimeout=30//mySqlConnection.ConnectionTimeout=1;//设置连接超时的时间try{//OpenDataBase//打开数据库mySqlConnection.Open();IsCanConnectioned=true;}catch{//CannotOpenDataBase//打开不成功则连接不成功IsCanConnectioned=false;}finally{//CloseDataBase//关闭数据库连接mySqlConnection.Close();}//mySqlConnectionisaSqlConnectionobjectif(mySqlConnection.State==ConnectionState.Closed||mySqlConnection.State==ConnectionState.Broken){//ConnectionisnotavailablereturnIsCanConnectioned;}else{//ConnectionisavailablereturnIsCanConnectioned;}}
解决方案:
mark
解决方案:
楼主查一下一,数据库路径有问题,无法找到这个数据库二,数据库里没有这个表,或是名不对,如果确认有,哪么数据库坏了。读不出来
解决方案:
连接字符串,确保能连接数据库.数据库中存在表表中字段拼写检查楼主说的是Access数据库,用Sql的类进行的连接?换成privateOleDbConnectionconn;privateOleDbDataAdapteroda=newOleDbDataAdapter();privateOleDbCommandcmd;试试
解决方案:
你断点跟踪能链接数据库吗
解决方案:
呵呵,还没结贴啊奇实还有一点我想到的可能性原因,就是如果楼主使用的SQL语句是以参数化方式进行的,那可能是参数的位置和顺序不同造成的因为ACCESS只是MSSQL的简化版本,它的引擎不会自动智能区分参数的绑定,它只识参数的出现位置//不过楼主又说本地运行没有错误,这点就推翻了我的这个推断了,唯一的解释就是你要么链接到的库不对,要么就是你的库坏了,//、本地好好的,服务器却出错,并且是ACCESS数据库,提示不存在表或该表字段,我想原因不会太复杂
解决方案:
谢谢楼上各位,中间发生了一些事,我中断了一段时间的编写,现在继续纠结中
解决方案:
该回复于2011-11-25 09:31:37被版主删除