vf常用sql语句

2022-08-18

第一篇:vf常用sql语句

计算机二级VF SQL语句常考总结。

数据库相关操作命令:

1、 新建数据库AA :create database AA

2、打开数据库AA :open databaseAA

3、 选择AA为当前数据库:set database to AA

4、修改数据库AA:Modify database AA

5、 删除数据库AA :Delete database AA

6、新建项目AA :Create projectAA

7、 数据库变为自由表 :removetable

8、自由表添加成数据库:addtable

表的相关操作:

1、 给表中某个字段增加~:replace 字段 with 基本工资*1.2for 性别=”女”

2、 建立索引命令 :indexon 索引表达式 tag 索引名 索引类型 排序类型

3、 定义候选索引 :altertable 表名 addunique 定义的字段 Tag 索引名

4、 打开表设计器修改表结构 :modifystruction

5、 添加字段修改表结构:altertable 表名 add条件例子:altertable 职工表 alter 基本工资 set

cehck 基本工资>800

6、 新建(自由)表:Create table 表名(free)条件{primary key(主关键字) check(有效性规则) error(出

错信息) default(默认值)}

7、 插入添加记录 :Inserinto 表名(字段1,字段2~~) values(表达式1~~)

8、 将某个表结构复制到AA :use 职工表/copystructiontoAA

9、 更新表的记录|把~~改为~:update 表名 set更新表达式 where 更新条件

10、表记录的删除 :deletefrom 表名 where 条件新建视图:create view 视图名 asselect语句 表单操作:

1、新建表单 createform AA

2、修改表单 modify form AA

3、执行表单do fromAA

4、关闭表单thisform.release

表单属性:(caption 标题,name 控件名、表单名,保存的名字~文件名)

1、 Alwaysontop {.F.} 位于其他窗口最上方 2 、Autocenter{.F.}自动在窗口居中显示

3、closable 关闭按钮

4、morable {.T.} 是否能移动

5、scrollbars表单滚动条类型

6、windowstate表单状态

7、wind owtype 表单窗口模式

8、refresh刷新表单

表单方法:

1、show 显示表单 ~visible属性为.F. 成为活动对象

2、hide 隐藏表单

基本控件:

一、 命令按钮:

1、default 相应按钮与回车键绑定cancel 相应按钮与ESC绑定

2、enabled可用与不可用

3、visible 可见与不可见

二、文本框:

1、controlsource 数据源

2、value 初始值

3、passwordcha密码占位符显为*

4、Inputmask 输入格式

三、编辑框:

1、hideselection 是否仍显示为选定状态

2、Readonly {.T.}只读状态

3、scrollbars 滚动条的类型

4、seltext 所选内容

5、selLength 所选文本字符数

四、复选框:caption 标题controlsource 绑定的数据源value 选择状态

五、列表框:

1、rowsourcetype数据源类型rowsource条目是数据源

2、columncount 列数

3、controlsource 要绑定的数据源

4、value被选中条目

5、multiselect是否进行多重选定

6、listcount 数据条目的数目

8、selected 某个条目是否处于选定状态

陆、组合框style 模式0-下拉组合框 2-下拉列表框

七、容器控件

1、命令组:buttoncount按钮数目buttons 各按钮数目value 当前状态

2、选项组:Buttoncount 按钮数目buttons各按钮数目value值controlsource绑定数据源

3、页框:pagecount 页面数目Page页对象tabs是否显示页面标题栏

4、表格:recordsourcetype数据源类型 recordsources数据源 (列属性:controlsource在列中显示的数据源常见表中一个字段,currentcontrol显示接受活动单元格数据)(标头属性:Alignment标题文本对象中显示对齐方式)

第二篇:SQL语句常用函数

、字符转换函数

1、ASCII()

返回字符表达式最左端字符的ASCII 码值。在ASCII()函数中,纯数字的字符串可不用‘’括起来,但含其它字符的字符串必须用‘’括起来使用,否则会出错。

2、CHAR()

将ASCII 码转换为字符。如果没有输入0 ~ 255 之间的ASCII 码值,CHAR() 返回NULL 。

3、LOWER()和UPPER()

LOWER()将字符串全部转为小写;UPPER()将字符串全部转为大写。

4、STR()

把数值型数据转换为字符型数据。

STR ([,length[, ]])

length 指定返回的字符串的长度,decimal 指定返回的小数位数。如果没有指定长度,缺省的length 值为10, decimal 缺省值为0。

当length 或者decimal 为负值时,返回NULL;

当length 小于小数点左边(包括符号位)的位数时,返回length 个*; 先服从length ,再取decimal ;

当返回的字符串位数小于length ,左边补足空格。

二、去空格函数

1、LTRIM() 把字符串头部的空格去掉。

2、RTRIM() 把字符串尾部的空格去掉。

三、取子串函数

1、left()

LEFT (, )

返回character_expression 左起 integer_expression 个字符。

2、RIGHT()

RIGHT (, )

返回character_expression 右起 integer_expression 个字符。

3、SUBSTRING()

SUBSTRING (, , length)

返回从字符串左边第starting_ position 个字符起length个字符的部分。

四、字符串比较函数

1、CHARINDEX()

返回字符串中某个指定的子串出现的开始位置。

CHARINDEX (<’substring_expression’>, )

其中substring _expression 是所要查找的字符表达式,expression 可为字符串也可为列名表达式。如果没有发现子串,则返回0 值。

此函数不能用于TEXT 和IMAGE 数据类型。

2、PATINDEX()

返回字符串中某个指定的子串出现的开始位置。

PATINDEX (<’%substring _expression%’>, )其中子串表达式前后必须有百分号“%”否则返回值为0。

与CHARINDEX 函数不同的是,PATINDEX函数的子串中可以使用通配符,且此函数可用于CHAR、 VARCHAR 和TEXT 数据类型。

五、字符串操作函数

1、QUOTENAME()

返回被特定字符括起来的字符串。

QUOTENAME (<’character_expression’>[, quote_ character]) 其中quote_ character 标明括字符串所用的字符,缺省值为“[]”。

2、REPLICATE()

返回一个重复character_expression 指定次数的字符串。

REPLICATE (character_expression integer_expression) 如果

integer_expression 值为负值,则返回NULL 。

3、REVERSE()

将指定的字符串的字符排列顺序颠倒。

REVERSE () 其中character_expression 可以是字符串、常数或一个列的值。

4、REPLACE()

返回被替换了指定子串的字符串。

REPLACE (, , ) 用string_expression3 替换在string_expression1 中的子串string_expression2。

5、SPACE()

返回一个有指定长度的空白字符串。

SPACE () 如果integer_expression 值为负值,则返回NULL 。

6、STUFF()

用另一子串替换字符串指定位置、长度的子串。

STUFF (, , ,)

如果起始位置为负或长度值为负,或者起始位置大于

character_expression1 的长度,则返回NULL 值。

如果length 长度大于character_expression1 中 start_ position 以右的长度,则character_expression1 只保留首字符。

六、数据类型转换函数

1、CAST()

CAST ( AS [ length ])

2、CONVERT()

CONVERT ([ length ], [, style])

1)data_type为SQL Server系统定义的数据类型,用户自定义的数据类型不能在此使用。

2)length用于指定数据的长度,缺省值为30。

3)把CHAR或VARCHAR类型转换为诸如INT或SAMLLINT这样的INTEGER类型、结果必须是带正号或负号的数值。

4)TEXT类型到CHAR或VARCHAR类型转换最多为8000个字符,即CHAR或VARCHAR数据类型是最大长度。

5)IMAGE类型存储的数据转换到BINARY或VARBINARY类型,最多为8000个字符。

6)把整数值转换为MONEY或SMALLMONEY类型,按定义的国家的货币单位来处理,如人民币、美元、英镑等。

7)BIT类型的转换把非零值转换为1,并仍以BIT类型存储。

8)试图转换到不同长度的数据类型,会截短转换值并在转换值后显示“+”,以标识发生了这种截断。

9)用CONVERT()函数的style 选项能以不同的格式显示日期和时间。style 是将DATATIME 和SMALLDATETIME 数据转换为字符串时所选用的由SQL Server 系统提供的转换样式编号,不同的样式编号有不同的输出格式。

七、日期函数

1、day(date_expression)

返回date_expression中的日期值

2、month(date_expression)

返回date_expression中的月份值

3、year(date_expression)

返回date_expression中的年份值

4、DATEADD()

DATEADD (, , )

返回指定日期date 加上指定的额外日期间隔number 产生的新日期。

5、DATEDIFF()

DATEDIFF (, , )

返回两个指定日期在datepart 方面的不同之处,即date2 超过date1的差距值,其结果值是一个带有正负号的整数值。

6、DATENAME()

DATENAME (, )

以字符串的形式返回日期的指定部分此部分。由datepart 来指定。

7、DATEPART()

DATEPART (, )

以整数值的形式返回日期的指定部分。此部分由datepart 来指定。 DATEPART (dd, date) 等同于DAY (date)

DATEPART (mm, date) 等同于MONTH (date)

DATEPART (yy, date) 等同于YEAR (date)

8、GETDATE()

以DATETIME 的缺省格式返回系统当前的日期和时间。

八、统计函数

AVG ( ) -返回的平均价值

count( ) -返回的行数

first( ) -返回第一个值

last( ) -返回最后一个值

max( ) -返回的最大价值

min( ) -返回最小的价值

total( ) -返回的总和

九、数学函数

abs(numeric_expr)求绝对值

ceiling(numeric_expr)取大于等于指定值的最小整数 exp(float_expr)取指数

floor(numeric_expr)小于等于指定值得最大整数 pi()3.1415926.........

power(numeric_expr,power)返回power次方

rand([int_expr])随机数产生器

round(numeric_expr,int_expr)安int_expr规定的精度四舍五入 sign(int_expr)根据正数,0,负数,,返回+1,0,-1 sqrt(float_expr)平方根

十、系统函数

suser_name()用户登录名

user_name()用户在数据库中的名字 user用户在数据库中的名字 show_role()对当前用户起作用的规则

db_name()数据库名object_name(obj_id) 数据库对象名

col_name(obj_id,col_id) 列名

col_length(objname,colname) 列长度

valid_name(char_expr)是否是有效标识符

第三篇:VF上机试题 SQL语言

VFP关系数据库标准语言SQL

【机试】

[1] 在练习文件夹中有一个数据库sdb,其中有数据库表student

2、sc和course2。3个表结构如下所示:

STUDENT2(学号,姓名,年龄,性别,院系编号)

SC(学号,课程号,成绩,备注)

COURSE2(课程号,课程名,选修课号,学分)

用SQL语句查询"计算机软件基础"课程的考试成绩在85分以下(含85分)的学生的全部信息并将结果按学号升序存入noex.dbf文件中(表的结构同student2,并在其后加入成绩字段)。 答案: SELECT STUDENT2.*,成绩 FROM STUDENT2,SC,COURSE2 WHERE

STUDENT2.学号=SC.学号

AND SC.课程号=COURSE2.课程号 AND 课程名="计算机软件

基础" AND 成绩<=85 ORDER BY STUDENT2.学号 INTO TABLE

NOEX。

[2] 将order_list1表中的全部记录追加到order_list表中,然后用SQL SELECT语句完成查询:按总金额降序列出所有客户的客户号、客户名及其订单号和总金额,并将结果存储到results表中(其中客户号、客户名取自customer表,订单号、总金额取自order_list表) 答案:(1)SELECT * FROM ORDER_LIST1 INTO TABLE ORDER_LIST

(2)SELECT CUSTOMER.客户号, ORDER_LIST.客户名,订单号,

总金额 FROM CUSTOMER, ORDER_LIST WHERE CUSTOMER.客户

号=ORDER_LIST.客户号 ORDER BY 总金额DESC INTO TABLE

RESULTS.

[3]将customer1表中的全部记录追加到customer表中,然后用SQL SELECT语句完成查询:列出目前有订购单的客户信息(即有对应的order_list记录的customer表中的记录),同时要求按客户号升序排序,并将结果存储到results表中(表结构与customer表结构相同)。

答案:SELECT * FROM CUSTOMER1 INTO TABLE CUSTOMER

SELECT * FROM CUSTOMER WHERE 客户号 IN(SELECT 客户号

FROM ORDER_LIST)ORDER BY 客户号 INTO TABLE RESULTS

[4]列出总金额大于所有订购单总金额平均值的订购单(order_list)清单(按客户号升序排列),并将结果存储到results表中(表结构与order_list表结构相同)。

答案:SELECT * FROM ORDER_LIST WHERE 总金额>(SELECT AVG(总金额) FROM ORDER_LIST) ORDER BY 客户号 INTO TABLE RESULTS.

第四篇:Sql语句查询

sql语句多表连接查询

在程序开发过程中,不仅可以对单一数据表进行查询,还可以进行多表查询,用户通过多表查询从多个表中提取出需要的数据。

多表查询可以分为内连接查询、外连接查询以及联合查询。

1.内连接查询

连接查询是指通过各个表之间共同列的关联性查询数据。连接查询分为内连接查询和外连接查询。内连接是将两个相互交叉的数据集合中重叠部分的数据行连接起来,返回表示两个数据集合之间匹配连接关系的数据行。

可以在FORM子句中使用INNER JOIN„ON„建立内连接,也可以在WHERE子句中指定连接条件建立内连接,例如:

select a.UserName,b.BookName,b.Datetm from UserInfo as a inner join SellSheet as b on a.UserID= b.UserID

也可以用下面的语句实现。

select a.UserName,b.BookName,b.Datetm from UserInfo as a,SellSheet as b where a.UserID=b.UserID

2.外连接查询

外连接是对内连接的扩充,除了将两个数据集合中重叠部分以内的数据行连接起来之外,还可以根据要求返回左侧或右侧数据集合中非匹配的数据,即左外连接(LEFT OUTER JOIN)和右外连接(RIGHT OUTER JOIN)。

l左外连接LEFT OUTER JOIN

左外连接LEFT OUTER JOIN逻辑运算符除了返回两个数据表中满足连接条件的行,它还返回任何在后一个数据表中没有匹配行的前一个数据表中的行。非匹配行的部分字段列作为空值返回。

l右外连接RIGHT OUTER JOIN

右外连接RIGHT OUTER JOIN是左外连接的反向连接。它除了返回两个数据表中满足连接条件的行,还返回任何在前一个数据表中没有匹配行的后一个数据表中的行。非匹配行的部分字段列作为空值返回。

3.使用UNION进行联合查询

使用UNION运算符可以进行联合查询。UNION运算符连接多个SELECT语句,将两个或更多查询的结果组合为单个结果集,该结果集包含联合查询中所有查询的全部行。 使用UNION运算符遵循的规则如下:

(1)在使用UNION运算符组合的语句中,所有选择列表的表达式数目必须相同(列名、算术表达式、聚集函数等)。

(2)在使用UNION组合的结果集中的相应列必须具有相同数据类型,或者两种数据类型之间必须存在可能的隐性数据转换,或者提供了显式转换。例如,在datetime数据类型的列和binary数据类型的列之间不能使用UNION运算符,除非提供了显式转换,而在money数据类型的列和int数据类型的列之间可以使用UNION运算符,因为它们可以进行隐性转换。

(3)结果集中列的名字或者别名是由第一个SELECT语句的选择列表决定的。

注意:对数据表进行联合查询时,结果集中行的最大数量是各表行数之“和”,而对数据表进行连接查询时,结果集中行的最大数量是各表行数之“积”。

第五篇:SQL语句大全

SQL练习

一、 设有如下的关系模式, 试用SQL语句完成以下操作:

学生(学号,姓名,性别,年龄,所在系)

课程(课程号,课程名,学分,学期,学时)

选课(学号,课程号,成绩)

1. 求选修了课程号为“C2”课的学生学号

2. 求选修了课程号为“C2”课的学生学号和姓名

3. 求没有选修课程号为“C2”课的学生学号

4. 求选修了课程号为“C2”,又选修了课程号为“C3”课的学生学号

5.求选修了课程号为“C2”或“C3”课的学生学号

6.求选修了全部课程的学生学号

7.求至少选修了学号为“98002”的学生所学过的所有课程的学生的学号和姓名。

8.查询学生选课表中的全部数据

9.查询计算机系学生的姓名、年龄

10.查询成绩在70—80分之间的学生的学号、课程号和成绩

11.查询计算机系年龄在18—20之间且性别为“男”的学生的姓名和年龄

12.查询成绩在80分以上的学生的姓名、课程号和成绩,并按成绩的降序排列结果。

13.查询哪些课程没有人选修,要求列出课程号和课程名。

14.查询数学系成绩在80分以上的学生的学号,姓名

15.查询课程号为“C02”的课程的最高分数。

16.查询计算机系学生的最大年龄和最小年龄。

17.统计每个系的学生人数。

18.统计每门课程的选课人数和考试最高分。

19.统计每个学生的选课门数和考试总成绩,并按选课门数的升序显示结果。

20.查询总成绩超过200分的学生,要求列出学号、总成绩。

21.用子查询实现如下查询:

(1) 查询选修了课程号“C01”的学生的姓名和所在系。

(2) 查询数学系成绩在80分以上的学生的学号和姓名。

(3) 查询计算机系考试成绩最高的学生的姓名。

22.删除选课成绩小于60分的学生的选课记录。

23.将所有选修了课程“C01”的学生的成绩加10分。

24.将计算机系所有选修了课程“计算机文化基础”课程的学生的成绩加10分。

25.创建查询学生的学号、姓名、所在系、课程号、课程名、课程学分的视图。

26.创建查询每个学生的平均成绩的视图,要求列出学生学号和平均成绩。

27.创建查询每个学生的选课学分的视图,要求列出学生学号及总学分。

本文来自 99学术网(www.99xueshu.com),转载请保留网址和出处

上一篇:12345服务对象下一篇:转正申请书

热门文章

常用谚语