成语词典设计
- 格式:doc
- 大小:261.00 KB
- 文档页数:16
综合设计实验成语词典查询系统设计
一、实验目的
1.了解SQL语言各语句的语法与使用方法;
2.掌握Command 和DataSet两个核心组件的常用属性、方法的含义及使用方法;
3.掌握利用Command 和DataSet两个核心组件实现数据库记录的插入、修改、删除的方法;
4.使学生能够通过老师讲过的内容灵活运用多种控件,实现对简单数据库的维护,能够自行调试,显示或保存实验结果。并使学生更深入的掌握面向对象程序设计这门课程。
二、实验要求
(1)创建成语词典查询系统所需的表(成语词典表),并能连接上数据库;(2)完成对所建成语词典表的插入、修改、删除功能;
(3)完成对成语的精确和模糊查询;
(4)完成对成语词典查询结果保存为Word文档;
(5)为完成上述功能,还需运用菜单、工具条等多种控件。
三、数据库设计
1.SQL Server的设计
数据库是按照一定组织方式存储的相关数据的集合,可以分为关系、层次、和网状三种模型,其中数据库模型较为流行。
连接数据库对象的方式如下
Form1(void)
{
InitializeComponent();//在此处添加构造函数代码
con=gcnew SqlConnection();//在窗体的构造函数中对con进行初始化
con->ConnectionString = L"Data Source= ** 的电脑;
Initial Catalog=成语词典库;
Integrated Security=True";
}
本次实验SQL Server数据库名:成语词典库,电脑的全名: ** 的电脑。
常用的对象如下
(1):DataSet对象
(2):DataAdapter对象
(3):DataGridView对象
(4):Command对象
(5):DataReader对象
(6):Connection对象
2.表的设计
该数据库只含有一张表,即“成语词典表”,表含有ID、汉字检索、拼音检索和备注四个字段,只有ID为数字类型,其余的都为文本类型,并设ID为主键。
本实验数据库的设计表如下
图3-1 成语词典表
四、软件界面
1.界面设计
图4-1 主窗体效果图
图4-2 浏览和查询菜单的设计图2.控件属性及控件值
控件名
称
属性属性值
MenuStrip Items
浏览(查看所有、保存结果、退出)、查询(精确查询、模糊查询)、添加、删除、修改、退出
Label1 Text 选择查询方式:
GroupBox1 Text 操作界面
Label2 Text 设置查询值:
Label3 Text 拼音:
Label4 Text 成语:
Label5 Text 备注:
Label6 Text 显示界面:
button1 Text 精确查询
button2 Text 模糊查询
button3 Text 添加
button4 Text 导出Word文件》
button5 Text 修改
button6 Text 删除
comboBox1 Items 拼音检索、汉字检索 Label7 Text ID
表4-1控件属性及控件值
五:主要功能代码
一、查看所有-功能代码
private: System::Void 查看所有MToolStripMenuItem_Click(System::Object^
sender, System::EventArgs^ e)
{
String^ sql= " select * from 成语词典表;
DataSet^ ds=gcnew DataSet();
SqlDataAdapter^ ourda = gcnew SqlDataAdapter( sql,con); try
{
ourda->Fill(ds,"ID");//把数据适配器的内容添加到数据集内
this->dataGridView1->DataSource=ds->Tables["ID"];
}
catch(System::Data::SqlClient::SqlException^ ex)
{
MessageBox::Show("数据的异常信息是:"+ex->Errors,"提示信息");
}
}
图5-1 查询全部结果成功
二、精确查询-功能代码
private: System::Void 精确查询AToolStripMenuItem_Click(System::Object^
sender, System::EventArgs^ e)
{
String^ sql= " select * from 成语词典表where "+comboBox1- >Text+"
='"+textBox1->Text+"'";
DataTable^ ourtable=gcnew DataTable();
SqlDataAdapter^ ourda = gcnew SqlDataAdapter( sql,con);
try
{
ourda->Fill(ourtable);
this->dataGridView1->DataSource=ourtable;
}
catch(System::Data::SqlClient::SqlException^ ex)
{