河南工业大学嵌入式数据库实验报告.docx
- 文档编号:6072341
- 上传时间:2023-05-09
- 格式:DOCX
- 页数:19
- 大小:259.79KB
河南工业大学嵌入式数据库实验报告.docx
《河南工业大学嵌入式数据库实验报告.docx》由会员分享,可在线阅读,更多相关《河南工业大学嵌入式数据库实验报告.docx(19页珍藏版)》请在冰点文库上搜索。
河南工业大学嵌入式数据库实验报告
河南工业大学实验报告
课程嵌入式数据库系统实验名称实验一SQL语句和命令
院系___信息科学与工程学院___专业班级计科1003班
姓名王相平学号____201046830621
指导老师嵇立安日期
一.实验内容
常用SQL语句和命令的使用,包括:
数据库的创建、表的创建、索引、查询、插入、删除、更新、输出数据库的结果到一个文件中、从文件中导入数据库、视图和模式等
二.实验要求
要求实验报告中有结果截图和源代码。
实验报告中要说明实验的操作步骤。
建立一个不少于7条记录的数据库,数据库的内容任意,同学之间数据库不能雷同。
三.实验过程及结果
PRAGMAforeign_keys=OFF;
BEGINTRANSACTION;
CREATETABLEa(eint);
INSERTINTO"a"VALUES(3);
INSERTINTO"a"VALUES
(1);
INSERTINTO"a"VALUES
(2);
INSERTINTO"a"VALUES(4);
INSERTINTO"a"VALUES(5);
INSERTINTO"a"VALUES(6);
INSERTINTO"a"VALUES(7);
COMMIT;
数据库的创建
表的创建
索引
查询数据
插入数据
删除数据
更新数据
输出数据库的结果到一个文件中
从文件中导入数据库
视图
四.实验中的问题及心得
通过这个实验让我熟悉了常用SQL语句和命令的使用。
河南工业大学实验报告
课程嵌入式数据库系统实验名称实验二从TCL脚本使用SQLite
院系___信息科学与工程学院___专业班级计科1003班
姓名王相平学号____201046830621
指导老师嵇立安日期
一.实验内容
从TCL语言创建SQLite数据库,进行数据库连接、关闭、创建表、插入、删除、修改等操作。
二.实验要求
要求实验报告中有结果截图和源代码。
实验报告中要说明实验的操作步骤。
建立一个不少于7条记录的数据库,数据库的内容任意,同学之间数据库不能雷同。
三.实验过程及结果
进行数据库连接:
loadtclsqlite3.dll
创建SQLite数据库:
sqlitedbscores.db
关闭数据库
closescores.db
创建表:
dbeval{
CREATETABLEscores(
idTEXTPRIMARYKEY,
nameTEXT,
chineseNUMERIC,
englishNUMERIC,
mathNUMERIC
)
}
插入:
dbeval{
INSERTINTOscores(id,name,chinese,english,math)
VALUES('A0001','coopermaa',90,100,100);
}
dbeval{
INSERTINTOscores(id,name,chinese,english,math)
VALUES('A0002','mei',95,90,92)
}
dbeval{
INSERTINTOscores(id,name,chinese,english,math)
VALUES('A0003','XO',99,99,99)
}
修改:
dbeval{
UPDATEscoresSETchinese=100WHEREname='coopermaa'
}
删除:
dbeval{
deletefromscoreswhereid=’A0001’
}
四.实验中的问题及心得
本次实验是使用tcl访问SQLite数据库的,通过这次实验也说明SQLite数据库虽然很小但是在功能上却和其他的数据没什么两样,具备其他大型数据库的各种操作,同时通过这次实验,让我对使用tcl访问SQLite数据库有了进一步的了解。
河南工业大学实验报告
课程嵌入式数据库系统实验名称实验三用C或C++程序调用SQLite
院系___信息科学与工程学院专业班级计科1003班
姓名王相平学号____201046830621
指导老师嵇立安日期
一.实验内容
从C或C++语言创建SQLite数据库,进行数据库连接、关闭、创建表、插入、删除、修改等操作。
二.实验要求
要求实验报告中有结果截图和源代码。
实验报告中要说明实验的操作步骤。
建立一个不少于7条记录的数据库,数据库的内容任意,同学之间数据库不能雷同。
三.实验过程及结果
源代码
//打开数据库
sqlite3*db=NULL;
intresult=sqlite3_open("c:
\\abc.db",&db);
if(SQLITE_OK!
=result)
{
return;
}
//关闭数据库
sqlite3_close(db);
1、创建表
假设创建如下图所示的数据库:
其SQL语句为:
CREATETABLE[MyTable]([ID]INTEGERPRIMARYKEYNOTNULL,[MyText]TEXTNULL,[MyDate]DATENOTNULL,[MyTime]TIMENULL,[MyFloat]FLOATNULL)
2、插入记录
下面是插入一条记录的示例SQL语句。
INSERTINTOMyTable(MyText,MyDate,MyTime,MyFloat)VALUES('---上班好远!
','2012-03-23','9:
00:
00',1000)
3、更新记录
下面是更新若干条记录的示例SQL语句。
UPDATEMyTableSETMyText='真的吗?
',MyTime='10:
00:
00'WHEREID>=0ANDID<=20
4、删除记录
下面是删除若干条记录的示例SQL语句。
DELETEFROMMyTableWHEREID>=3ANDID<=5
四.实验中的问题及心得
以前的SQLserver做过本实验,在这里也就轻车熟路了。
本次实验是用c访问SQLite数据库的,通过此次试验,让我对使用SQLite数据库有了更深入的了解,为以后掌握SQLite数据库做好了准备。
河南工业大学实验报告
课程嵌入式数据库系统实验名称实验四任选语言实现数据库
院系___信息科学与工程学院___专业班级__计科1003班
姓名王相平学号____201046830621
指导老师嵇立安日期
一.实验内容
从以下语言中任选一种编辑程序,实现数据库操作
Perl,python,ruby,java,php使用其中一种语言创建SQLite数据库,进行数据库连接、关闭、创建表、插入、删除、修改等操作。
二.实验要求
要求实验报告中有结果截图和源代码。
实验报告中要说明实验的操作步骤。
建立一个不少于7条记录的数据库,数据库的内容任意,同学之间数据库不能雷同。
三.实验过程及结果
图一创建表和插入数据之后截图
图二更改数据库后的截图
图三数据删除后的结果
源代码如下:
importjava.sql.*;
publicclassDBHelper{
publicstaticConnectioncon=null;
static{
try{
Class.forName("org.sqlite.JDBC");
con=DriverManager.getConnection("jdbc:
sqlite:
test.db");
if(con==null){
System.out.println("数据库连接失败");
}
}catch(Exceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
}
publicvoidcreateTable()throwsException{
StringcreateSql="createtableifnotexistsstudent(stu_idvarchar(20),namevarchar(10),scoreinteger)";
Statementstm=con.createStatement();
intretCreate=stm.executeUpdate(createSql);
if(retCreate>0){
System.out.println("数据库表建立成功");
}else{
System.out.println("数据库表建立失败");
}
stm.close();
}
publicintinsertRecord(StringstuID,Stringname,intscore)throwsException{
StringinsertSql="insertintostudentvalues(?
?
?
)";
PreparedStatementpstm=con.prepareStatement(insertSql);
pstm.setString(1,stuID);
pstm.setString(2,name);
pstm.setInt(3,score);
intretValue=pstm.executeUpdate();
if(retValue>0){
System.out.println("数据插入成功");
}else{
System.out.println("数据插入失败");
}
pstm.close();
return0;
}
publicintdeleteRecord(StringstuID)throwsException{
StringdelSql="deletefromstudentwherestu_id=?
";
PreparedStatementpstm=con.prepareStatement(delSql);
pstm.setString(1,stuID);
intretValue=pstm.executeUpdate();
if(retValue>0){
System.out.println("数据删除成功");
}else{
System.out.println("数据删除失败");
}
pstm.close();
return0;
}
publicintchangeRecord(StringstuID,Stringcolumn,Stringvalue)throwsException{
StringchangeSql="updatestudentset"+column+"=?
wherestu_id=?
";
PreparedStatementpstm=con.prepareStatement(changeSql);
pstm.setString(1,value);
pstm.setString(2,stuID);
intretValue=pstm.executeUpdate();
if(retValue>0){
System.out.println("数据更改成功");
}else{
System.out.println("数据更改失败");
}
pstm.close();
return0;
}
publicvoidqueryRecord()throwsException{
StringquerySql="select*fromstudent";
PreparedStatementpstm=con.prepareStatement(querySql);
ResultSetrs=pstm.executeQuery();
System.out.println("查询到的数据如下");
System.out.println("学号姓名成绩");
while(rs.next()){
Stringid=rs.getString("stu_id");
Stringname=rs.getString("name");
intscore=rs.getInt("score");
System.out.printf("%s%4s%6d%n",id,name,score);
}
}
publicstaticvoidmain(Stringargv[])throwsException{
DBHelperdb=newDBHelper();
//db.createTable();
//db.insertRecord("125","wang",78);
db.deleteRecord("127");
//db.changeRecord("125","stu_id","127");
db.queryRecord();
}
}
四.实验中的问题及心得
以前也做过类似实验,所以本次实验我就采用JAVA通过JDBC访问SQLite数据库的,实验内容很简单,通过这次实验也证明了SQLite数据库虽然很小但是在功能上却和其他的数据没什么两样,具备其他大型数据库的各种操作,同时通过这次实验对SQLite数据库有了进一步的了解。
河南工业大学实验报告
课程嵌入式数据库系统实验名称实验五android通讯录
院系___信息科学与工程学院___专业班级计科1003班
姓名王相平学号____201046830621
指导老师嵇立安日期
一.实验内容
编写一个android环境下的小通信录程序,数据储存使用SQLite。
通信录包含六条以上的记录,字段有名字,地址,电话等。
二.实验要求
要求实验报告中有结果截图和源代码。
实验报告中要说明实验的操作步骤。
建立一个不少于7条记录的数据库,数据库的内容任意,同学之间数据库不能雷同。
三.实验过程及结果
图一程序运行后的结果
主要的数据库操作源代码如下:
packageedu.hrbeu.SQLiteDemo;
importandroid.app.Activity;
importandroid.os.Bundle;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.widget.Button;
importandroid.widget.EditText;
importandroid.widget.TextView;
publicclassSQLiteDemoextendsActivity{
/**Calledwhentheactivityisfirstcreated.*/
privateDBAdapterdbAdepter;
privateEditTextnameText;
privateEditTextageText;
privateEditTextheightText;
privateEditTextidEntry;
privateTextViewlabelView;
privateTextViewdisplayView;
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
nameText=(EditText)findViewById(R.id.name);
ageText=(EditText)findViewById(R.id.age);
heightText=(EditText)findViewById(R.id.height);
idEntry=(EditText)findViewById(R.id.id_entry);
labelView=(TextView)findViewById(R.id.label);
displayView=(TextView)findViewById(R.id.display)
ButtonaddButton=(Button)findViewById(R.id.add);
ButtonqueryAllButton=(Button)findViewById(R.id.query_all);
ButtonclearButton=(Button)findViewById(R.id.clear);
ButtondeleteAllButton=(Button)findViewById(R.id.delete_all);
ButtonqueryButton=(Button)findViewById(R.id.query);
ButtondeleteButton=(Button)findViewById(R.id.delete);
ButtonupdateButton=(Button)findViewById(R.id.update);
addButton.setOnClickListener(addButtonListener);
queryAllButton.setOnClickListener(queryAllButtonListener);
clearButton.setOnClickListener(clearButtonListener);
deleteAllButton.setOnClickListener(deleteAllButtonListener);
queryButton.setOnClickListener(queryButtonListener);
deleteButton.setOnClickListener(deleteButtonListener);
updateButton.setOnClickListener(updateButtonListener);
dbAdepter=newDBAdapter(this);
dbAdepter.open();
}
OnClickListeneraddButtonListener=newOnClickListener(){
publicvoidonClick(Viewv){
Peoplepeople=newPeople();
people.Name=nameText.getText().toString();
people.Age=ageText.getText().toString();
people.Height=heightText.getText().toString();
longcolunm=dbAdepter.insert(people);
if(colunm==-1){
labelView.setText("添加过程错误!
");
}else{
labelView.setText("成功添加数据,ID:
"+String.valueOf(colunm));
}
}
};
OnClickListenerqueryAllButtonListener=newOnClickListener(){
publicvoidonClick(Viewv){
People[]peoples=dbAdepter.queryAllData();
if(peoples==null){
labelView.setText("数据库中没有数据");
return;
}
labelView.setText("数据库:
");
Stringmsg="";
for(inti=0;i msg+=peoples[i].toString()+"\n"; } displayView.setText(msg); } }; OnClickListenerclearButtonListener=newOnClickListener(){ publicvoidonClick(Viewv){ displayView.setText(""); } }; OnClickListenerdeleteAllButtonListener=newOnClickListener(){ publicvoidonClick(Viewv){ dbAdepter.deleteAllData(); Stringmsg="数据全部删除"; labelView.setText(msg); } }; OnClickListenerqueryButtonListener=newOnClickListener(){ publicvoidonClick(Viewv){ intid=Integer.parseInt(idEntry.getText().toString()); People[]peoples=dbAdepter.queryOneData(id); if(peoples==null){ labelView.setText("数据库中没有ID为"+String.valueOf(id)+"的数据"); return; } labelView.setText(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 河南 工业大学 嵌入式 数据库 实验 报告