VC++环境下连接SQL_Server数据库方法-实验六

VC++环境下连接SQL_Server数据库方法-实验六
VC++环境下连接SQL_Server数据库方法-实验六

VC++环境下连接SQL Server数据库方法指导

实验类型:设计型

一、实验环境

1.Windows XP操作系统;

2.VC++6.0开发环境;

3.SQL server 2000数据库管理系统。

二、实验内容和要求

利用VC开发应用程序,要求能够通过界面完成对数据库中数据的查询、插入、删除以及修改。

三、实验原理

VC访问SQL Server数据库,常用的方法有两种:通过ODBC连接和通过ADO连接。下面分别介绍一下。

采用ODBC方式要求先创建ODBC数据源,应用程序通过数据源与数据库连接;并且在创建应用程序时,只能是基于单文档或多文档,而无法直接创建基于对话框的应用程序。

采用ADO方式无需创建数据源,应用程序可通过ADO直接与数据库连接;ADO方式可以创建基于对话框的应用程序。

两种方式都要在应用程序中添加代码以完成相应的初始化功能。

四、实验步骤

下面通过两个例子分别介绍基于ODBC方式和基于ADO方式的实验步骤。

1 基于ODBC方式的实验步骤

(1)在SQL Server2000中创建数据库student,该数据库中有学生表s用来存放学生信息。

s表的创建方法在此不详述。

(2)创建ODBC数据源

“开始”--〉“设置”--〉“控制面板”—〉“管理工具”—〉“数据源(ODBC)”,打开

之后出现如图1所示窗口。

图1

点击“添加”按钮,出现图2。

图2

选择SQL Server,点击“完成”,出现图3。

图3

名称中填写所创建的数据源的名称,本例中为student,描述可以不填。因为SQL Server

的服务器和客户端均安装在本地计算机上,所以服务器为(local)。如果本地计算机上只安装了客户端,服务器安装在另外的机器上,服务器为另一台机器的名称。

点击“下一步”,出现图4。

图4

SQL Server如何验证ID的真伪,使用哪种方法要看安装SQL Server2000时选择的是哪种验证方式。如果是Windows验证,选择使用网络登录ID的Windows NT验证;如果是混合验证模式则要选择下面一种。本例中采用Windows验证。进入数据库无需另外的用户名和密码。

点击“下一步”,出现图5。

图5

这里要更改默认的数据库,默认情况下数据源所连接的数据库为master,这里要改为student数据库。

点击“下一步”,出现图6。

图6

这里无需修改,点击“完成”出现图7。

图7

点击“测试数据源”,如果测试成功说明数据源已成功创建。

(3)创建VC应用程序。

打开VC++6.0,新建工程,如图8所示。选择MFC AppWizard(exe),工程名为exec1,

存放在D盘实验文件夹里。

图8

点击“确定”,在出现的窗口中选择“单文档”,点击“下一步”,出现图9。

图9

这里选择“查看数据库不使用文件支持”,还要选择数据源,点击“数据源…”,弹出如图10所示窗口。

图10

选择“student”数据源,点击“OK”,在弹出的窗口中选择表dbo.s,点击“OK”返回

图9所示的界面。以后的创建步骤中没有需要修改的地方可以直接点击完成。这样工程exec1就创建完成了,并且通过数据源与数据库发生了关联。

创建好的工程可以运行,结果如图11所示。

图11

(4)界面设计

在工作区左边的树型结构中,选择ResourceView,展开Dialog节点,双击

IDD_EXEC1_FORM,打开该对话框。在这里添加所需控件。如图12所示。

图12

此时运行程序,结果如图13所示。

图13

从界面可以看出程序要完成的功能。完整的程序运行后,界面默认显示表中的第一条数据,点击工具栏中的“下一记录”可以显示下一条记录;点击“删除”按钮可将当前显示的数据从库中删除;点击“清除”按钮,将所有编辑框清空;在界面输入学生信息,点击“添加”按钮可将此学生信息输入至数据库;点击“修改”按钮可修改当前显示的学生信息。

为界面上的编辑框和按钮添加变量和函数。在界面右键单击,选择“建立类向导”,弹出如图14所示窗口。

图14

本例中需要为编辑框IDC_AGE, IDC_COMMENT, IDC_DEPARTMENT, IDC_NAME, IDC_SNO 添加变量。以IDC_AGE 为例,点击“ADD Variable ”弹出如图15所示窗口。

15

在下拉框中选择m_pSet->m_age为变量名,这里的变量是与数据库表s中的字段相对应的,变量类型也与s中的字段类型对应。其它变量的添加方法相同。

为按钮添加函数比较简单,双击按钮即可。添加的函数在exec1View.cpp文件中。(5)代码设计

“清除”按钮所添加的函数为OnClear(),具体代码如下:

//名称:OnClear

//功能:清除编辑框中的内容

void CExec1View::OnClear()

{

CWnd* c1;

c1= CWnd::GetDlgItem(IDC_SNO);//获得编辑框

c1->SetWindowText(""); //将编辑框置空

c1= CWnd::GetDlgItem(IDC_NAME);

c1->SetWindowText("");

c1= CWnd::GetDlgItem(IDC_DEPARTMENT);

c1->SetWindowText("");

c1= CWnd::GetDlgItem(IDC_AGE);

c1->SetWindowText("");

c1= CWnd::GetDlgItem(IDC_COMMENT);

c1->SetWindowText("");

}

“添加”按钮所添加的函数为OnAdd(),具体代码如下:

//名称:OnAdd

//功能:插入一条记录

void CExec1View::OnAdd()

{

// TODO: Add your control notification handler code here

//判断年龄是否合适

CString strAge;

GetDlgItem(IDC_AGE)->GetWindowText(strAge);

int nAge = atoi(strAge.GetBuffer(0));

if(nAge<0 || nAge>120)

{

AfxMessageBox("输入的年龄不符合实际!");

return;

}

//呈增加状态

m_pSet->AddNew();

UpdateData();

//更新数据库

m_pSet->Update();

//重新获得数据

m_pSet->Requery();

UpdateData(FALSE);

}

“删除”按钮所添加的函数为OnDelete(),具体代码如下:

//名称:OnDelete

//功能:删除当前记录

void CExec1View::OnDelete()

{

// TODO: Add your control notification handler code here

//发出删除命令

m_pSet->Delete();

//重新获得记录集

m_pSet->Requery();

UpdateData(FALSE);

}

“修改”按钮所添加的函数为OnEdit(),具体代码如下:

//名称:OnEdit

//功能:修改当前记录

void CExec1View::OnEdit()

{

// TODO: Add your control notification handler code here

//判断年龄是否合适

CString strAge;

GetDlgItem(IDC_AGE)->GetWindowText(strAge);

int nAge = atoi(strAge.GetBuffer(0));

if(nAge<0 || nAge>120)

{

AfxMessageBox("输入的年龄不符合实际!");

return;

}

//呈编辑状态

m_pSet->Edit();

UpdateData();

//更新数据库

m_pSet->Update();

//重新获得记录集

m_pSet->Requery();

UpdateData(FALSE);

}

(6)运行结果

图16

2基于ADO方式的实验步骤

此例中所用数据库与上例中相同;

此例中无需创建数据源。

(1)创建VC应用程序

打开VC++6.0,新建工程。选择MFC AppWizard(exe),工程名为exec2,存放在D盘

实验文件夹里。点击“确定”,在弹出的窗口中选择“基本对话框”,以后的步骤没有需要修改的地方,可以直接点击“完成。”这样一个基于基本对话框的工程就创建好了。(2)界面设计

在工作区左边的树型结构中,选择ResourceView,展开Dialog节点,双击

IDD_EXEC2_DIALOG,打开该对话框。在这里添加所需控件。如图17所示。

图17

为编辑框和列表框添加变量。在界面右键单击,选择“建立类向导”,弹出如图18所示

窗口。

图18

本例中需要为编辑框IDC_AGE, IDC_COMMENT, IDC_DEPT, IDC_NAME, IDC_SNO,列表框IDC_LIST添加变量。以IDC_AGE为例,点击“ADD Variable”弹出如图19所示窗口。

图19

这里变量名为m_age,类型可从下拉框里选。添加变量完成之后类向导如图20所示。

图20

为按钮添加函数,双击按钮可为其添加函数,在exec2Dig.cpp文件里。

(3)与ADO相关的代码设计

引入ADO库文件,使用ADO前必须在工程的StdAfx.h头文件里用直接引入符号#import

引入ADO库文件,以使编译器能正确编译。代码如下所示:

//加入ADO支持库

#import "c:\program files\common files\system\ado\msado15.dll" \

no_namespace \

rename ("EOF", "adoEOF")

定义ADO连接变量指针,在exec2.h文件的class CExec2App : public CwinApp方法中

添加代码如下:

// 定义ADO连接变量指针

_ConnectionPtr m_pConnection;

该指针为整个应用程序共享,所以放在public下面。

定义ADO连接、命令、记录集变量指针,在exec2Dlg.h文件的class CExec2Dlg : public

CDialog方法中添加如下代码:

// 定义ADO连接、命令、记录集变量指针

_ConnectionPtr m_pConnection;

_CommandPtr m_pCommand;

_RecordsetPtr m_pRecordset;

该指针为整个应用程序共享,所以放在public下面。

初始化OLE/COM库环境。必须注意的是,ADO库是一组COM动态库,这意味应用

程序在调用ADO前,必须初始化OLE/COM库环境。在MFC应用程序里,一个比较好的方法是在应用程序主类的InitInstance成员函数里初始化OLE/COM库环境。

在本例中,在exec2.cpp文件的BOOL CExec2App::InitInstance()成员函数里添加如下代码:

//初始化COM,创建ADO连接等操作

AfxOleInit();

m_pConnection.CreateInstance(__uuidof(Connection));

//在ADO操作中建议语句中要常用try...catch()来捕获错误信息,

//因为它有时会经常出现一些想不到的错误

try

{

//打开本地Sql Server库student

m_pConnection->Open("driver={SQL Server}; Server=lenovo-pc;Database=student;UID="";PWD=""",

"","",adModeUnknown);

//Server后是服务器的计算机名,Database后是数据库名

//这里使用的windows验证,没有设置用户名和密码,

//如果是windows和SQL server混合验证,UID="";PWD=""要写入相应的用户名和密码

}

catch(_com_error e)

{

AfxMessageBox("数据库连接失败!");

return FALSE;

}

在exec2Dlg.cpp文件中添加代码。

在#endif下面添加如下代码:

extern CExec2App theApp; // 在此引用应用类中的theApp来获取库连接指针

在BOOL CExec2Dlg::OnInitDialog()函数中添加如下代码:

// TODO: Add extra initialization here

//使用ADO创建数据库记录集

m_pRecordset.CreateInstance(__uuidof(Recordset));

// 在ADO操作中建议语句中要常用try...catch()来捕获错误信息,

// 因为它有时会经常出现一些想不到的错误

try

{

m_pRecordset->Open("SELECT * FROM s", // 查询s表中所有字段

theApp.m_pConnection.GetInterfacePtr(), // 获取库接库的IDispatch指针

adOpenDynamic,

adLockOptimistic,

adCmdText);

}

catch(_com_error *e)

{

AfxMessageBox(e->ErrorMessage());

}

至此,与ADO相关的代码都已添加完了。下面在exec2Dlg.cpp文件中添加应用代码。

(4)与功能相关的代码设计

在界面上用到列表框,当鼠标点击列表框的某一行时,其中的数据能够在编辑框中显示

出来,这要用到列表框的一个函数。添加此函数的方法如下:摁住Ctrl和w键,进入类向导,如图21所示。

图21

选择IDC_LIST,在右边的Messages下面选择LBN_SELCHANGE,然后点击“Add Function”按钮,最后点击“确定”按钮,即为列表框添加了此函数。具体代码如下://名称:OnSelchangeList

//功能:当每次选择新的记录时,都会移动指针到新的记录位置并将值显示出来

void CExec2Dlg::OnSelchangeList()

{

int curSel = m_list.GetCurSel();

_variant_t var,varIndex;

if(curSel < 0)

return;

try

{

// 先将指针移向第一条记录,然后就可以相对第一条记录来随意移动记录指针

m_pRecordset->MoveFirst();

m_pRecordset->Move(long(curSel));

var = m_pRecordset->GetCollect("sname");

if(var.vt != VT_NULL)

m_sname = (LPCSTR)_bstr_t(var);

var = m_pRecordset->GetCollect("age");

if(var.vt != VT_NULL)

m_age=(LPCSTR)_bstr_t(var);

var = m_pRecordset->GetCollect("sno");

if(var.vt != VT_NULL)

m_sno = (LPCSTR)_bstr_t(var);

var = m_pRecordset->GetCollect("dept");

if(var.vt != VT_NULL)

m_dept = (LPCSTR)_bstr_t(var);

var = m_pRecordset->GetCollect("comment");

if(var.vt != VT_NULL)

m_comment = (LPCSTR)_bstr_t(var);

UpdateData(false);

}

catch(_com_error *e)

{

AfxMessageBox(e->ErrorMessage());

}

}

将数据库中的数据显示在列表框中,添加函数ListData()。添加的方法是,在工作区左

边的树型结构中,选择ClassView,右键单击CExec2Dlg,在弹出的菜单中选择Add Member Function,出现如图22所示的窗口,类型为void,函数描述为ListData()。

图22

此函数的具体代码如下:

//名称:ListData

//功能:将数据库中的数据显示在列表框中

void CExec2Dlg::ListData()

{

_variant_t var;

CString strname,strage,strsno,strdept,strcom;

//清空列表框

m_list.ResetContent();

strname=strage=strsno=strdept=strcom="";

//在ADO操作中建议语句中要常用try...catch()来捕获错误信息,//因为它有时会经常出现一些想不到的错误。

try

{

if(!m_pRecordset->BOF)

m_pRecordset->MoveFirst();

else

{

AfxMessageBox("表内数据为空");

return;

}

// 读入库中各字段并加入列表框中

while(!m_pRecordset->adoEOF)

{

var = m_pRecordset->GetCollect("sno");

if(var.vt != VT_NULL)

strsno = (LPCSTR)_bstr_t(var);

var = m_pRecordset->GetCollect("sname");

if(var.vt != VT_NULL)

strname = (LPCSTR)_bstr_t(var);

var = m_pRecordset->GetCollect("age");

if(var.vt != VT_NULL)

strage = (LPCSTR)_bstr_t(var);

var = m_pRecordset->GetCollect("dept");

if(var.vt != VT_NULL)

strdept = (LPCSTR)_bstr_t(var);

var = m_pRecordset->GetCollect("comment");

if(var.vt != VT_NULL)

strcom = (LPCSTR)_bstr_t(var);

m_list.AddString( strsno + " --> " +strname + " --> "+strage+ " --> "+ strdept+ " --> "+ strcom);

m_pRecordset->MoveNext();

}

// 默认列表指向第一项,同时移动记录指针并显示

m_list.SetCurSel(0);

OnSelchangeList();

}

catch(_com_error *e)

{

AfxMessageBox(e->ErrorMessage());

}

}

插入按钮对应的函数代码如下:

//名称:OnWritedata

//功能:将编辑框中输入的学生信息插入到s表中

void CExec2Dlg::OnWritedata()

{

UpdateData();

if(m_sname == "" || m_sno == "")

{

AfxMessageBox("学号和姓名信息不能为空!");

return;

}

//在ADO操作中建议语句中要常用try...catch()来捕获错误信息,//因为它有时会经常出现一些想不到的错误。

try

{

// 写入各字段值

m_pRecordset->AddNew();

m_pRecordset->PutCollect("sno", _variant_t(m_sno));

m_pRecordset->PutCollect("sname", _variant_t(m_sname));

m_pRecordset->PutCollect("age", atol(m_age));

m_pRecordset->PutCollect("dept", _variant_t(m_dept));

m_pRecordset->PutCollect("comment", _variant_t(m_comment));

m_pRecordset->Update();

AfxMessageBox("插入成功!");

// 更新显示其库内容

int nCurSel = m_list.GetCurSel();

ListData();

m_list.SetCurSel(nCurSel);

// 移动记录指针到新的位置

OnSelchangeList();

}

catch(_com_error *e)

{

AfxMessageBox(e->ErrorMessage());

}

}

修改按钮对应的函数代码如下:

//名称:OnModify

//功能:修改学生信息

void CExec2Dlg::OnModify()

{

UpdateData(); // 更新对话框数据

if(m_list.GetCount() == 0)

{

AfxMessageBox("表中记录数为空!");

return;

}

else if(m_list.GetCurSel() < 0 || m_list.GetCurSel() > m_list.GetCount()) m_list.SetCurSel(0);

// 修改当前记录的字段值

try

{

m_pRecordset->PutCollect("sno", _variant_t(m_sno));

m_pRecordset->PutCollect("sname", _variant_t(m_sname));

m_pRecordset->PutCollect("age", atol(m_age));

m_pRecordset->PutCollect("dept", _variant_t(m_dept));

m_pRecordset->PutCollect("comment", _variant_t(m_comment));

m_pRecordset->Update();

// 重新读入库记录更新显示

int nCurSel = m_list.GetCurSel();

ListData();

m_list.SetCurSel(nCurSel);

// 移动记录指针到新的位置

OnSelchangeList();

}

catch(_com_error *e)

{

AfxMessageBox(e->ErrorMessage());

}

}

删除按钮对应的函数代码如下:

//名称:OnDelete

//功能:删除选中的学生信息

void CExec2Dlg::OnDelete()

{

if(m_list.GetCount() == 0)

return;

else if(m_list.GetCurSel() < 0 || m_list.GetCurSel() > m_list.GetCount()) m_list.SetCurSel(0);

try

{

// 删除当前行记录

m_pRecordset->Delete(adAffectCurrent);

m_pRecordset->Update();

// 删除列表中当前值

int nCurSel = m_list.GetCurSel();

m_list.DeleteString(nCurSel);

if(nCurSel == 0 && (m_list.GetCount() != 0))

m_list.SetCurSel(nCurSel);

else if(m_list.GetCount() != 0)

m_list.SetCurSel(nCurSel-1);

// 移动记录指针到新的位置

OnSelchangeList();

}

catch(_com_error *e)

{

AfxMessageBox(e->ErrorMessage());

}

}

查询按钮对应的函数代码如下:

//名称:OnQuery()

//功能:按照学号和姓名查询学生信息,如果只输入学号则只按照学号查询//只输入姓名则只按照姓名查询,两者都没有输入则查询所有学生信息

void CExec2Dlg::OnQuery()

{

UpdateData(TRUE);

//构造Sql语句

//为简单考虑,这里只把学号和姓名作为查询条件

CString strSql;

if(m_sname != "" && m_sno != "")

strSql.Format("SELECT * FROM s WHERE sname = '%s' AND sno = '%s'",

m_sname,m_sno);

else if(m_sname != "" && m_sno == "")

strSql.Format("SELECT * FROM s WHERE sname = '%s'",m_sname);

else if(m_sname == "" && m_sno != "")

strSql.Format("SELECT * FROM s WHERE sno = '%s'",m_sno);

else

strSql = "SELECT * FROM s";

try

{

//先关闭已经打开的记录集对象

m_pRecordset->Close();

//根据新的Sql查询语句,重新打开记录集对象

m_pRecordset->Open(strSql.AllocSysString(),

theApp.m_pConnection.GetInterfacePtr(),

adOpenDynamic,

adLockOptimistic,

adCmdText);

}

catch(_com_error *e)

{

AfxMessageBox(e->ErrorMessage());

}

//将查询后得到的新记录集显示出来

ListData();

}

刷新按钮对应的函数代码如下:

//名称:OnRefresh

//功能:刷新编辑框和列表框

void CExec2Dlg::OnRefresh()

{

m_sno="";

m_sname="";

m_age="";

m_dept="";

m_comment="";

实验室安全与环保题库 第四章

对错对错对错对错对错对错对错对错

对错对错对错对错对错对错对错对错

错 对于植物组织、水果、花卉、木材等废弃物可以装于密闭容器内,在60-120后,做焚烧或深埋处理。 错 植物活体或种子应装于密闭容器内,在60-120℃下烘干1-2 h 错 错 错 错 错 微生物实验室内无自动饮水机,学生做实验时可自带饮料到微生物实验室内饮用 错 生物实验室安全包括( )。 水电安全 化学试剂及放射性物质安全 生物安全 ABCD

在实验中吸取含微生物活体的液体时,正确的操作是( )。 +带棉塞电动移液泵+带棉塞 的移液管 移液器+带滤芯 的吸头 带棉塞的移液管 +口吸取ABC )使用后将其按感染性废弃物处理。 在工作台面应当放置 一块吸有消毒液的吸水纸 在工作台面应当放置一块 实验室专用塑料覆膜一次性台 布 一张 废报纸 ABC 在微生物学实验不允许()。 眼及面部 饮食和储存食 品 化 妆 嘴含钢笔、 ABCD 在进行微生物操作时为避免感染性物质的注入应该()。 减少使用 注射器和针头 使用完注射器和针 头后将套上针头护套 使用注射器和针头后不得 将针头护套回套用过的注射器 ABD 显微镜观察存在微生物和病毒的血液、唾液和粪便的标本时应该()。※ 用镊子拿取 这些标本 妥善 储存 清除污染和/或高压 灭菌后再丢弃 BCD 操作存在微生物和病毒的组织标本正确的说法有()。※ 石蜡切片优先于冰 冻切片 冰冻切片优先于石 蜡切片 冰冻切片时操作者 要戴口罩 ABD 应该在实验室门上贴上国际通用的生物危害警告标志的实验室有()。※1级 BSL-1) 生物安全2级 (BSL-2) 生物安全3级 (BSL-3) 生物安全4级 (BSL-4)

空间分析实验指导书

空间分析实验指导书 黎华 武汉理工大学资环学院 2011年9月

目录 实验一、市区择房分析 (2) 实验二、最短路径分析 (3) 实验三、寻找最佳路径 (5) 实验四(综合实验一)、学校选址规划 (7)

实验一、市区择房分析 1、背景 如何找到环境好、购物方便、小孩上学方便的居住区地段是购房者最关心的问题,因此购房者就需要从总体上对商品房的信息进行研究分析,选择最适宜的购房地段。 2、数据 ●城市市区交通网络图(network.shp) ●商业中心分布图(marketplace.shp) ●名牌高中分布图(school.shp) ●名胜古迹分布图(famous place.shp) 3、步骤 1)所寻找的区域应该满足以下条件 ●离主要交通要道200米之外,以减少噪音污染 ●在商业中心的服务范围内,服务范围以商业中心规模的大小(属性字段YUZHI)来 确定 ●距名牌高中在750米内,以便小孩上学便捷 ●距名胜古迹500米内,环境幽雅 2)对每个条件进行缓冲区分析,得到各个条件所对应的区域 3)运用空间叠置分析对上述4个图层进行叠加,得到适合的购房地段

实验二、最短路径分析 1.背景:在现实生活中寻求最短,最快,提高效率有着重大意义,而交通网络中要素的设置如权重的改变和阻强的设置对最短路径的选择也有着很大的影响,研究这些因子的改变究竟对最短路径能造成多大的影响,对于现实也有一定的指导意义。 2.目的:学会用ArcGIS9 进行各种类型的最短路径分析,了解内在的运算机理。 3.数据:试验数据位于\Chp7\Ex2,请将练习拷贝至E:\Chp7\Ex2\ 一个GeoDatabase 地理数据库:City.mdb,内含有城市交通网、超市分布图,家庭住址以及网络关系。 4.要求:应该能够给出到达指定目的地的路径选择方案根据不同的权重要求得到不同的最佳路径,并给出路径的长度;根据需求找出最近的设施的路径,这里是以超市为例。 (1)在网络中指定一个超市,要求分别求出在距离、时间限制上从家到超市的最佳路径。 (2)给定访问顺序,按要求找出从家经逐个地点达到目的地的最佳路径。 5.操作步骤: 首先打开ArcMap选择E:\Chp7\Ex2\city.mdb再双击后选择将整个要素数据集city加载进来。然后将place 点状要素以HOME 字段属性值进行符号化,1 值是家,0 值是超市,(1)无权重最佳路径的选择 1)在设施网络分析工具条上,点选旗标和障碍工具板下拉箭头,将旗标放在家和想要去的超市点上。 2)确认在Analysis 下拉菜单中的Options 按钮打开的Analysis Options 对话框中的weight 和weight filter 标签项全部是none,这样使得进行的最短路径分析是完全按照这个网络自身的长短来确定的。 3)点选追踪工作(Track task)下拉菜单选择寻找路径(find path)。单击solve 键,则最短路径将显示出来,这条路径的总成本将显示在状态列。 (2)加权最佳路径选择 1)在设施网络分析工具条上,点选旗标和障碍工具板下拉箭头,将旗标放在家和想去的某个超市点上。 2)选择Analysis 下拉菜单,选择Option按钮,打开Analysis Option对话框,选择Weight 标签页,在边的权重(edge weight)上,全部选择长度(length)权重属性。 3)点选追踪工作(Track task)下拉菜单选择寻找路径(find path)。单击solve键,则以长度为比重为基础的最短路径将显示出来,这条路径的总成本将显示在状态列。 4)上述是通过距离的远近选择而得到的最佳路径,而不同类型的道路由于道路车流量的问题,有时候要选择时间较短的路径,同样可以利用网络分析进行获得最佳路径。 这里的时间属性是在建网之前,通过各个道路的类型(主干道,次要道等)来给定速度属性,然后通过距离和速度的商值确定的,并将其作为属性设定于每个道路上,这里没有考虑红灯问题以及其他因素,而是一种理想情况,不过可以将其他的要素可以逐渐加入来完善。 (3)按要求和顺序逐个对目的点的路径的实现 1)在设施网络分析工具条上,点选旗标和障碍工具板下拉箭头,将旗标按照车辆访问的顺序逐个放在点上。

实验空间数据库管理及属性编辑实验报告

实验报告 一、实验名称 二、实验目的 三、实验准备 四、实验内容及步骤 五、实验后思考题 班级:资工(基)10901 姓名:魏文风 序号:28 实验二、空间数据库管理及属性编辑 一、实验目的 1.利用ArcCatalog管理地理空间数据库,理解Personal Geodatabse空间数据库模型的有关概念。 2.掌握在ArcMap中编辑属性数据的基本操作。 3.掌握根据GPS数据文件生成矢量图层的方法和过程。 4.理解图层属性表间的连接(Join)或关联(Link)关系。 二、实验准备 预备知识: ArcCatalog 用于组织和管理所有GIS 数据。它包含一组工具用于浏览和查找地理数据、记录和浏览元数据、快速显示数据集及为地理数据定义数据结构。 ArcCatalog 应用模块帮助你组织和管理你所有的GIS 信息,比如地图,数据集,模型,元数据,服务等。它包括了下面的工具: ●浏览和查找地理信息。 ●记录、查看和管理元数据。 ●创建、编辑图层和数据库 ●导入和导出geodatabase 结构和设计。 ●在局域网和广域网上搜索和查找的GIS 数据。

管理ArcGIS Server。 ArcGIS 具有表达要素、栅格等空间信息的高级地理数据模型,ArcGIS支持基于文件和DBMS(数据库管理系统)的两种数据模型。基于文件的数据模型包括Coverage、Shape文件、Grids、影像、不规则三角网(TIN)等GIS数据集。 Geodatabase 数据模型实现矢量数据和栅格数据的一体化存储,有两种格式,一种是基于Access文件的格式-称为Personal Geodatabase,另一种是基于Oracle或SQL Server等RDBMS关系数据库管理系统的数据模型。 GeoDatabase是geographic database 的简写,Geodatabase 是一种采用标准关系数据库技术来表现地理信息的数据模型。Geodatabase是ArcGIS软件中最主要的数据库模型。 Geodatabase 支持在标准的数据库管理系统(DBMS)表中存储和管理地理信息。 在Geodatabase数据库模型中,可以将图形数据和属性数据同时存储在一个数据表中,每一个图层对应这样一个数据表。 Geodatabase可以表达复杂的地理要素(如,河流网络、电线杆等)。比如:水系可以同时表示线状和面状的水系。 基本概念:要素数据集、要素类 数据准备: 数据文件:National.mdb ,GPS.txt (GPS野外采集数据)。 软件准备: ArcGIS Desktop 9.x ---ArcCatalog 三、实验内容及步骤 第1步启动ArcCatalog打开一个地理数据库 当ArcCatalog打开后,点击, 按钮(连接到文件夹). 建立到包含练习数据的连接(比如 “E:\ARCGIS\EXEC2”), 在ArcCatalog窗口左边的目录树中, 点击上面创建的文件夹的连接图标旁的(+)号,双击个人空间数据库-National.mdb。打开它。. 在National.mdb中包含有2个要素数据集、1个关系类和1个属性表第2步预览地理数据库中的要素类 在ArcCatalog窗口右边的数据显示区内,点击“预览”选项页切换到“预览”视图界面。在目录树中,双击数据集要素集-“WorldContainer”,点击要素类-“Countries94”激活它。 在此窗口的下方,“预览”下拉列表中,选择“表格”。现在,你可以看到Countries94的属性表。查看它的属性字段信息。 花几分钟,以同样的方法查看一下National.mdb地理数据库中的其它数据。

数据库实验1-6参考答案

实验一SQL Server使用初步 一、实验目的 1、熟悉SQL Server2000的组成及基本功能。 2、掌握SQL Server2000的登录及注册。 3、掌握SQL Server2000企业管理器的使用方法。 4、熟悉查询分析器的基本使用。 二、实验预习 1、什么是数据库管理系统DBMS?你所知道的DBMS有哪些? 答:DBMS是位于用户和操作系统之间的一层数据管理软件。常见的DBMS主要有:Oracle、db2、SQL Server、MySQL、PostgreSQL、SQLite、Firebird等等。 2、SQL Server 2000(2005)的安装步骤? 答:以企业版安装为例,步骤为: 将企业版安装光盘插入光驱后,出现以下提示框。请选择“安装 SQL Server 2000 组件” 出现下面对话框后,选择 "安装数据库服务器" 。 选择 "下一步",然后选择 "本地计算机" 进行安装。 在 "安装选择" 窗口,选择 "创建新的SQL Server实例..."。对于初次安装的用户,应选用这一安装模式,不需要使用 "高级选项" 进行安装。 "高级选项" 中的内容均可在安装完成后进行调整。 在 "用户信息" 窗口,输入用户信息,并接受软件许可证协议。 在“安装定义”窗口,选择“服务器和客户端工具”选项进行安装。 在“实例名”窗口,选择“默认”的实例名称。 在“安装类型”窗口,选择“典型”安装选项,并指定“目的文件夹”。 在 "服务账号" 窗口,请选择 "对每个服务使用统一账户..." 的选项。 在 "身份验证模式" 窗口,选择 "混合模式..." 选项,并设置管理员"sa"账号的密码。 最后按“下一步”即可完成安装。 检测安装:如果安装成功,应该能成功启动SQL Server,并且能和SQL Server 客户端连接上。 可以通过服务管理器来进行启动。

精编2020年实验室安全与环保模拟考试258题(含标准答案)

2020年实验室安全与环保考核题库258题[含参考答 案] 一、单选题 1.以下止血方法中,哪种不作为首选应用? A.直接压迫止血法 B.止血点压迫止血法 C.填塞止血法 D.止血带止血法 标准答案:D 2.下一代互联网的标志是 A.物流网 B.IPv6 C.云计算 D.IPv4 标准答案:B 3.如果某个网站允许用户能上传任意类型的文件,黑客最可能进行的攻击是 A.拒绝服务攻击 B.口令破解 C.文件上传漏洞攻击 D.SQL注入攻击 标准答案:C 4.计算机病毒对于操作计算机的人,---- A.只会感染,不会致病 B.会感染致病 C.不会感染 D.会有厄运 标准答案:C 5.Windows?NT提供的分布式安全环境又被称为 A.域(Domain) B.工作组 C.对等网 D.安全网

标准答案:A 6.主要用于加密机制的协议是 A.HTTP B.FTP C.TELNET D.SSL 标准答案:D 7.以下哪项不属于死亡的特征? A.呼之不应 B.呼吸停止 C.心跳停止 D.双侧瞳孔散大固定 标准答案:A 8.对等实体鉴别服务是数据传输阶段对()合法性进行判断 A.对方实体 B.对本系统用户 C.系统之间 D.发送实体 标准答案:A 9.如果触电者伤势严重,呼吸停止或心脏停止跳动,应先竭力采用胸外心脏挤压和方法进行施救。 A.按摩 B.点穴 C.人工呼吸 D.送医院 标准答案:C 10.计算机病毒的危害性表现在 A.能造成计算机器件永久性失效 B.影响程序的执行,破坏用户数据与程序 C.不影响计算机的运行速度 D.不影响计算机的运算结果,不必采取措施 标准答案:B 11.使用办公自动化设备时,应当遵守下列规定:

数据库原理实验报告(2)

南京晓庄学院 《数据库原理与应用》 课程实验报告 实验二数据库的创建、管理、备份及还原实验 所在院(系):数学与信息技术学院 班级:11软工转本2 学号: 1130708 11130710 姓名:马琦乔凌杰

1.实验目的 (1)掌握分别使用SQL Server Management Studio图形界面和Transact-SQL语句创建和修改 数据库的基本方法; (2)学习使用SQL Server查询分析窗口接收Transact-SQL语句和进行结果分析。 (3)了解SQL Server的数据库备份和恢复机制,掌握SQL Server中数据库备份与还原的方 法。 2.实验要求 (1)使用SQL Server Management Studio创建“教学管理”数据库。 (2)使用SQL Server Management Studio修改和删除“教学管理”数据库。 (3)使用Transact-SQL语句创建“教学管理”数据库。 (4)使用Transact-SQL语句修改和删除“教学管理”数据库。 (5)使用SQL Server Management Studio创建“备份设备”;使用SQL Server Management Studio对数据库“教学管理”进行备份和还原。 (6)SQL Server 2005数据库文件的分离与附加。 (7)按要求完成实验报告 3.实验步骤、结果和总结实验步骤/结果 (1) 总结使用SQL Server Management Studio创建、修改和册除“TM”(教学管理)数据库的过程。 新建数据库如下图所示: 进入sql server management studio 主界面,选择数据库右击新建数据库。 如何修改数据库 进入sql server management studio 主界面,选择数据库右击属性即可看到数据库信息,可更改数据库基本信息。

数据库技术实验六

实验目的: 1. 掌握存储过程的使用方法; 2. 掌握触发器的实现方法; rjM_K.IGG...o.hpl 叮碍 SUUieryJ.E . itir 血 Ecus ton ardurji 5ex V.'crtYMr ⑷崔 加础ur 怙 Wil True 中憎 0帧 Tnz 3 SJ21121 1

(2)创建存储过程,根据每个员工的学历将收入提高500元 alter proc SA_IN @enuchar(6) as begin update Salary set InCome=InCome+500 from Salary,Employees where Employees.EmployeeID =Salary.EmployeeID and Education=@enu end select In Come from Salary,Employees where Salary.EmployeeID = Employees.EmployeeID and Education ='本科' go execdbo.sa_ in'本科' go select In Come from Salary,Employees where Salary.EmployeeID = Employees.EmployeeID and Educati0门=本科' select In Come from Salary,Employees where Salary.EmployeeID =Employees.EmployeeID ■I■ ■ ■ H 1 20B 2 ; 4 52A&7D1 34&D7 3031.55 inCcwii* 1;2532 2 3293701 4羽曲才 号3521 (3)创建存储过程,使用游标计算本科及以上学历的员工在总员工数中的比例。declare @edu varchar ( 10), @part_cou nt int 5 @all_cou nt int J declare mycursor cursor for select disti net educati on , COUNT( education ) over ( partition by education ) as part_cou nt , COUNT( education ) over () as all count and Educati0门=本科

实验室安全与环保知识(含答案与标注)

实验室安全与环保知识 姓名:杨解解 一判断题30分(30题)(对打√,错打×) 1、金属锂、钠、钾及金属氢化物要注意使用和保存,尤其不能与水直接接触。(√) 2、能相互反应产生有毒气体的废液,不得倒入同一收集桶中。若某种废液倒入收集桶会发生危险,则应单独暂存于一容器中,并贴上标签。(√) 3、对于无机酸类废液,实验室可以收集后进行如下处理:将废酸慢慢倒入过量的含碳酸钠或氢氧化钙的水溶液中(或用废碱)互相中和,再用大量水冲洗。(√) 4、对于含汞、砷、锑、铋等离子的废液,实验室可以先进行如下处理:控制酸度0.3mol/L[H+],使其生成硫化物沉淀。(√) 5、对于含氰废液可以进行如下处理:加入氢氧化钠使pH值10以上,加入过量的高锰酸钾(3%)溶液,使CN根氧化分解。CN根含量高时,可加入过量的次氯酸钙和氢氧化钠溶液。(√) 6、对于含氟废液,直接稀释后倒入水池。(×) 7、取用有毒、有恶臭味的试剂时,要在通风橱中操作;使用完毕后,将瓶塞蜡封,或用生料带将瓶口封严。(√) 8、当发生强碱溅洒事故时,应用固体硼酸粉撒盖溅洒区,扫净并报告有关工作人员。(√) 9、打开氨水、硝酸、盐酸等药品瓶封口时,应先盖上湿布,用冷水冷却后再开瓶塞,以防溅出,尤其在夏天更应注意。(√) 10、对沾染过有毒物质的仪器和用具,实验完毕应立即采取适当方法处理以破坏或消除其毒性。(√) 11、溴(水)是腐蚀性极强的物质,必须在通风柜中操作,并注意安全。(√) 12、盛装废弃危险化学品的容器和受废弃危险化学品污染的包装物,必须按照危险废物进行管理。(√) 13、对危险废物的容器和包装物以及收集、贮存、运输、处置危险废物的设施、场所,必须设置危险废物识别标志。(√) 14、使用危险化学品单位应当制定本单位事故应急救援预案,配备应急救援人员和必要的应急救援器材、设备,并定期组织演练。(√)

实验指导四空间大数据处理与地图投影

实验四空间数据处理与地图投影 一、实验目的 1.掌握空间数据处理(融合、拼接、剪切、交叉、合并)的基本方法,原理。 2.掌握地图投影变换的基本原理与方法。 3.掌握ArcGIS中投影的应用及投影变换的方法、技术,同时了解地图投影及其变换在实际中的应用。 二、实验准备 1.软件准备:ArcGIS 10.2 2.数据准备: (1)stationsll.shp(美国爱达荷州轮廓图) (2)idll.shp(美国爱达荷州滑雪场资料) 以上两个数据是以十进制表示经纬度数值的shapefile (3)snow.txt(美国爱达荷州40个滑雪场的经纬度值) (4)stations.shp,一个已投影的shapefile,用于检验习作2的投影结果 (5)idoutl.shp,基于爱达荷横轴墨卡托坐标系的爱达荷州轮廓图,用于检验习作3投影的正确性 三、实验容与步骤 1.空间数据处理 1.1 裁剪要素 ?在ArcMap中,添加数据“县界.shp”、“Clip.shp”(Clip 中有四个实体) ?开始编辑,激活Clip图层。选中Clip图层中的一个实体(注意不要选中“县界”中的实体!)

图4-1 编辑Clip ?点击按钮,打开ArcToolBox; ?选择“Analysis Tools->Extract”,双击“Clip”,弹出窗口剪切窗口,指定输入实体为“县界”,剪切实体为“Clip”(必须为多边形实体),并指定输出实体类路径及名称,这里请命名为“县界_Clip1” 如图4-5; 图4-2 工具箱

图4-3 剪切窗口 ?依次选中Clip主题中其它三个实体,重复以上的操作步骤,完成操作后将得到共四个图层——“县界_Clip1”,“县界_Clip2”,“县界_Clip3”,“县界_Clip4”); ?操作完成后,一定要“Save Editors”。 图4-4 生成四个剪切图层

空间数据库报告

武汉理工大学 《空间数据库》实验报告 班级:地理1502班姓名:xx 学号:xxx 第1章需求分析 1.1需求概述 图书管理系统主要是适用于学校的,通过oracle数据库进行逻辑处理,实现对图书、读者(学生)、出版社信息的增删改查,核心功能是实现借书和还书操作,亮点是增添了学生可以挂失和修改密码的功能。下面设计的图书管理信息系统,这些功能均已实现。 1.2功能需求 图1.1

第2章概念设计 2.1 实体与属性 根据需求建立五个实体(admin,book,publisher,reader,booktype),并赋予其各自的属性,如图2.1 图2.1 2.2 初步E-R图 将各个局部E-R图合并,消除属性冲突、命名冲突、结构冲突,然后再用分析的方法或者规范化理论来消除冗余,生成基本E-R图,流程如图2.2,合并后的初步E-R图如图2.3所示。 图2.2

图2.3 第3章逻辑设计 3.1 逻辑结构设计 逻辑结构设计的流程图如图3.1所示,主要包括三个部分:1、将基本E-R图根据七条转化原则转化为一般数据模型;2、根据所选用的DBMS(Oracle)的功能及限制,将数据模型转换为Oracle 规定的模型。 图3.1

3.2 优化后的模型 管理员(职工号,姓名,性别,年龄,密码) 借阅者(卡号,姓名,年龄,性别,密码,专业,学院,最大借阅量)书籍(索书号,书名,作者,出版社号,类型号,价格,是否被借阅)出版社(出版社号,出版社名,电话,地址) 类型(类型号,类型名,所在楼层) 借阅(借阅号,借阅时间,归还时间,是否过期,卡号,索书号) 第4章物理设计 4.1 设计数据表 管理员表(admin) 图书表(book) 图书类型表(bookType)

数据库实验六

数据库上机实验六 实验名称:视图的建立与使用(续)和数据库的安全性控制 一、实验目的 1.加深掌握视图的定义与工作原理。 2.理解SQL SERVER 2000登录账户、数据库用户、角色、权限的概念及管理方法。 二、实验内容与步骤 1.对视图的操作 (1)创建一个视图,该视图只含上海客户信息,即客户号、客户姓名、住址。 create view cus_SH as select cust_id, cust_name, addr from customer where addr = '上海' (2)删除题1建立的视图中所有姓“王”的客户数据。 delete from cus_SH where cust_name like '王%' (3)对题(1)建立的视图添加一条记录数据(注意:分别查看customer表和该视图的结果)。 insert into cus_SH values ('10010','叶秀玲','武汉') /* 无法将 NULL 值插入列 'tel_no',表 'Sale_Manage.dbo.customer';该列不允许空值。 INSERT 失败。 语句已终止。 */

(4)通过题(1)建立的视图修改表内某一客户的姓名。 update cus_SH set cust_name = '王子' where cust_name = '王' (5)有两个基本表employee和sales,创建一个视图,该视图包含相同业务员的编号、姓名、订单号、销售总金额。 create view emp_sale as select emp_no, emp_name, order_no, tot_amt from employee, sales where emp_no = sale_id (6)给题(5)建立的视图添加一条记录数据。 insert into emp_sale values ('E1000', '肖萧', '1009', '900.00') --视图或函数 'emp_sale' 不可更新,因为修改会影响多个基表。 (7)将题(5)建立的视图中订单号为1001的记录的销售总金额改为60000。 update emp_sale set tot_amt = 60000 where order_no = '1001' (8)删除题5建立的视图。 drop view emp_sale; 2.数据库的安全性控制

实验室安全及环保管理规定

实验室安全及环保管理规定 公司实验室是进行检测分析、科研活动的重要场所,是公司生产的重要条件。实验室中危险与不安全因素较多,条件与环境复杂,容易发生意外。为了切实加强实验室的安全管理,做好以防盗、防火、防爆、防毒、防灾害事故为中心的安全预防工作,以保障员工人身和公司财产的安全,提高工作效率,保证公司实验室工作任务的顺利完成,现根据公司有关安全环保管理规定的精神,结合实际情况,作如下规定: 一、主管领导必须切实抓好安全教育,树立“预防为主,安全第一”的思想;各实验室(中心)主任负责本室安全,同时要指定一名安全员,协助室(中心)主任负责本室的安全工作,并对本室的日常安全工作进行检查,做好安全记录,把安全工作真正落到实处。主管领导要把实验室的安全列入议事日程,认真研究安全问题并针对存在的问题制定解决办法。 二、员工要不断提高自身的安全意识和安全技术素质,增强安全责任心和自觉性以及自我防护能力。要严格执行安全技术操作规程,精心操作,不违章作业。操作中要做到严、细、稳、准、轻拿轻放,做到不损伤仪器设备,不伤害自己,不伤害他人,不被他人伤害,发现他人的各种违章行为及时制止,发现不安全隐患要及时上报。 三、实验室人员要严格执行实验室规则,对振动、噪声、高温、高压、高速转动的设备,以及贵重精密仪器设备,各实验室要根据实际情况制定操作规程和安全制度。 四、实验室对高压气体钢瓶必须分类保管,直立固定。严禁氯与氨、氯与乙炔、氢与氧、乙炔与氧等混放在一个房间内。氢、氧及可燃性气体钢瓶与明火距离不小于10米。 五、实验室对易燃、易爆、强腐蚀性、剧毒等物品,要分类妥善保管。严格执行《危险化学物品管理办法》,按章领用、存放、退库。对剧毒药品,各实验室随用随领,余量退库,不得擅自处理。 六、实验室要遵守国家环保规定,不得随意排放废气、废液、废渣和噪声,对三废要妥善处理,不污染环境。经常保持实验室设备、设施、室内、室外环境清洁卫生。对高温、辐射、噪声、粉尘、腐蚀等对人体有毒有害的环境,切实加强劳动保护工作。 七、实验室要根据各自的特点,经常检查仪器设备、设施等是否存在安全隐

ACCESS2010数据库技术实验指导书3

《ACCESS2010数据库技术及应用》 实验指导(3) 学号: 姓名: 班级: 专业:

实验三窗体 实验类型:验证性实验课时: 4 学时指导教师: 时间:201 年月日课次:第节教学周次:第周 一、实验目的 1. 掌握窗体创建的方法 2. 掌握向窗体中添加控件的方法 3. 掌握窗体的常用属性和常用控件属性的设置 二、实验内容和要求 1. 创建窗体 2. 修改窗体,添加控件,设置窗体及常用控件属性 三、实验步骤 案例一:创建窗体 1.使用“窗体”按钮创建“成绩”窗体。 操作步骤如下: (1)打开“教学管理.accdb”数据库,在导航窗格中,选择作为窗体的数据源“教师”表,在功能区“创建”选项卡的“窗体”组,单击“窗体”按钮,窗体立即创建完成,并以布局视图显示,如图3-1所示。 (2)在快捷工具栏,单击“保存”按钮,在弹出的“另存为”对话框中输入窗体的名称“教师”,然后单击“确定”按钮。 图3-1布局视图 2.使用“自动创建窗体”方式 要求:在“教学管理.accdb”数据库中创建一个“纵栏式”窗体,用于显示“教师”表中的信息。 操作步骤: (1)打开“教学管理.accdb”数据库,在导航窗格中,选择作为窗体的数据源“教师”表,在功能区“创建”选项卡的“窗体”组,单击“窗体向导”按钮。如图3-2所示。 (2)打开“请确定窗体上使用哪些字”段对话框中,如图3-3 所示。在“表和查询”下拉列表中光图3-2窗体向导按钮

标已经定位在所学要的数据源“教师”表,单击按钮,把该表中全部字段送到“选定字段”窗格中,单击下一步按钮。 (3)在打开“请确定窗体上使用哪些字”段对话框中,选择“纵栏式”,如图3-4所示。单击下一步按钮。 (4)在打开“请确定窗体上使用哪些字”段对话框中,输入窗体标题“教师”,选取默认设置:“打开窗体查看或输入信息”,单击“完成”按钮,如图3-5所示。 (5)这时打开窗体视图,看到了所创建窗体的效果,如图3-6所示。 图3-3“请确定窗体上使用哪些字”段对话框 图3-4“请确定窗体使用的布局”段对话框中

电子科技大学-空间数据库上机实验报告

一、建立Geodatabase数据文件 1、新建一个Geodatabase: 如图1.1所示:在ArcCatalog环境下新建一个名为“Personal Geodatabase”的数据文件。 1.1 建好的Geodatabase 数据文件 2、新建要素集: 在Personal Geodatabase下,新建一个shanghai要素集,定义坐标系统为高斯投影(如图 1.2所示),单位为米,精度为1。

1.2 创建要素数据集 3、新建要素类: 在shanghai要素集中,新建一个parcel和pole要素类,parcle的Shape字段类型为polygon,新增字段parcel_name(文本型)、owner_name (文本型);pole的Shape 字段类型为点类型,新增三个字段:类型(短整型)、高度(短整型)和管理部门(文本型)。 1.3 创建parcel要素类 1.4 创建pole要素类 4、新建表:

如图1.5所示,在Personal Geodatabase下,新建一个owner表,新增字段name (文本型)、age (短整型) 1.5 创建owner表 二、创建子类 1、新建子类: 单击鼠标右键,打开pole要素类的属性表,选择子类选项卡,根据type字段创建pole类型子类,包括Wood、Steel和Cement。 图2.1 pole要素类新建子类 2、对子类赋值: 如图2.2所示,在ArcMap环境下通过列表框选择对要素子类进行赋值。

图2.2 pole要素类赋值 三、按子类定义pole要素类的域: 1、打开Geodatabase的属性表,定义三个域:Wood_pole高度域(短整型),20—30ft;Steel_pole的高度域(短整型),30—50ft;pole的管理部门域(文本),市管,区县管。 图3.1 按子类定义pole要素类的域

实验六 访问数据库

实验六访问数据库 一、实验目的 1、熟悉通过嵌入式SQL(主语言为C++语言)编程访问数据库,及掌握游 标的使用方法 2、熟悉通过ODBC接口访问异构数据库并对异构数据库进行操作 3、学会配置ODBC数据源 4、学会各种数据库的访问方法 二、实验要求 1、编写一个嵌入式C++程序,实现对SQL Server2005数据库中的“学生课 程数据库”的Student表中的年龄进行更新,即系统每输出一个学生记录,询问用户是否更新。如果要更新,就输入新的年龄。要求:提交源程序并标识必要的注释。 答:create table provider ( Sno char(5)primary key, Sname char(20)not null, Ssex char(4), Sage int ); insert into provider values('S1','李刚',’男’,20); insert into provider values('S2','李红',’男’,21); insert into provider values('S3','李飞',’男’,25); insert into provider values('S4','李春',’男’,21); #include #include #include #include #include #include #include #include EXEC SQL BEGIN DECLARE SECTION; char deptname[20]; char HSno[9]; char HSname[20]; char HSsex[2]; int HSage; int NEWAGE;

实验室安全与环保通识教育

实验室安全与环保通识教育(2018研究生) 分数:97.0 考试时间:2019-01-02 14:02 1、[判断题]内照射指放射性物质呼吸道吸入、消化道进入、皮肤伤口渗入 等途径进入体内,造成放出的射线及化学毒性对人体器官的双重损伤。(分值1.0) 你的答案:正确 2、[判断题]机床在运行中,可以更换主轴转速。(分值1.0) 你的答案:错误 3、[判断题]动物实验结束后,废弃的动物尸体与器官可作为饲料原料再利 用。(分值1.0) 你的答案:错误 4、[判断题]使用离心机时,离心样品的平衡并不重要。(分值1.0) 你的答案:错误 5、[判断题]在需用橡胶或塑料手套的生化类实验中,不用经常检查手套有 无破损。(分值1.0) 你的答案:错误 6、[判断题]当生物安全柜内发生少量感染性材料溢洒时,应用吸收纸巾立 即处理,并立即用浸满消毒液的毛巾或纱布对生物安全柜及其内部的所以物品进行擦洗。工作面消毒后应更换手套,不论是摘下手套还是更换手套都要洗手。(分值1.0) 你的答案:正确 7、[判断题]高压灭菌液体终止时,为尽快地取出灭菌液体,可快速排气使 压力迅速降低。(分值1.0) 你的答案:错误 8、[判断题]重金属如铅、镉、汞等对人体有害。(分值1.0) 你的答案:正确 9、[判断题]实验室毒物进入人体有三条途径即皮肤、消化道和呼吸道。实 验室防毒应加强个人防护。(分值1.0) 你的答案:正确

10、[判断题]误吸入溴蒸气、氯气等有毒气体时,立即吸入少量酒精和乙 醚的混合蒸气,以便解毒, 同时应到室外呼吸新鲜空气,再送医院。(分值1.0) 你的答案:正确 11、[判断题]皮肤被黄磷灼伤禁用含油敷料。(分值1.0) 你的答案:正确 12、[判断题]对危险废物的容器和包装物以及收集、贮存、运输、处置危 险废物的设施、场所,必须设置危险废物识别标志。(分值1.0) 你的答案:正确 13、[判断题]电气线路着火,要先切断电源,再用干粉灭火器或二氧化碳 灭火器灭火,不可直接泼水灭火,以防触电或电气爆炸伤人。(分值1.0)你的答案:正确 14、[判断题]实验室内出现火情,若被困在室内时,应迅速打开水龙头, 将所有可盛水的容器装满水,并把毛巾打湿。用湿毛巾捂嘴,可以遮住部分浓烟不被吸入。(分值1.0) 你的答案:正确 15、[判断题]仪器设备用电或线路发生故障着火时,应立即切断现场电源, 将人员疏散,并组织人员用灭火器进行灭火。(分值1.0) 你的答案:正确 16、[判断题]在钻床上工作时,如果钻头上缠有长铁屑,可用手拉断。(分 值1.0) 你的答案:错误 17、[判断题]数控铣床对刀时,可以快速进给。(分值1.0) 你的答案:错误 18、[判断题]核衰变是原子核自发产生的变化,放射性衰变服从指数规律。 (分值1.0) 你的答案:正确 19、[判断题]可以用手触摸放射源表面。(分值1.0) 你的答案:错误

oracle数据库实验指导书

计算机科学学院《ORACLE数据库》实验指导书

《ORACLE数据库》实验指导书 实验一Oracle数据库安装配置以及基本工具的使用 1.实验的基本内容 实验室中oracle数据库安装后某些服务是关闭的(为了不影响其他课程的使用),所以在进入数据库前需要对oracle进行配置: (1)启动oracle OraHomeTNSLISTENER 和oracleserviceORACLE 两个服务 (2)修改listener.ora 和tnsnames.ora 两个文件的内容 (3)以用户名:system ,口令:11111 以“独立登录”的方式进入oracle 数据库系统 (4)熟悉数据库中可用的工具。 2.实验的基本要求 (1)掌握Oracle11g的配置以及登录过程。 (2)熟悉系统的实验环境。 3.实验的基本仪器设备和耗材 计算机 4.实验步骤 (1) 查看设置的IP地址是否与本机上的IP地址一致。若不一致则修改为本机IP地址。 (2) 启动oracle OraHomeTNSLISTENER 和oracleserviceORACLE 两个服务 控制面板/性能与维护/管理工具/服务/ oracle OraHomeTNSLISTENER(右击/启动)。 控制面板/性能与维护/管理工具/服务/ oracleserviceORACLE(右击/启动) (3) 修改listener.ora 和tnsnames.ora 两个文件的内容 D:\app\Administrator\product\11.1.0\db_1\NETWORK\ADMIN (用记事本方式打开),将HOST=“…..”内容修改为本机的IP地址,保存退出。 D:\app\Administrator\product\11.1.0\db_1\NETWORK\ADMIN (用记事本方式打开),将HOST=“…..”内容修改为本机的IP地址,保存退出。 (4) 启动oracle 数据库

数据库实验报告六_存储过程

HUNAN UNIVERSITY 数据库 实验报告 学生姓名 学生学号 专业班级 指导老师 2017 年5月24日

SELECT COUNT(*)INTO more90 FROM sc WHERE cno = countcno AND grade >= 90; /*将结果存入新表sumScore中*/ create table sumScore( scorestage char(10), number smallint); insert into sumScore values('x<60', less60); insert into sumScore values('60<=x<70', b60a70); insert into sumScore values('70<=x<80', b70a80); insert into sumScore values('80<=x<90', b80a90); insert into sumScore values('x>=90', more90); END$$ call sumScore(); /*调用上述存储过程*/ 首先创建存储过程,然后再调用存储过程。结果如下: (上述结果图截自Navicat软件) 可以看到,在stuinfo中新建了一个基本表sumscore,表中内容是数学课程成绩的各分数段的人数。 2、统计任意一门课的平均成绩。 代码如下: DELIMITER $$ CREATE PROCEDURE `scoreAvg`() BEGIN declare curname char(40) default null; /*临时存放课程名*/ declare curcno char(4) default null; /*临时存放课程号*/ declare curavg float; /*临时存放平均成绩*/ declare mycursor cursor for /*定义游标*/ select cno, cname from course;

病理科实验室安全与环境保护

病理科实验室安全与环境保护 随着病理学学科的迅猛发展不断出现的新技术,新方法和新仪器广泛应用于病理学诊断和研究,提高了病理诊断的正确率,提升了对疾病的病因、病理变化和疾病发生发展过程规律性的研究水平。但是伴随着的病理实验室中产生的废气、废液以及医疗垃圾等有害物质的排放、环境污染和防火等问题同样受关注。加强实验室废气、废液和医疗垃圾等的排放、收集和处理等规范和管理工作,有利于改善工作环境,避免环境污染,维护公共安全和保障实验室工作人员的身体健康。 一、加强实验室的环境安全 病理实验室一般除了感到患者的送检标本脏、闻到有异气味外,往往忽略了可能已给人们带来危害。病理实验室安全是实验室管理工作的重要内容之一,病理活检组织检查工作是一项程序多和复杂的工作,每项工作需要在特定的工作间进行。 1、实验室的工作区域主要分为污染区、半污染区和非污染区,这些区域应明确分开做到既相互联系又互不干扰和污染。 (1)污染区:污染源主要是临床送检的标本和属于危险品的化学试剂。接收送检的标本的收发室、取材室、储存室、冰冻切片制作室、细胞学涂片制作室和尸 检解剖室都属于污染区,应安装紫外灯等消毒装置,每天进行消毒;安装良好的通风设施,将甲醛等有害废气排出。 (2)半污染区:污染源主要属于危险品的化学试剂。制片技术室包括组织处理实验室、组织包埋实验室、石蜡组织切片室、HE染色和其他染色实验室以及一些相关技术实验室、病理诊断室、组织切片和蜡块储存室、大体标本制作室和陈列室等属于半污染区,应安装良好的通风设施,将有害废气排出。 (3)非污染区:非污染区不应有生物性和化学性的污染物存在,但也应该安装良好的通风设施,保持室内空气新鲜。(文字档案室、摄影室、办公室和休息室等属于非污染区) 2、配备实验室所必须的设施, 一旦出现事故能在最短时间内进行救治和处理,使对实验室工作人员受到的伤害和实验室受到的破坏最大限度地减低。 (1)配备工作衣、手套、口罩、眼镜、面罩等劳动防护用品,供实验室需要时使

相关文档
最新文档