SQL数据库操作步骤及代码.docx

上传人:b****6 文档编号:5745688 上传时间:2022-12-31 格式:DOCX 页数:19 大小:479.74KB
下载 相关 举报
SQL数据库操作步骤及代码.docx_第1页
第1页 / 共19页
SQL数据库操作步骤及代码.docx_第2页
第2页 / 共19页
SQL数据库操作步骤及代码.docx_第3页
第3页 / 共19页
SQL数据库操作步骤及代码.docx_第4页
第4页 / 共19页
SQL数据库操作步骤及代码.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

SQL数据库操作步骤及代码.docx

《SQL数据库操作步骤及代码.docx》由会员分享,可在线阅读,更多相关《SQL数据库操作步骤及代码.docx(19页珍藏版)》请在冰豆网上搜索。

SQL数据库操作步骤及代码.docx

SQL数据库操作步骤及代码

第2章数据库高级编程

是为.NET框架而创建的,是对ADO(ActiveXDataObjects)对象模型的扩充。

提供了一组数据访问服务的类,可用于对MicrosoftSQLServer、Oracle等数据源的一致访问。

模型分为.NETDataProvider(数据提供程序)和DataSet数据集(数据处理的核心)两大主要部分。

.NET数据提供程序提供了四个核心对象,分别是Connection、Command、DataReader和DataAdapter对象。

功能如表2-1所示。

表2-1核心对象

对象

功能

Connection

提供和数据源的连接功能

Command

提供访问数据库命令,执行查询数据或修改数据的功能,例如运行SQL命令和存储过程等

DataReader

从数据源中读取只向前的且只读的数据流

DataAdapter

是DataSet对象和数据源间的桥梁。

DataAdapter使用4个Command对象来运行查询、新建、修改、删除的SQL命令,把数据加载到DataSet,或者把DataSet内的数据送回数据源

SQLServer相关配置

在使用C#访问数据库之前,首先创建一个名为“chap2”的数据库,此数据库作为节及节中例题操作的默认数据库。

然后创建数据表Products,表结构如表2-2所示。

创建完毕后可录入初始化数据若干条。

表2-2Products表表结构

序号

列名

字段说明

数据类型

长度

主键

允许空

1

ProductID

商品编号

char

4

主键

2

ProductName

商品名称

nvarchar

nvava

40

3

SupplierName

供应商名称

nvarchar

40

4

CategoryName

商品类别名称

nvarchar

40

5

UnitPrice

单价

money

6

UnitsInStock

库存量

smallint

7

Discount

是否折扣

char

1

下面首先介绍几个SQLServer2012的常用操作。

这些操作都是初学者在实践环节及上机课的操作中出现问题较多的地方。

1.身份验证方式

SQLServer2012在安装时默认是使用Windows验证方式的,但是安装过后用户可随时修改身份验证方式。

启动SQLServer2012ManagementStudio,在“连接到服务器”对话框中选择“Windows身份验证”连接服务器,连接成功后,在窗体左侧的“对象资源管理器”中右键单击服务器实例节点,并在弹出的快捷菜单中选择“属性”菜单项,系统将弹出“服务器属性”窗体,切换至“安全性”选项卡,如图2-1所示。

图2-1“服务器属性”对话框-“安全性”选项卡

在“服务器身份验证”部分选择“SQLServer和Windows身份验证模式”选项,并单击【确定】按钮。

系统将提示需要重新启动SQLServer以使配置生效,如图2-2所示。

图2-2系统提示框

右键单击“对象资源管理器”的服务器实例节点,在弹出的快捷菜单中选择“重新启动”菜单项,SQLServer将重新启动服务,重启成功后即可使用混合验证方式登录SQLServer服务器。

2.添加登录账户

大部分初学者都习惯于使用SQLServer的系统管理员账号“sa”来登录数据库服务器,而在实际工作环境中使用sa账号登录服务器是不合理的。

因为很多情况下系统的数据库是部署在租用的数据库服务器上的,此时数据库设计人员或编程人员都不可能具有sa账号的使用权限,因此在将身份验证方式修改为SQLServer和Windows混合验证后,需要为某应用程序创建一个专用的登录账户。

其操作步骤描述如下。

(1)使用Windows身份验证登录SQLServer,在对象资源管理器中点击“安全性”节点前面的加号“+”,在展开后的“登录名”子节点上单击右键,如图2-3所示,并在弹出的快捷菜单中选择“新建登录名”选项。

图2-3登录名节点的右键菜单

(2)系统弹出“登录名—新建”对话框中,如图2-4所示。

首先在登录名输入框中填写需要创建的用户名,此处以“zd”为例;将身份验证方式选为“SQLServer身份验证”,为新建账户设置密码为“123”,同时去除“强制实施密码策略”和“用户在下次登录时必须更改密码”选项;最后为账户选择默认数据库“chap2”。

图2-4“登录名-新建”对话框“常规”选项卡

(3)服务器角色节点不予配置。

有关SQLServer服务器角色请参考相关资料,此处不再详细介绍。

(4)在对话框左侧选项卡中选择“用户映射”节点,如图2-5所示,在“映射到此登录名的用户”列表中,勾选此前创建好的数据库“chap2”,在窗体右下方的“数据库角色成员身份”框里选择“db_Owner”,即数据库拥有者。

图2-5“登录名-新建”对话框“用户映射”选项卡

(5)安全对象节点一般不予配置。

(6)在对话框左侧选项卡中选择“状态”节点,如图2-6所示,将“是否允许连接到数据库引擎”选项设为“授予”,同时将“登录”选项设为“启用”。

以上各节点配置完成后单击【确定】按钮,即完成了对账户的创建工作。

图2-6“登录名-新建”对话框“状态配置”选项卡

(7)新建账户完成后,重新连接SQLServer,如图2-7所示,选择SQLServer身份验证方式,输入前面设置的登录名“zd”及密码“123”,点击【连接】按钮,即可完成登录。

登录成功后在对象资源管理器中可看到服务器实例名后面显示的登录用户名,如图2-8所示。

  

图2-7“连接到服务器”对话框图2-8对象资源管理器

使用访问数据库

2.2.1连接数据库

在对数据源进行操作之前,首先需建立到数据源的连接,可使用Connection对象显式创建到数据源的连接。

【例2-1】设计一个Windows应用程序,能通过“Windows验证“和“Windows和SQLServer混合验证”两种方式建立到数据库的连接。

图2-9“连接数据库”窗体控件Tab顺序

实现过程如下。

(1)新建一Windows应用程序,命名为connection,将创建的默认窗体名更名为frmConnect,窗体的Text属性设置为“连接数据库”,界面设计如图2-9所示。

frmConnect窗体中的主要控件,按Tab键顺序,描述如表2-3所示。

表2-3“连接数据库”窗体控件及说明

Tab顺序

控件类型

控件名称

说明

主要属性

属性名

属性值

0

Button

btnConnect1

Windows身份验证方式连接数据库

Text

Windows验证

1

btnConnect2

混合验证方式连接数据库

Text

混合验证

(2)主要程序代码

说明:

①本节内所有例题代码均需引用命名空间,代码如下:

usingdatabase=chap2;uid=zd;pwd=123";

2.2.2

2.2.3

2.2.4

oString();

=dr["ProductName"].ToString();

=dr["SupplierName"].ToString();

=dr["CategoryName"].ToString();

=dr["UnitPrice"].ToString();

=dr["UnitsInStock"].ToString();

=(dr["Discount"].ToString())=="True"true:

false;

}

();

efaultView;ells[0].();

DataRowdrow=oString();

=[rowNumber][1].ToString();

=[rowNumber][2].ToString();

}

}

程序运行界面如图2-17所示。

图2-17DataSet操作运行效果图

程序操作流程不再描述。

本例题所有数据都在内存中处理,没有连接数据库。

读者也可改造例题为操作从数据库填充的数据集。

【例2-7】设计一个Windows应用程序,能实现商品信息维护。

本例题中,要实现使用DataGridView控件显示数据库中的数据,并提供组合条件的查询及对数据的添加、删除及修改功能。

图2-18“DataGridView的使用”窗体Tab键顺序视图

实现过程:

(1)新建一Windows应用程序,命名为dataGridView,将创建的默认窗体名更名为frmProducts,窗体的Text属性设置为“DataGridView的使用”,界面设计如图2-18所示。

frmProducts窗体中的主要控件,按Tab键顺序,描述如表2-8所示。

表2-8“DataGridView的使用”窗体控件及说明

Tab顺序

控件类型

控件名称

说明

主要属性

属性名

属性值

0

GroupBox

groupBoxQuery

商品信息查询条件的容器

Text

查询条件

TextBox

txtProName

输入商品名称

Text

""

txtSupName

输入供应商名称

Text

""

ComboBox

comboCategory

显示所有商品类别

DropDownStyle

DropDownList

comboOperator

选择商品单价的比较运算符

Items

请选择

<

<=

=

>

>=

TextBox

txtUnitPrice

输入商品单价查询数额

Enabled

False

Button

btnSelect

查询符合条件的商品记录

Text

查询

btnClear

清空所有查询条件

Text

清空

1

DataGridView

dGVProducts

显示商品信息

SelectionMode

FullRowSelect

2

Button

btnInsert

添加信息

Text

添加

3

btnUpdate

修改信息

Text

修改

4

btnDelete

删除信息

Text

删除

(2)对于控件dGVProducts,需要对列进行编辑,为每列指定属性DataPropertyName为对应的数据表字段,为每列指定HeaderText为中文列头,如图2-19所示。

其中“商品编号”列不需要显示,因此其Visible属性设置为False,其他字段都默认设置为True。

图2-19dGVProducts的“编辑列”对话框

dGVProducts中各列的属性设置如表2-9所示。

表2-9dGVProducts中各列的属性设置表

列头文本

属性名

属性值

商品编号

DataPropertyName

ProductID

Visible

False

商品名称

DataPropertyName

ProductName

供应商名称

DataPropertyName

SupplierName

商品类型

DataPropertyName

CategoryName

单价

DataPropertyName

UnitPrice

库存量

DataPropertyName

UnitsInStock

打折

DataPropertyName

Discount

(3)添加一个Windows窗体,修改名称为frmDetails,并设计界面如图2-20所示。

frmDetails窗体中的主要控件,按Tab键顺序,描述如表2-10所示。

图2-20“商品详细信息”窗体Tab键顺序视图

表2-10“商品详细信息”窗体控件及说明

Tab顺序

控件类型

控件名称

说明

主要属性

属性名

属性值

0

TextBox

txtID

输入和显示商品编号

Text

""

1

txtName

输入和显示商品名称

Text

""

2

txtSupplier

输入和显示供应商

Text

""

3

ComboBox

comboCategory

用于选择商品类别

DropDownStyle

DropDownList

4

TextBox

txtUnitPrice

输入和显示单价

Text

""

5

txtUnitsInStock

输入和显示库存数量

Text

""

6

Check

chkDisc

勾选是否有折扣

Text

折扣

Checked

False

7

Button

btnOperate

操作按钮,用于添加或修改

(4)商品信息管理窗体(frmProducts)的主要代码。

①首先要为该程序添加3个成员变量,代码如下:

stringstrConn="server=XP-4;database=chap2;integratedsecurity=true";ext="";

if(cisComboBox)

((ComboBox)c).SelectedIndex=-1;

}

操作状态(insert),以确定在商品详细信息窗体中需进行的相关操作。

b.dGVProducts控件的引用,以在添加完毕后刷新frmProducts窗体中的dGVProducts控件中的数据。

代码如下。

作状态(update),以确定在商品详细信息窗体中需进行的相关操作。

控件的引用,以在修改完毕后刷新frmProducts窗体中的dGVProducts控件中的数据。

c.用户在商品信息列表中选择的商品的编号,以在商品详细信息窗体中加载该商品的所有字段值。

代码如下。

是insert,则将btnOperate的Text属性设置为“添加”。

b.如是update,则将btnOperate的Text属性设置为“修改”,然后根据从frmProducts传过来的待修改商品编号pId访问数据库,查询该商品的其他字段,为界面其他控件赋值。

代码如下。

oString();

=dr["SupplierName"].ToString();

=dr["CategoryName"].ToString();

=dr["UnitPrice"].ToString();

=dr["UnitsInStock"].ToString();

=(dr["Discount"].ToString()=="True");

}

();

rimaryKey=newDataColumn[]{[0].Columns["ProductId"]};

=[0];

}

③双击btnUpdate按钮,进入其Click事件处理函数,为DataAdapter创建CommandBuilder对象,并将对DataSet所进行的更改提交至数据库。

ells[0].();

DataRowdrow=["products"].(id);

();

}

图2-23DataGridView直接编辑数据界面

在数据列表中单击任一单元格,对数据进行修改,然后点击【更新】按钮,即可修改数据集并同时将修改提交至数据源。

选择一行数据后点击【删除】按钮,即可删除一条记录。

说明:

在例2-6中,从Dataset删除行使用的是()方法,该方法是直接在DataTable中将Row删除,本例的删除代码中使用了()方法,该方法标记ROW为删除,在调用()方法的时候才会真正的从DataTable中删除。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1