数据库数据库应用系统开发.docx

上传人:b****7 文档编号:9354866 上传时间:2023-02-04 格式:DOCX 页数:48 大小:27.91KB
下载 相关 举报
数据库数据库应用系统开发.docx_第1页
第1页 / 共48页
数据库数据库应用系统开发.docx_第2页
第2页 / 共48页
数据库数据库应用系统开发.docx_第3页
第3页 / 共48页
数据库数据库应用系统开发.docx_第4页
第4页 / 共48页
数据库数据库应用系统开发.docx_第5页
第5页 / 共48页
点击查看更多>>
下载资源
资源描述

数据库数据库应用系统开发.docx

《数据库数据库应用系统开发.docx》由会员分享,可在线阅读,更多相关《数据库数据库应用系统开发.docx(48页珍藏版)》请在冰豆网上搜索。

数据库数据库应用系统开发.docx

数据库数据库应用系统开发

第13章数据库应用系统开发

PublicSubCreateSqlConnection()

DimStrconnAsString'定义连接字符串

Strconn="DataSource=localhost;InitialCatalog=Sales;UserID=sa;Password=csulibtd;"

DimcnnAsNewSqlConnection()'创建连接对象实例

cnn.ConnectionString=Strconn'设置连接字符串属性

cnn.Open()'打开连接

cnn.Close()'关闭连接

EndSub

PublicSubCreateSqlCommand()

DimStrconnAsString

Strconn="DataSource=localhost;InitialCatalog=Sales;UserID=sa;Password=csulibtd;"

DimcnnAsNewSqlConnection()

cnn.ConnectionString=Strconn

cnn.Open()

DimMycommandAsSqlCommand'声明SqlCommand类型变量

Mycommand=NewSqlCommand("Selectcount(*)fromemployee")'创建SqlCommand类的实例

Mycommand.Connection=cnn'设置变量的Connection属性

Mycommand.CommandTimeout=15'设置变量的CommandTimeout属性

DimRecordcount=CInt(Mycommand.ExecuteScalar())'执行Mycommand对象并放回一个单一值

MsgBox(Recordcount)'显示结果

cnn.Close()

EndSub

PublicSubCreateSqlDataReader()

DimStrconnAsString

Strconn="DataSource=localhost;InitialCatalog=Sales;UserID=sa;Password=csulibtd;"

DimcnnAsNewSqlConnection()

cnn.ConnectionString=Strconn

cnn.Open()

DimMycommandAsSqlCommand

Mycommand=NewSqlCommand("SelectEmployee_Name,Sexfromemployee")

Mycommand.Connection=cnn

DimStrResultAsString'声明一个字符串变量

DimMydatareaderAsSqlDataReader'声明一个SqlDataReader类型的变量

'创建一个SqlDataReader实例

Mydatareader=Mycommand.ExecuteReader(CommandBehavior.CloseConnection)

DoWhileMydatareader.Read=True'循环读取结果记录

'获取列数据

StrResult=Mydatareader.GetString(0)&""&Mydatareader.GetString

(1)

Console.WriteLine(StrResult)'输出结果

Loop

cnn.Close()

EndSub

PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.Click

DimStrconnAsString

Strconn="DataSource=localhost;InitialCatalog=Sales;UserID=sa;Password=csulibtd;"

DimcnnAsNewSqlConnection()

cnn.ConnectionString=Strconn

cnn.Open()

DimMycommandAsSqlCommand=NewSqlCommand("Select*fromemployee")

Mycommand.Connection=cnn

DimdaAsSqlDataAdapter=NewSqlDataAdapter()'创建SqlDataAdapter对象

DimdsAsDataSet=NewDataSet()'创建DataSet对象

da.SelectCommand=Mycommand'它设置了SqlDataAdapter对象的SelectCommand属性

da.Fill(ds,"employee")'调用SqlDataAdapter对象的Fill方法从数据源读取数据并将其填充到数据集中。

employee是数据集中的表的名称

EndSub

(1)创建书商图书基本信息表bookseller_bookinfo

CREATETABLEbookseller_bookinfo(

rec_idbigintidentity(1,1)notnull,

isbnvarchar(20)null,

booknamevarchar(200)null,

authorvarchar(50)null,

publisher_datevarchar(50)null,

publishervarchar(50)null,

class_namevarchar(50)null,

book_pricenumericDEFAULT0,

book_numintDEFAULT0,

providervarchar(50)null

(2)创建图书馆图书馆藏基本信息表library_bookinfo

CREATETABLElibrary_bookinfo(

rec_idbigintidentity(1,1)notnull,

isbnvarchar(20)null,

booknamevarchar(200)null,

authorvarchar(50)null,

publisher_datevarchar(50)null,

publishervarchar(50)null,

class_namevarchar(50)null,

book_pricenumericDEFAULT0,

book_numintDEFAULT0,

providervarchar(50)null

(3)创建用户注册表userenroll_info

CREATETABLEuserenroll_info(

rec_idbigintidentity(1,1)notnull,

user_namevarchar(50)notnull,

user_passwordvarchar(50)null

user_memovarchar(200)null

PrivateSubExitMenuItem_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesExitMenuItem.Click

Application.Exit()

EndSub

①SQLServer2005服务器连接字符串函数

PublicFunctionConnectString()AsString

ConnectString="DataSource=202.197.77.1;InitialCatalog=Sales;UserID=sa;Password=csulibtd;"

'设置SQLServer2005数据库链接字符串,此字符串也可保存在目录文件中

EndFunction

②SQL命令执行函数

PublictxtSQLAsString'存放SQL语句

PublicDBSetAsDataSet'查询得到的记录集

PublicErrorMsgAsString'存放错误信息

PublicFunctionExecuteSQL(ByValstrSQLAsString,ByReferrMsgAsString)AsInteger

'函数执行SQL的INSERT、DELETE、UPDATE和SELECT语句

'对于INSERT、DELETE、UPDATE语句,ExecuteSQL返回更新的记录数:

-1表示程序异常;表示更新失败;大于表示操作成功,更新的记录数

'对于SELECT语句:

DBSet为返回的数据集;ExecuteSQL为返回的查询记录数。

DimcnnAsSqlClient.SqlConnection

DimcmdAsNewSqlClient.SqlCommand()

DimadptAsSqlClient.SqlDataAdapter

DimrstAsNewDataSet()

DimSplitSQL()AsString

errMsg=""

Try

SplitSQL=Split(strSQL)

cnn=NewSqlClient.SqlConnection(ConnectString())

IfInStr("INSERT,DELETE,UPDATE",UCase$(SplitSQL(0)))Then

cmd.Connection=cnn

cmd.Connection.Open()

cmd.CommandText=strSQL

ExecuteSQL=cmd.ExecuteNonQuery()'返回更新数据记录条数

Else

adpt=NewSqlClient.SqlDataAdapter(strSQL,cnn)

adpt.Fill(rst)

ExecuteSQL=rst.Tables(0).Rows.Count'返回查询记录条数

DBSet=rst

EndIf

CatchexAsException

errMsg=ex.Message

ExecuteSQL=-1'表示执行SQL失败

Finally

rst=Nothing

cnn=Nothing

EndTry

EndFunction

③启动函数SubMain

Submain()

DimmfAsNewRegister

mf.ShowDialog()

EndSub

PrivateSubcmdOK_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)

IfTextBox1.Text=""OrTextBox2.Text=""Then

MsgBox("请输入用户名或密码!

")

ExitSub

EndIf

DimcnnAsNewSqlConnection()

DimMycommandAsSqlCommand

cnn.ConnectionString=ConnectString()

cnn.Open()

txtSQL="selectcount(*)fromuserenroll_infowhereuser_name='"&TextBox1.Text&"'anduser_password='"&TextBox2.Text&"'"

Mycommand=NewSqlCommand(txtSQL)

Mycommand.Connection=cnn

DimRecordcount=CInt(Mycommand.ExecuteScalar())'返回记录条数

IfRecordcount=1Then'如找到用户名和密码相匹配的记录则登录成功

MdiForm.Show()'显示主窗体

Finalize()'释放登录窗体的资源

Else

MsgBox("用户名或密码错误!

")

ExitSub

EndIf

EndSub

PrivateSubcmdCancel_Click(……)'退出系统

Application.Exit()'退出应用程序

EndSub

PrivateSubcmdAdd_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)

DimRecordnumAsInteger

IfTextBox1.Text=""Then

MsgBox("请输入账号!

")

ExitSub

EndIf

IfTextBox2.Text=""Then

MsgBox("请输入密码!

")

ExitSub

EndIf

IfTextBox3.Text=""Then

MsgBox("请输入用户说明!

")

ExitSub

EndIf

'查看用户名在用户表userenroll_info中已存在

txtSQL="select*fromuserenroll_infowhereuser_name='"&TextBox1.Text&"'"

Recordnum=ExecuteSQL(txtSQL,ErrorMsg)'返回值为SQL检索记录数

IfRecordnum>0Then

'用户已存在,退出

MsgBox("用户已存在!

")

ExitSub

Else

'用户不存在,新增

txtSQL="insertintouserenroll_info(user_name,user_password,user_memo)values('"&TextBox1.Text&"','"&TextBox2.Text&"','"&TextBox3.Text&"')"

Recordnum=ExecuteSQL(txtSQL,ErrorMsg)

IfRecordnum=1Then

MsgBox("新增用户成功!

")

Else

MsgBox("新增用户失败!

")

EndIf

EndIf

EndSub

PrivateSubcmdExit_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)

Me.Close()'关闭此窗口

EndSub

PrivateSubUserModifyForm_Load(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesMyBase.Load

DimcnAsNewSqlConnection'定义一个到数据库的连接

DimsearchsqlAsString'定义SQL语句字符串

DimcmdAsSqlCommand'定义一个数据库操作命令

DimdrAsSqlDataReader'定义一个数据集读写器

searchsql="selectuser_namefromuserenroll_info"

Try

cn.ConnectionString=ConnectString()

cn.Open()

cmd=NewSqlCommand(searchsql,cn)

dr=cmd.ExecuteReader()

DoWhiledr.Read()

'在ComboBox控件中添加数据库中检索到的用户账号

Me.ComboBox1.Items.Add(dr.GetValue(0))

Loop

dr.Close()

CatchexAsException

MsgBox(ex.Message)

EndTry

cn.Dispose()

EndSub

PrivateSubComboBox1_SelectionChangeCommitted(ByValsenderAsObject,ByValeAsSystem.EventArgs)HandlesComboBox1.SelectionChangeCommitted

DimcnAsNewSqlConnection'定义一个到数据库的连接

DimsearchsqlAsString'定义SQL语句字符串

DimcmdAsSqlCommand'定义一个数据库操作命令

DimdrAsSqlDataReader'定义一个数据集读写器

searchsql="selectuser_name,user_password,user_memofromuserenroll_infowhereuser_name='"&ComboBox1.SelectedItem&"'"

Try

cn.ConnectionString=ConnectString()

cn.Open()

cmd=NewSqlCommand(searchsql,cn)

dr=cmd.ExecuteReader()

DoWhiledr.Read()

'读取数据库中的账户信息,并将其写入到显示控件中

TextBox1.Text=dr.GetString

(1)

TextBox2.Text=dr.GetString

(2)

Loop

dr.Close()

CatchexAsException

MsgBox(ex.Message)

EndTry

cn.Dispose()

EndSub

PrivateSubcmdModify_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)

DimcnAsNewSqlConnection'定义一个到数据库的连接

DimsearchsqlAsString'定义SQL语句字符串

DimcmdAsSqlCommand'定义一个数据库操作命令

searchsql="updateuserenroll_infosetuser_password='"&TextBox1.Text&"',user_memo='"&TextBox2.Text&"'whereuser_name='"&ComboBox1.SelectedItem&"'"

Try

cn.ConnectionString=ConnectString()

cn.Open()

cmd=NewSqlCommand(searchsql,cn)'创建SqlCommand类实例

cmd.ExecuteNonQuery()'执行cmd对象

MsgBox("记录修改成功!

")

CatchexAsException

MsgBox(ex.Message)

EndTry

cn.Dispose()

EndSub

PrivateSubcmdDelete_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)

DimcnAsNewSqlConnection'定义一个到数据库的连接

DimsearchsqlAsString'定义SQL语句字符串

DimcmdAsSqlCommand'定义一个数据库操作命令

searchsql="deleteuserenroll_infowhereuser_name='"&ComboBox1.SelectedItem&"'"

Try

cn.ConnectionString=ConnectString()

cn.Open()

cmd=NewSqlCommand(searchsql,cn)'创建SqlCommand类实例

cmd.ExecuteNonQuery()'执行cmd对象

GetUser()'更新下拉列表框中的用户列表

MsgBox("记录删除成功!

")

CatchexAsException

MsgBox(ex.Message)

EndTry

cn.Dispose()

EndSub

PrivateSubGetUser()'取账号信息,添加到ComboBox1下拉列表框

DimcnAsNewSqlConnection'定义一个到数据库的连接

DimsearchsqlAsString'定义SQL语句字符串

DimcmdAsSqlCommand'定义一个数据库操作命令

DimdrAsSqlDataReader'定义一个数据集读写器

searchsql="selectuser_namefromuserenroll_info"

Try

cn.ConnectionString=ConnectString()

cn.Open()

cmd=NewSqlCommand(searchsql,cn)

dr=cmd.ExecuteReader()

ComboBox1.Items.Clear()

TextBox1.Text=""

TextBox2.Text=""

DoWhiledr.Read()

'在ComboBox控件中添加数据库中检索到的用户账号

Me.ComboBox1.Items.Add(dr.GetValue(0))

Loop

dr.Close()

CatchexAsException

MsgBox(ex.Message)

EndTry

cn.Dispose()

EndSub

PrivateSubcmdxjAdd_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)

'判断是否输入了ISBN号

IfTrim(TextBox1.Tex

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

当前位置:首页 > 高等教育 > 文学

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

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