注册 登录
编程论坛 VFP论坛

sele求助 ,如何批量生成以班级为名的dbf表

wangguowu 发布于 2023-04-10 22:17, 904 次点击
For x=1 To 3
    banji=Transform(x)
    Create Cursor tt (学号 cx(10),班级 cx(10))
    Insert Into tt Values ('20210101', "101")
    Insert Into tt Values ('20210102', "101")
    Insert Into tt Values ('20210201', "102")
    Insert Into tt Values ('20210302', "103")
    Insert Into tt Values ('20210203', "102")
    Insert Into tt Values ('20210103', "101")
    Insert Into tt Values ('20210301', "103")
    Insert Into tt Values ('20230401', "203")
    ................................(班级多这里省略)
    n班级 = tt.班级
    Select 学号,班级 From tt Grou By 1,2 Where tt.班级=n班级 Into Table N班级&banji Readwrite
ENDFOR

班级比较多,要批量生成: 班级101.DBF,班级102.DBF,班级103.DBF,班级2....0 等.DBF    表。

4 回复
#2
easyppt2023-04-10 22:25
程序代码:

* 学号班级表
Create Cursor tt (学号 cx(10),班级 cx(10))
Insert Into tt Values ('20210101', "101")
Insert Into tt Values ('20210102', "101")
Insert Into tt Values ('20210201', "102")
Insert Into tt Values ('20210302', "103")
Insert Into tt Values ('20210203', "102")
Insert Into tt Values ('20210103', "101")
Insert Into tt Values ('20210301', "103")
Insert Into tt Values ('20230401', "203")

* 获取班级列表并生成以班级为名称的独立dbf表
Sele Dist 班级 From tt Into Curs bjList
Sele bjList
Scan All
    Select * From tt Where tt.班级 = bjList.班级 Into Dbf ('d:\'+'班级'+Alltrim(bjList.班级))
Endscan


[此贴子已经被作者于2023-4-10 22:28编辑过]

#3
sdta2023-04-10 22:30
程序代码:
Create Cursor tt (学号 c(10),班级 c(10))
Insert Into tt Values ('20210101', "101")
Insert Into tt Values ('20210102', "101")
Insert Into tt Values ('20210201', "102")
Insert Into tt Values ('20210302', "103")
Insert Into tt Values ('20210203', "102")
Insert Into tt Values ('20210103', "101")
Insert Into tt Values ('20210301', "103")
Insert Into tt Values ('20230401', "203")

SELECT DISTINCT 班级 FROM tt INTO CURSOR bj
SCAN
    SELECT * FROM tt WHERE 班级 == bj.班级 INTO TABLE ("BJ" + ALLTRIM(bj.班级) + ".DBF") && 自由表名不能以数字开头
ENDSCAN
#4
wangguowu2023-04-10 22:46
回复 3楼 sdta
谢谢,打扰了这么晚还能得到您的解答,再次感谢!
#5
wangguowu2023-04-10 22:47
回复 2楼 easyppt
谢谢你😊
1