加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

VB中的SQL语言——增、删、改、查

发布时间:2020-12-17 07:53:02 所属栏目:百科 来源:网络整理
导读:结构化查询语言简称SQL,SQL是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。SQL语言主要有四个部分:数据定义语言、数据操纵语言、嵌入式SQL语言的使用规定、数据控制语言。今天我们介绍其中的一部分,数据操纵语言——

结构化查询语言简称SQL,SQL是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。SQL语言主要有四个部分:数据定义语言、数据操纵语言、嵌入式SQL语言的使用规定、数据控制语言。今天我们介绍其中的一部分,数据操纵语言——增、删、改、查。

SQL语言是一种交互式查询语言,允许用户直接查询存储数据,但它不是完整的程序语言,如它没有DO或FOR类似的循环语句,因此它可以嵌入到另一种语言中,借用VB、VB.NET、C、JAVA等高级语言对关系数据库进行操作。在做学生管理系统和机房收费系统时,我们配置ODBC用于连接数据库与VB,在模块中定义函数ExecuteSQL用于执行SQL语句。等做好这些工作后,我们就可以在VB中对数据库进行操作了。下面介绍一下在VB中如何利用SQL语句操纵数据库。

一、数据查询(以查询学生信息为例)

简单查询语句可通过Select语句限定数据源来实现。在Select语句中使用关键字、字句等。

例1 比较条件查询

	txtsql = "select * from student_info where cardno= '" & txtCardNO & "'"   	'查询student_info中cardno为某一限定值的记录

	set mrc = ExecuteSQL(txtsql,msgtext)  						'执行SQL语句	

例2 计算查询结果

在机房收费系统中的实现结账功能的代码中用到了此类代码:

 <span style="white-space:pre">	</span>txtsql = "select sum(addmoney) from recharge_info where date = '" & Date & "'"		'查询Recharge_info中addmoney字段值的综合  

<span style="white-space:pre">	</span>Set mrc = ExecuteSQL(txtsql,msgtext)							'执行SQL语句

<span style="white-space:pre">	</span>txtRechargeCash.Text=mrc.fields(0)							'将查询出来的结果赋值给文本框

以上的两个例子中的Where子句是Select语句中最常用的限定条件,另外还有AS子句、Like子句等。虽然,Select查询语句有很多种,但它们共通的一点是只要查询某一特定的记录时,在Select查询语句中就会出现限定条件。

二、数据注入(已添加学生信息为例)

1、我们在VB中引用ADO实现访问所用到的数据中的数据,通过AddNew方法添加一条新的记录,再通过Update方法保存当前的记录。

	txtsql = "select * from student_info "                                 '查询出student_info表

	set mrc = ExecuteSQL(txtsql,msgtext)  					'执行SQL语句

        mrc!StuNO=Trim(txtStuNo.Text)
        mrc!StuName=Trim(txtStuName.Text)
        mrc!Class=Trim(txtClass.Text)
         :                        :
<span style="white-space:pre">										</span>'向数据库中添加信息

        mrc.Update      '更新数据库


2、使用Insert 语句向数据库注入数据

        txtsql = "insert into student_info(Student_ID,Student_Name,Student_Sex,ClassNo,Grade,born_date,ru_date)"  values ('" & txtStuID & "','" & txtName & "','" & txtSex & "','" & txtClassNO & "','" & txtGrade & "','" & txtborn_date & "','" & txtRuDate & "')"		<span style="white-space:pre">				</span>'向student_info中注入数据
        set mrc = ExecuteSQL(txtsql,msgtext)         <span style="white-space:pre">		</span> <span style="white-space:pre">	</span>'执行SQL语句

用Insert语句往数据库中注入数据的时候,要做到每一个字段与文本框的值一一对应,否则数据库注入数据时就会出现错误。

另外,还有两个注意的地方:

1、如果向表中特定的字段中插入数据时,在Insert语句中应该把字段指定出来,如:

     txtsql = "insert into student_info(Student_ID,Student_Sex" & value ('" & txtStuID & "','" & txtSex & "')"			'向student_info表中student_id,student-name,student_sex列中插入数据

     Set mrc = ExecuteSQL(txtsql,msgtext)	<span style="white-space:pre">														</span>'执行SQL语句

2、如果表中包含主键,请确保唯一的非Null值注入到主键字段,否则数据库无法注入数据。

三、数据删除(以删除学生信息为例)

1、我们在VB中引用ADO实现访问所用到的数据中的数据,通过Delete方法删除一条记录,再通过Update方法更新当前的记录。

	txtsql="select * from student_info where cardno = '" & txtCardNo & "'"	'选择一条指定的记录

	set mrc =ExecuteSQL(txtsql,msgtext)					'执行SQL语句

	mrc.Delete								'将其删除

	mrc.Update

2、使用Delete语句,不仅可以删除指定的一条或多条记录,也可以将表中所有记录删除
	txtsql="delete student_info where cardno= '" & txtCardNo & "'" 			'删除student_info表中指定cardno字段的值的一条记录

	set mrc = ExecuteSQL(txtsql,msgtext)						'执行SQL语句
	txtsql="delete student_info "							"删除student_info表中所有记录

	set mrc = ExecuteSQL(txtsql,msgtext)						'执行SQL语句

四、数据修改(以修改学生信息为例)

1、我们利用Select语句查询出所要修改的记录,修改其某一字段的值,再通过Update方法更新所修改的记录。

	txtsql = " select * from student_info where cardno= '" & txtCardno & "'"		'查询出要修改的记录

	Set mrc =ExecuteSQL(txtsql,msgtext)							'执行SQL语句

	mrc!Name=Trim(txtName.Text)
	mrc!StuNO=Trim(txtStuNo.Text)
	mrc!Class=Trim(txtClass.Text)								'修改数据信息

	mrc.Update										'更新数据库


2、直接利用Update语句修改数据信息
	txtsql = " Update student_info Set Name= '" & txtName & "',StuNo = '" & txtStuNo & "',Class= '" & txtClass & "' where cardno= '" & txtCardNo & "'where cardno= '" & txtCardno & "'"				'修改指定记录的数据
	
	Set mrc =ExecuteSQL(txtsql,msgtext)

VB中的SQL语句可以实现直接对数据库进行操纵,也可以弥补SQL不是完整的程序化语言这一缺点。那么,我们不禁在想在VB和SQL Server中的SQL语句有何不同呢?现在,我们来看一下SQL Server中的SQL语句(增、删、改、查)各自的语法。

Select 语句Select * from 表名称 where 列名称=某值

insert 语句Insert into 表名称(例1,例2,....)values (值1,值2,.....)

update 语句 Update 表名称 set 列名称=新值 where 列名称=某值

delete语句Delete from 表名称where 列名称=某值

从这篇文章不难看出,在VB中操作SQL语句其实与在SQL Server中是一样的。我们在SQL Sever中的SQL语句正确,那么在VB中,我们将VB控件(文本框、标签、组合框等)中的值赋予某一限定条件就行了。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读