| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4359 人关注过本帖
标题:[求助]操作Sql Server 2000时候 对象名无效[已解决 是全局传参问题]
取消只看楼主 加入收藏
noshow
Rank: 2
等 级:新手上路
威 望:4
帖 子:1127
专家分:0
注 册:2006-4-21
收藏
 问题点数:0 回复次数:13 
[求助]操作Sql Server 2000时候 对象名无效[已解决 是全局传参问题]
public static DataSet GetUserInfo(string mailtoSTR)
{
DataSet ds =new DataSet();
try
{
//Sql语句
string cmdText="Select count(*) from S_usr_jp where C_login_id = '"+mailtoSTR +"'";
//SqlCommand cmd=new SqlCommand (cmdText,con);
if (SqlOpen())
{
System.Data.SqlClient.SqlDataAdapter ad=new SqlDataAdapter(cmdText,con);
ad.Fill(ds);//单步执行到这里的时候出现的异常
}
}
catch(Exception ex)
{
HelpMsg.WriteError (ex.ToString ());
}
finally
{
SqlClose();
}

return ds;
}

上面的代码我想实现传入一个邮件地址 然后到表中查询这个邮件用户的信息
但是一直告诉我说
对象名 'S_usr_jp' 无效。
百思不得其解
百改不得其果
请明白人帮忙

如果我把这句直接放在查询分析器里执行则能正常执行出结果...
Select count(*) from S_usr_jp where C_login_id = 'noshow@noshow.com'

[此贴子已经被作者于2006-10-10 9:31:13编辑过]

搜索更多相关主题的帖子: 全局 Sql Server 对象 
2006-10-09 15:47
noshow
Rank: 2
等 级:新手上路
威 望:4
帖 子:1127
专家分:0
注 册:2006-4-21
收藏
得分:0 
以下是引用chenjin145在2006-10-9 16:03:01的发言:
SqlOpen?

連錯數據庫了吧

你把conn當全局來用的?

恩 把它当全局用了
按理说只有连接返回true的情况下才能继续执行下去的呀

public static bool SqlOpen()
{
try
{
con.Open ();
return true;
}
catch(Exception ex)
{
HelpMsg.WriteError (ex.ToString ());
return false;
}
}

此号自封于2006年11月30日
2006-10-09 16:13
noshow
Rank: 2
等 级:新手上路
威 望:4
帖 子:1127
专家分:0
注 册:2006-4-21
收藏
得分:0 
找到问题了 我刚查看了一下ad 结果里面的con里的值是空的 用的表是 master的
我的那个bool方法没起作用

此号自封于2006年11月30日
2006-10-09 16:17
noshow
Rank: 2
等 级:新手上路
威 望:4
帖 子:1127
专家分:0
注 册:2006-4-21
收藏
得分:0 
以下是引用chenjin145在2006-10-9 16:17:35的发言:
ad.Fill(ds);

這個不要conn.open啊

不会吧 我记得con.open是它自动打开的
填完了又自动关闭的
目前情况是ad里的conString里的全局变量没传进去哦
结果ad是master表里的东西


此号自封于2006年11月30日
2006-10-09 16:24
noshow
Rank: 2
等 级:新手上路
威 望:4
帖 子:1127
专家分:0
注 册:2006-4-21
收藏
得分:0 
我用了一个类保存了SqlServer里的东西
包括各种字段属性和一些简单的方法
我感觉这个地方出错有可能是
con连接的时候没有把全局变量的值赋上

我是在from_load里赋值的
SqlServer.Sqlserver ="**";
SqlServer.Database ="**";
SqlServer.UsrName ="**";
SqlServer.PassWord ="**";

此号自封于2006年11月30日
2006-10-09 16:27
noshow
Rank: 2
等 级:新手上路
威 望:4
帖 子:1127
专家分:0
注 册:2006-4-21
收藏
得分:0 
以下是引用chenjin145在2006-10-9 16:26:45的发言:

if (SqlOpen())

你這不是open了麼

open後又fill不會異常?

直接fill不就好了?


你說的得看你那個conn了

我试过不Open
结果是一样的哦


此号自封于2006年11月30日
2006-10-09 16:29
noshow
Rank: 2
等 级:新手上路
威 望:4
帖 子:1127
专家分:0
注 册:2006-4-21
收藏
得分:0 

问题已解决 该楼代码已清除

[此贴子已经被作者于2006-10-10 9:27:37编辑过]


此号自封于2006年11月30日
2006-10-09 16:30
noshow
Rank: 2
等 级:新手上路
威 望:4
帖 子:1127
专家分:0
注 册:2006-4-21
收藏
得分:0 
里面有2个方法一个是测试northwind一个是测试我自己的数据库
里面读出来的参数都是正确的
结果到了红色地方就执行不过去了

此号自封于2006年11月30日
2006-10-09 16:35
noshow
Rank: 2
等 级:新手上路
威 望:4
帖 子:1127
专家分:0
注 册:2006-4-21
收藏
得分:0 
以下是引用chenjin145在2006-10-9 16:36:13的发言:
private static string strCon="server=" + SqlServer.Sqlserver + ";"
+"database=" + SqlServer.Database+";"
+"user id=" + SqlServer.UsrName +";"
+"password=" + SqlServer.PassWord +";";
private static SqlConnection con=new SqlConnection(strCon);


這倆個寫為方法return看下

我在其他类调用这个方法观察到strCon里的东西是对的 就跟我当时Form_Load设置的一样
public static string GetstrCon()
{
return "server=" + SqlServer.Sqlserver + ";"
+"database=" + SqlServer.Database+";"
+"user id=" + SqlServer.UsrName +";"
+"password=" + SqlServer.PassWord +";";
}


此号自封于2006年11月30日
2006-10-09 16:44
noshow
Rank: 2
等 级:新手上路
威 望:4
帖 子:1127
专家分:0
注 册:2006-4-21
收藏
得分:0 
以下是引用skyland84在2006-10-9 16:41:36的发言:
private static string strCon="server=" + SqlServer.Sqlserver + ";"
+"database=" + SqlServer.Database+";"
+"user id=" + SqlServer.UsrName +";"
+"password=" + SqlServer.PassWord +";";
改成private static string strCon="server="" + SqlServer.Sqlserver + "";"
+"database="" + SqlServer.Database+"";"
+"user id="" + SqlServer.UsrName +"";"
+"password="" + SqlServer.PassWord +"";";看下!应该是这样吧?

老大 你改后的字符串应该是非法的吧


此号自封于2006年11月30日
2006-10-09 16:46
快速回复:[求助]操作Sql Server 2000时候 对象名无效[已解决 是全局传参问题]
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026616 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved