标题:系统错误??
只看楼主
laplas
Rank: 1
等 级:新手上路
帖 子:110
专家分:0
注 册:2006-2-28
得分:0 

public class StorageSearch : System.Windows.Forms.Form
{
....
private DataSet ds=new DataSet();
private DataView dv;
private LinkDataBase link=new LinkDataBase();
private string tempstr="select 库存库.货号,拼音编码,品名,单位,仓库,库存数量,库存单价,库存金额 "+"from 库存库,商品清单 where 库存库.货号=商品清单.货号";
private string temptablename="库存商品";
....

这个叫storagesearch的类。把tempstr 和temptablename两个字符串传给叫 linkdatabase的类。linkdatabase负责连接数据库。
代码:public class LinkDataBase
{
private string strSQL;
//与SQL Server的连接字符串设置
private string connectionString = "workstation id=localhost;Integrated Security=SSPI;database=jxcbook";
//与数据库的连接
private SqlConnection myConnection;

private SqlCommandBuilder sqlCmdBld;
private DataSet ds = new DataSet();
private SqlDataAdapter da;

public LinkDataBase()
{
//
// TODO: 在此处添加构造函数逻辑
//
}

///////////////////////////////// 操作脱机数据库(创建了该类的实例时直接用) /////////////////////////////////////////////////////

//根据输入的SQL语句检索数据库数据
public DataSet SelectDataBase(string tempStrSQL,string tempTableName)
{

this.strSQL = tempStrSQL;
this.myConnection = new SqlConnection(connectionString);
this.da = new SqlDataAdapter(this.strSQL,this.myConnection);
this.ds.Clear();
this.da.Fill(ds,tempTableName);
return ds;//返回填充了数据的DataSet,其中数据表以tempTableName给出的字符串命名

2006-04-04 10:03
冰镇柠檬汁儿
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:北京
等 级:版主
威 望:120
帖 子:8074
专家分:6657
注 册:2005-11-7
得分:0 
Password=;User ID=sa;Initial Catalog=jxcbook;Data Source=localhost
把连接字符串改成这个
再检查你的服务管理器开了没

本来无一物,何处惹尘埃
It is empty at all here, Why pm 2.5 is so TMD high!
2006-04-04 10:09
laplas
Rank: 1
等 级:新手上路
帖 子:110
专家分:0
注 册:2006-2-28
得分:0 
不行。服务器开了。
如果是sql语句的问题。报错不应该是那个样子吧
2006-04-04 10:15
冰镇柠檬汁儿
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:北京
等 级:版主
威 望:120
帖 子:8074
专家分:6657
注 册:2005-11-7
得分:0 
这应该是没有连接数据库的错,你open了没

本来无一物,何处惹尘埃
It is empty at all here, Why pm 2.5 is so TMD high!
2006-04-04 10:23
laplas
Rank: 1
等 级:新手上路
帖 子:110
专家分:0
注 册:2006-2-28
得分:0 
曾经试过open,好像也没用。try again .
2006-04-04 10:30
laplas
Rank: 1
等 级:新手上路
帖 子:110
专家分:0
注 册:2006-2-28
得分:0 
public DataSet SelectDataBase(string tempStrSQL,string tempTableName)
{

this.strSQL = tempStrSQL;
this.myConnection = new SqlConnection(connectionString);
this.myConnection.Open();
this.da = new SqlDataAdapter(this.strSQL,this.myConnection);
this.ds.Clear();
this.da.Fill(ds,tempTableName);
return ds;//返回填充了数据的DataSet,其中数据表以tempTableName给出的字符串命名


红色是新加的。还是不行。
2006-04-04 10:34
冰镇柠檬汁儿
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:北京
等 级:版主
威 望:120
帖 子:8074
专家分:6657
注 册:2005-11-7
得分:0 
你的引用里有using Windows.Data.SqlClient吗

[此贴子已经被作者于2006-4-4 10:40:22编辑过]



本来无一物,何处惹尘埃
It is empty at all here, Why pm 2.5 is so TMD high!
2006-04-04 10:39
laplas
Rank: 1
等 级:新手上路
帖 子:110
专家分:0
注 册:2006-2-28
得分:0 
有的。否则报错也不是这样的
2006-04-04 10:41
冰镇柠檬汁儿
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:北京
等 级:版主
威 望:120
帖 子:8074
专家分:6657
注 册:2005-11-7
得分:0 
你在程序开始设置个断点,跟踪一下是在哪一行出的问题,然后再把相关的代码发上来

本来无一物,何处惹尘埃
It is empty at all here, Why pm 2.5 is so TMD high!
2006-04-04 10:45
laplas
Rank: 1
等 级:新手上路
帖 子:110
专家分:0
注 册:2006-2-28
得分:0 
public StorageSearch()
{
//
// Windows 窗体设计器支持所必需的
//
InitializeComponent();
try
{
this.dv=new DataView(this.link.SelectDataBase(tempstr,temptablename).Tables[0]);
}
catch(Exception express)
{
MessageBox.Show(express.ToString().Trim(),"提示");
return;
}
this.dataGrid1.DataSource=this.dv;

我在try语句处加了断点。没问题。到catch后就有错了。报错内容就是我前面贴得图。
如果没有catch,就报系统错误。
2006-04-04 11:05



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-54716-1-1.html




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

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