2024年7月23日发(作者:鱼依萱)
教务学籍工作数据操作VF工具之SQL语句详解
【摘要】随着oa的全面推广,学校使用电脑办公代替了手工操
作,在学籍教务工作过程中,如果能够数量使用vf的sql语句可
以提高我们的工作效率。
【关键字】查询;替换;连接
【中图分类号】g710
【引言】教务学籍工作一个教育单位不可缺少的部分,它的工作
对于学校的决策者和管理者来说都至关重要,一直以来人学籍们使
用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,
如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,
这对于查找、更新和维护都带来了不少的困难。随着科学技术的不
断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,
它已进入人类社会的各个领域并发挥着越来越重要的作用。在我个
人工作中,用vf工具使工作变的更快捷和准确,下面就vf工具详
细介绍操作技巧。
数据基本操作:是庞大的学籍信息库和教务学生信息各种表格
中,利用vf的sql语句可以查询想要的字段缩短表的长度,也可
以使单个表连接前来,把几个表中需要的字段组成一个新表。为了
加快操作速度,下面的语句可以提高操作速度。以以下连个表为例,
详细介绍命令的使用方法。假设基本信息表()的字段名如
下:序号(id),姓名(xm),学号(xh),性别(xb),身份证号(sfzh),
政治面貌(zzmm),考生号(ksh),专业名称(zymc),出生日期(csrq),
成绩表()字段如下:姓名(xm),身份证号(sfzh),计算
机(jsj),cad(cad),计算机网络(wl)。
一、替换命令,针对相同或批量的数据处理
(1)自动生成序号:repl all id with recn(),//为id自动
升序编号
(2)自动生成学号:
replace all xh with ‘201213924’+left(’000’,3-len
(alltrim(str(recno()))))+alltrim(str(recno()))//
该命令以201213924开头,三位自动编号组成12位学号。
(3)去掉某字段(姓名为例)所有记录中的空格:
repl all xm with chrtran(xm,’ ‘,’’)//去掉中间的
空格 。
repl all xm with chrtran(xm) //去掉两端的空格。
(4)条件替换,根据指定的条件替换相对应的字段记录:
repl all zzmm with “中共党员” for zzmm=“党员”//把政
治面貌为党员的记录替换为中共党员。
(5)用指定的字段信息,填充某个字段信息:
repl all csrq with left(alltrim(substr(sfzh,7,8)),
8)//用身份证号中的第七位开始后八位字符替换字段出生日期的
全部记录。
(6)清空某字段的所有记录:repl all xb with ““,//把性
别字段所有记录清空。
(7)添加替换,在某一指定的字段前加字符串:
repl alla ksh with “1243”+ksh //在所有的考生号记录前加
上”1243”
二、查询命令:
(1)查询指定的字段:改命令可以从多字段的大表中挑选满足
需要的字段所有记录:
select id,xm,sfzh,zzmm from jc into table aa //查询基
本信息表中的序号,姓名,身份证号,政治面貌几个字段记录存放
在表中。
(2)条件查询,在指定的条件范围查询符合条件的记录:
select * from jc where zzmm=“中共党员”//查询基础信息表
中政治面貌为中共党员的所有记录。
select * from jc where zzmm=“中共党员” and subs (ksh,
1,4)=‘1243’//查询政治面貌为中共党员且考生号的前四位
为”1243”的所有记录。
(3)嵌套查询,在两个表中查询出符合条件的记录:
select * from jc into table xx where sfzh not in(select
sfzh from cj)//查询出基础信息表中身份证号不在成绩表的所有
记录,存放在xx表中。
(4)统计查询,统计出各个记录出现的次数。
select zymc,count(zymc) from jc group by zymc //统计
出基本信息表中各个专业的人数。
(5)左连接查询,把两个包含有唯一字段信息的连个表连接成
几个表。
select jc.*,cj.* from jc left join cj on =
//通过身份证号这个唯一字段把基础信息表和成绩表中的所有记
录合并成一个新表。
(6)重复查询,查询当前工作表中出现重复的记录
select sfzh,count(*) from jc group by sfzh having count
(*)>1 // 查询基本信息表中身份证号重复的记录。
(7)相同查询,查询两个或多个表中包含唯一字段的所有记录
sele * from 基本信息,成绩表 where =//c
三、删除命令:
(1)删除指定的记录dele for xb=“女”; pack ;//删除性
别为女的所有记录
(2)删除重复的记录
select * from jc group by sfzh into cursor tem
select jc
zap
append from dbf(’tem’)
//删除基础信息表中身份证号重复的记录
总结,本人在学籍和教务管理中,总结出常用的的命令来提高我
们的工作效率和准确率。
【参考文献】
[1] 郭云飞 数据库程序设计教程(visualfoxpro6.0)(第二版)
北京邮电大学出版社
[2] 王永国 visual foxpro程序设计(第2版)高等教育出版社
[3]宁可 数据库技术与应用 清华大学出版社
2024年7月23日发(作者:鱼依萱)
教务学籍工作数据操作VF工具之SQL语句详解
【摘要】随着oa的全面推广,学校使用电脑办公代替了手工操
作,在学籍教务工作过程中,如果能够数量使用vf的sql语句可
以提高我们的工作效率。
【关键字】查询;替换;连接
【中图分类号】g710
【引言】教务学籍工作一个教育单位不可缺少的部分,它的工作
对于学校的决策者和管理者来说都至关重要,一直以来人学籍们使
用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,
如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,
这对于查找、更新和维护都带来了不少的困难。随着科学技术的不
断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,
它已进入人类社会的各个领域并发挥着越来越重要的作用。在我个
人工作中,用vf工具使工作变的更快捷和准确,下面就vf工具详
细介绍操作技巧。
数据基本操作:是庞大的学籍信息库和教务学生信息各种表格
中,利用vf的sql语句可以查询想要的字段缩短表的长度,也可
以使单个表连接前来,把几个表中需要的字段组成一个新表。为了
加快操作速度,下面的语句可以提高操作速度。以以下连个表为例,
详细介绍命令的使用方法。假设基本信息表()的字段名如
下:序号(id),姓名(xm),学号(xh),性别(xb),身份证号(sfzh),
政治面貌(zzmm),考生号(ksh),专业名称(zymc),出生日期(csrq),
成绩表()字段如下:姓名(xm),身份证号(sfzh),计算
机(jsj),cad(cad),计算机网络(wl)。
一、替换命令,针对相同或批量的数据处理
(1)自动生成序号:repl all id with recn(),//为id自动
升序编号
(2)自动生成学号:
replace all xh with ‘201213924’+left(’000’,3-len
(alltrim(str(recno()))))+alltrim(str(recno()))//
该命令以201213924开头,三位自动编号组成12位学号。
(3)去掉某字段(姓名为例)所有记录中的空格:
repl all xm with chrtran(xm,’ ‘,’’)//去掉中间的
空格 。
repl all xm with chrtran(xm) //去掉两端的空格。
(4)条件替换,根据指定的条件替换相对应的字段记录:
repl all zzmm with “中共党员” for zzmm=“党员”//把政
治面貌为党员的记录替换为中共党员。
(5)用指定的字段信息,填充某个字段信息:
repl all csrq with left(alltrim(substr(sfzh,7,8)),
8)//用身份证号中的第七位开始后八位字符替换字段出生日期的
全部记录。
(6)清空某字段的所有记录:repl all xb with ““,//把性
别字段所有记录清空。
(7)添加替换,在某一指定的字段前加字符串:
repl alla ksh with “1243”+ksh //在所有的考生号记录前加
上”1243”
二、查询命令:
(1)查询指定的字段:改命令可以从多字段的大表中挑选满足
需要的字段所有记录:
select id,xm,sfzh,zzmm from jc into table aa //查询基
本信息表中的序号,姓名,身份证号,政治面貌几个字段记录存放
在表中。
(2)条件查询,在指定的条件范围查询符合条件的记录:
select * from jc where zzmm=“中共党员”//查询基础信息表
中政治面貌为中共党员的所有记录。
select * from jc where zzmm=“中共党员” and subs (ksh,
1,4)=‘1243’//查询政治面貌为中共党员且考生号的前四位
为”1243”的所有记录。
(3)嵌套查询,在两个表中查询出符合条件的记录:
select * from jc into table xx where sfzh not in(select
sfzh from cj)//查询出基础信息表中身份证号不在成绩表的所有
记录,存放在xx表中。
(4)统计查询,统计出各个记录出现的次数。
select zymc,count(zymc) from jc group by zymc //统计
出基本信息表中各个专业的人数。
(5)左连接查询,把两个包含有唯一字段信息的连个表连接成
几个表。
select jc.*,cj.* from jc left join cj on =
//通过身份证号这个唯一字段把基础信息表和成绩表中的所有记
录合并成一个新表。
(6)重复查询,查询当前工作表中出现重复的记录
select sfzh,count(*) from jc group by sfzh having count
(*)>1 // 查询基本信息表中身份证号重复的记录。
(7)相同查询,查询两个或多个表中包含唯一字段的所有记录
sele * from 基本信息,成绩表 where =//c
三、删除命令:
(1)删除指定的记录dele for xb=“女”; pack ;//删除性
别为女的所有记录
(2)删除重复的记录
select * from jc group by sfzh into cursor tem
select jc
zap
append from dbf(’tem’)
//删除基础信息表中身份证号重复的记录
总结,本人在学籍和教务管理中,总结出常用的的命令来提高我
们的工作效率和准确率。
【参考文献】
[1] 郭云飞 数据库程序设计教程(visualfoxpro6.0)(第二版)
北京邮电大学出版社
[2] 王永国 visual foxpro程序设计(第2版)高等教育出版社
[3]宁可 数据库技术与应用 清华大学出版社