脚本源代码如下:
<script runat="server">
string strcnn="server=localhost;uid=sa;pwd=wbq;database=WebDate_WBQ";
SqlConnection cnn;
SqlCommand cmd; void Page_Load(object sender, EventArgs e) {
string userID=Request.QueryString["userID"];
cnn=new SqlConnection(strcnn);
cnn.Open();
cmd=new SqlCommand("select * from users where userID="+userID+"",cnn);
SqlDataReader dr=cmd.ExecuteReader();
Label1.Text=dr("userID").ToString();//以下代码有错。
TextBox1.Text=dr("userName").ToString();
TextBox2.Text=dr("pwd").ToString();
TextBox3.Text=dr("sex").ToString();
TextBox4.Text=dr("regDate").ToString();
TextBox5.Text=dr("QQ").ToString();
TextBox6.Text=dr("email").ToString();
TextBox7.Text=dr("address").ToString();
dr.Close();
cnn.Close();
}
</script>编译错误信息如下:
编译错误
说明: 在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当地修改源代码。
编译器错误信息: CS0118: “dr”表示“变量”,此处应为“方法”源错误: 行 18: cmd=new SqlCommand("select * from users where userID="+userID+"",cnn);
行 19: SqlDataReader dr=cmd.ExecuteReader();
行 20: Label1.Text=dr("userID").ToString();
行 21: TextBox1.Text=dr("userName").ToString();
行 22: TextBox2.Text=dr("pwd").ToString();
<script runat="server">
string strcnn="server=localhost;uid=sa;pwd=wbq;database=WebDate_WBQ";
SqlConnection cnn;
SqlCommand cmd; void Page_Load(object sender, EventArgs e) {
string userID=Request.QueryString["userID"];
cnn=new SqlConnection(strcnn);
cnn.Open();
cmd=new SqlCommand("select * from users where userID="+userID+"",cnn);
SqlDataReader dr=cmd.ExecuteReader();
Label1.Text=dr("userID").ToString();//以下代码有错。
TextBox1.Text=dr("userName").ToString();
TextBox2.Text=dr("pwd").ToString();
TextBox3.Text=dr("sex").ToString();
TextBox4.Text=dr("regDate").ToString();
TextBox5.Text=dr("QQ").ToString();
TextBox6.Text=dr("email").ToString();
TextBox7.Text=dr("address").ToString();
dr.Close();
cnn.Close();
}
</script>编译错误信息如下:
编译错误
说明: 在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当地修改源代码。
编译器错误信息: CS0118: “dr”表示“变量”,此处应为“方法”源错误: 行 18: cmd=new SqlCommand("select * from users where userID="+userID+"",cnn);
行 19: SqlDataReader dr=cmd.ExecuteReader();
行 20: Label1.Text=dr("userID").ToString();
行 21: TextBox1.Text=dr("userName").ToString();
行 22: TextBox2.Text=dr("pwd").ToString();
行 20: Label1.Text=dr("userID").ToString();
行 21: TextBox1.Text=dr("userName").ToString();
行 22: TextBox2.Text=dr("pwd").ToString();在20行前加一句
dr.Read();
()->[]
()->[]这有错吗?我改成:Lable1.Text=(string).dr["userID"]也不对啊!
SqlDataReader sqlReader = sqlCmd.ExecuteReader(CommandBehavior.CloseConnection);
string[] strCourses = new string[20];
string[] iValues = new string[20];
int i = 0;
while (sqlReader.Read())
{
iValues[i] = sqlReader.GetString(0);
strCourses[i] = sqlReader.GetString(1);
i++;
}
sqlReader.Close();这是个例子
Label1.Text=dr.GetString(0);
TextBox1.Text=dr.GetString(1);
TextBox2.Text=dr.GetString(2);
TextBox3.Text=dr.GetString(3);
TextBox4.Text=dr.GetString(4);
TextBox5.Text=dr.GetString(5);
TextBox6.Text=dr.GetString(6);
TextBox7.Text=dr.GetString(7);
后原来的错误消失了SqlDataReader sqlReader = sqlCmd.ExecuteReader(CommandBehavior.CloseConnection);
括号中的代码什么意思啊?怎么我把自己的改成
SqlDataReader dr=cmd.ExecuteReader(CommandBehavior.CloseConnection);
它又出现在了:第 1 行: '=' 附近有语法错误。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.Data.SqlClient.SqlException: 第 1 行: '=' 附近有语法错误。如果改成:SqlDataReader dr=cmd.ExecuteReader();也是同样的错误!
{
string queryString ="SELECT OrderID, CustomerID FROM dbo.Orders";//查询语句
string str1="";
string str2="";
using (SqlConnection connection =new SqlConnection(connectionString))
{
SqlCommand command =new SqlCommand(queryString, connection);//构造Command
connection.Open();//打开连接 SqlDataReader reader = command.ExecuteReader();//生成DataReader if(reader.Read())//用循环依次读取数据
{
//将数据赋值
str1=reader[0].ToString();
str2=reader[1].ToString();
}
reader.Close();//关闭Reader
}
}
另外你也是第一次发贴吧!结贴时在贴子右上角-》管理-》给分
郁闷,又出现新的错了!在没有任何数据时进行无效的读取尝试。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.InvalidOperationException: 在没有任何数据时进行无效的读取尝试。源错误:
行 19: SqlDataReader dr=cmd.ExecuteReader(CommandBehavior.CloseConnection);
行 20: dr.Read();
行 21: Label1.Text=dr.GetString(0);
行 22: TextBox1.Text=dr.GetString(1);
行 23: TextBox2.Text=dr.GetString(2);
这东西关键:Label1.Text=dr.GetValue(0).ToString().Trim();
如果是Label1.Text=dr.GetString(0)会出现以下错误:
指定的转换无效。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.InvalidCastException: 指定的转换无效。再次感谢大家!