如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
第十章数据库应用程序开发SQLServer基本数据准备:1.1ADO.NetADO/OLEDB和ODBC关系图ADO.NET结构1.2实例分析:设计一个Form实现对数据表students、subjects和grade编辑和浏览功能 examplea11.2.1自编程序方式1)连接数据库:teaching(SQLServer)2)数据库中数据载入DataSet:加载students3)DataSet中数据和控件的绑定:id和TextBox的绑定二)复杂绑定:classid数据取自classes表,提供选择功能。三)加入浏览功能四)使用绑定对DataSet数据表进行插入和删除五)通过控件输入的DataSet数据的取消和确认功能六)把DataSet数据存入数据库1)标记修改行及修改种类2)编写或生成相应的带参数的SQL语句(1)使用OleDBCommandBuilder产生更新数据库的带参数的SQL语句生成SQL语句的条件(如UpdateCommand)
基类对应的属性为空(如UpdateCommand=null)
dataSet对应数据表中存在对应状态的行(如存在Modified状态的行)
在下列调用中会调用oleDbCommandBuilder中生成SQL语句的程序(并非在初始化的时候):
调用其方法GetUpdateCommand或GetDeleteCommand或GetInsertCommand时,返回对应的命令串。
调用其属性DataAdapter值对象oleDbDataAdapter所包含的方法:oleDbDataAdapter.Update(dataSet,“students”);该语句用生成的SQL语句及dataSet修改过的数据更新数据表。
比较特别是oleDbDataAdapter是oleDbCommandBuilder的DataAdapter属性值,其方法却要调用拥有它的对象方法以生成SQL语句,这种调用方法见“3)更新数据库”后的例。加入生成SQL语句的语句:OleDbCommandBuilder其他说明:(2)编写更新数据库的SQL把grade数据加载到DataSet //定义第二个参数id:数据取修改前数据
OleDbParameteridParameter=newOleDbParameter("id",OleDbType.Char,6);
idParameter.SourceColumn=“id”;//数据来源于id列
idParameter.SourceVersion=DataRowVersion.Original;
//定义第三个参数subid:数据取修改前数据,同时指定数据来源于subid列
OleDbParametersubidParameter=newOleDbParameter("subid",OleDbType.Char,6,"subid");
subidParameter.SourceVersion=DataRowVersion.Original;
//将三个参数依次加入参数表,作为update语句中的三个参数
oleDbDataAdapter1.UpdateCommand.Parameters.Add(gradeParameter);
oleDbDataAdapter1.UpdateCommand.Parameters.Add(idParameter);
oleDbDataAdapter1.UpdateCommand.Parameters.Add(subidParameter);
//建立名为students_grade的两表关系,联结条件students.id=grade.id
dataRelation=newDataRelation("students_grade",dataSet.Tables["students"].Columns["id"],dataSet.Tables["grade"].Columns["id"]);
//将关系加入dataSet.Relation中
dataSet.Relations.Add(dataRelation);
}
在LoadData方法最后加LoadGrade()设置并显示DataGrid: //定义两个在DataGrid中显示的列:课程名称和成绩
DataGridTextBoxColumncolumn1=newDataGridTextBoxColumn();
DataGridTextBoxColumncolumn2=newDataGridTextBoxColumn();
column1.MappingName="subname";
column1.HeaderText="课程名称";
column2.
as****16
实名认证
内容提供者
最近下载