4.2算法与数据管理.ppt
文本预览下载声明
4.2 算法与数据管理 1.SQL语言及其功能 SQL:Structured Query Language结构化查询语言,是对数据操作的命令集。 SQL功能:可以面向数据库执行查询、从数据库取回数据、可在数据库中插入新的记录、可更新数据库中的数据、可从数据库删除记录、可创建新数据库、可在数据库中创建新表等。其功能可归结为查询、定义、操纵和控制等几个方面。 ①SELECT语句从数据库中查询数据,并以表格形式返回查询结果。用法: SELECT [DISTINCT] 目标列表达式1 [AS 别名] [,目标列表达式2] [AS 别名], … FROM 表名1 [,表名2] … [WHERE 条件表达式] 例如语句: “ Select * FROM info”表示查询数据表“ info”中的全部数据。 ②DELETE语句的功能为删除表中指定的记录。格式: DELETE FROM 表名 [ WHERE 条件 ] 【例】删除用户名为“donghan ”的所有记录。 DELETE FROM Users WHERE UserName= “ donghan ”; ③UPDATE语句功能为更新表中指定记录中指定字段的值。格式: UPDATE 表名 SET 字段1 = 表达式 [,字段2=表达式2,……,字段N=表达式N ] [ WHERE 条件 ] ④INSERT语句功能是向数据表中插入新的记录,格式: INSERT INTO 表名 [(字段1,… ,字段N)] VALUES (表达式1,… ,表达式N); 2. 算法在数据管理中的综合应用 VB程序获取到的Access数据库中数据,可采用数组等方式进行存储,并可以通过编程对数据进行各种加工处理,如统计、分析、查找、排序等。 使用数组读取数据表的主要步骤为: ①先定义数组 ②建立与数据库的连接 ③打开数据表 ④使用Do While语句读取Fields对象中的记录到数组中 ⑤关闭数据库连接 【例】将student.accdb数据中,家长数据表“jizhang”中的手机号码字段记录“cmcc”读取到数组phone中。程序代码如下: Dim phone(1 To 100) As String 学生家长手机号码 Dim num As Integer 统计班级人数变量 Private Sub Form_Load() Dim conn As New ADODB.Connection, rs As New ADODB.Recordset Dim strSQL As String conn.ConnectionString = “Provider=Microsoft.ACE.OLEDB.12.0;Data Source= ” +App.Path “ \student.accdb” conn.Open strSQL = “ SELECT * FROM jizhang” Set rs.ActiveConnection = conn rs.Open strSQL num = 0 Do While Not rs.EOF num = num + 1 cmcc 字段存储的家长手机号码 phone(num) = rs.Fields(“ cmcc”) rs.MoveNext Loop rs.Close 关闭数据表 conn.Close 关闭数据库连接 MsgBox “家长手机号码读取完成,共有” + Str(num) + “个。 ” End Sub 本节课学习要求识记基本的SQL语句,初步掌握从ADO对象中获取数据的方法(使用数组来读取数据库记录的方法),能够使用合适的算法来处理从数据库中获取的数据。考查方式为填空题。 1.某电视台的直播节目结束后,主持人从参与短信投票的观众中抽取若干名幸运观众。假设共有n(n1000)名观众参与短信投票,手机号码数据存放在数据库文件“ lottery.accdb”的 vote 表中,抽奖程序的 VB 代码如下,程序运行时界面如下图所示。主持人在文本框 Text1 中输入幸运观众数量后,单击“开始”按钮 Command1,在列表框 List1 中显示幸运观众的手机号码。 程序代码如下: Dim phone(1 To 1000) As String 参与抽奖观众的手机号码 Dim luck(1 To 100) As String 幸运观众的手机号码 Dim num As Integer 参与抽奖观众的总人数 Dim n As Integer 幸运观众的人数 Private Sub Command1_Click() Dim t As Integer 幸运编号 Dim i As Integer Randomize n = Val(Text1.Text) If
显示全部