如何解决如何使用访问修饰符声明 sqlConnection、sqlCommand、sqlDataAdapter 和 sqlDataReader?
我正在按照项目的说明进行操作。 我很确定我遵循了所有说明,但我似乎遗漏了一些东西。也许它是我声明类的方式,因为这正是下划线所在的位置。今天才遇到sql。
我不断收到这些错误:
*Field'ClassRegistrationQuery.sqlAdapter' 永远不会被赋值,并且它的默认值总是为 null
Field'ClassRegistrationQuery.sqlConnect' 永远不会被赋值,并且其默认值总是为 null
从未使用过“ClassRegistrationQuery.sqlReader”字段。*
以下是说明:
5. 创建一个名为 ClassRegistrationQuery 的类。在类内部,导入 System.Data.sqlClient、System.Data 和 System.Windows.Forms 见表 2 并声明需要什么
现在,该表表明访问修饰符对于 sqlConnection、Command、DataAdapter 和 DataReader 应该是私有的。还给出了变量名称。
6.转到 ClassRegistrationQuery 类的构造函数。执行以下操作: a.在获取ClassDB的Connection String时声明connectionString的值。 注意:在服务器资源管理器中右键单击数据库文件后,连接字符串位于属性中。
b.初始化sqlConnection并调用connectionString。示例:new sqlConnection(myConnectionString);
c.初始化数据表和绑定源
7. 声明一个名为 displayList() 的方法,该方法返回一个布尔值 true。
a.声明一个名为 ViewClubMembers 的字符串变量,并通过创建查询 Select 语句来设置该值。仅显示 ClubMembers 表中的 StudentId、FirstName、MiddleName、LastName、Age、Gender 和 Program。
b. 实例化 sqlAdapter 并调用 ViewClubMembers 和 sqlConnect 变量。
注意:不要忘记 sqlAdapter:sqlAdapter(string query,sqlConnection connect) 的参数。
i.dataTable.Clear();
ii.sqlAdapter.Fill(dataTable);
iii.bindingSource.DataSource = dataTable;
这是我的代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Collections;
using System.Data.sqlClient;
using System.Data;
using System.Windows.Forms;
namespace sqlSelectInsertandUpdate{
public class ClassRegistrationQuery
{
private sqlConnection sqlConnect;
private sqlCommand sqlCommand;
private sqlDataAdapter sqlAdapter;
private sqlDataReader sqlReader;
private static string connectionString = "Data Source=MYPC;Initial Catalog = ClassDB; Integrated Security = True";
public DataTable dataTable;
public BindingSource bindingSource;
public string _FirstName,_MiddlesName,_LastName,_Gender,_Program;
public int _Age;
sqlConnection SC = new sqlConnection(connectionString);
DataTable DT = new DataTable();
BindingSource bs = new BindingSource();
public bool displayList()
{
string ViewClubMembers = ("select StudentID,FirstName,MiddleName,LastName,Age,Gender,Program * from ClubMemebrs");
sqlDataAdapter sd = new sqlDataAdapter(ViewClubMembers,SC);
dataTable.Clear();
sqlAdapter.Fill(dataTable);
bindingSource.DataSource = dataTable;
return true;
}
public bool RegisterStudent(int ID,long StudentID,string FirstName,string MiddleName,string LastName,int Age,string Gender,string Program)
{
sqlCommand = new sqlCommand("INSERT INTO ClubMembers VALUES(@ID,@StudentID,@FirstName,@MiddleName,@LastName,@Age,@Gender,@Program)",sqlConnect);
sqlCommand.Parameters.Add("@ID",sqlDbType.Int).Value = ID;
sqlCommand.Parameters.Add("@RegistrationID",sqlDbType.BigInt).Value = StudentID;
sqlCommand.Parameters.Add("@StudentID",sqlDbType.VarChar).Value = StudentID;
sqlCommand.Parameters.Add("@FirstName",sqlDbType.VarChar).Value = FirstName;
sqlCommand.Parameters.Add("@MiddleName",sqlDbType.VarChar).Value = MiddleName;
sqlCommand.Parameters.Add("@LastName",sqlDbType.VarChar).Value = LastName;
sqlCommand.Parameters.Add("@Age",sqlDbType.Int).Value = Age;
sqlCommand.Parameters.Add("@Gender",sqlDbType.VarChar).Value = Gender;
sqlCommand.Parameters.Add("@Program",sqlDbType.VarChar).Value = Program;
sqlConnect.open();
sqlCommand.ExecuteNonQuery();
sqlConnect.Close();
return true;
}
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。