//想实现一个用DataReader对象读取数据的程序,编译无错误,但编译完出现错误提示,具体代码如下:
//我判断是在SqlConnection对象的联接语句写法上有问题,即:connstr="Server=XSQ;database=Productdb;uid=sa;pwd=;";
//请教高手?using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.Data.SqlClient;namespace sql_datareader1
{ [STAThread]
static void Main() 
{
Application.Run(new Form1());
} private void Form1_Load(object sender, System.EventArgs e)
{
rtbshow=new RichTextBox();
rtbshow.Multiline=true;
rtbshow.ReadOnly=true; string connstr,selectcmd;
connstr="Server=XSQ;database=Productdb;uid=sa;pwd=;";//此句怎么写?用sa用户登陆,无密码,服务器XSQ,数据库Productdb; selectcmd="select * from SCORE";
SqlConnection conn;
SqlDataReader reader;
SqlCommand cmd;
conn=new SqlConnection(connstr);
            conn.Open();
cmd=new SqlCommand(selectcmd,conn);//错误提示句:未处理的“System.Data.SqlClient.SqlException”类型的异常出现在 system.data.dll 中

reader=cmd.ExecuteReader();
for(int i=0;i<reader.FieldCount;i++)
{
rtbshow.Text+=reader.GetName(i)+"\t";
}
rtbshow.Text+="\n\n"; while(reader.Read())
{
for(int j=0;j<reader.FieldCount;j++)
{
rtbshow.Text+=reader[j]+"\t";
}
rtbshow.Text+="\n";
} reader.Close();
conn.Close(); }
}
}

解决方案 »

  1.   

    用断点调试一下,停在conn.open看数据源能否打开,如可以,则为你的sql语句的问题
      

  2.   

    connection string没有错
    套一个try..catch(Exception ex)..看看ex的详细内容是什么
      

  3.   

    应该是是连接没有连通吧,你试着将connstr="Server=XSQ;database=Productdb;uid=sa;pwd=;";这句中的Server改为你的本机IP试下,看能否找开连接 通过DOS命令下的
    ipconfig查看到本机的IP再将它代替XSQ,注意不要用引号引
      

  4.   

    http://blog.csdn.net/firestone2003/archive/2004/08/30/89346.aspx
      

  5.   

    connstring没错,否则的话,open就抱错!