开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 5914|回复: 12
收起左侧

[图文资料] 易语言与SQL (易语言使用SQL语句)

[复制链接]
结帖率:0% (0/1)
发表于 2010-3-24 22:09:16 | 显示全部楼层 |阅读模式   河北省沧州市
学习使用数据库,难免要使用SQL语句。外部数据库使用SQL语句可以快速地完成对数据库的种种操作,如:查询、修改、插入记录、删除记录等。至于更多的,比如:创建表、删除表、加密数据等等,等我们能够比较熟练地掌握数据库的操作再研究。
  一、基本命令格式
  1、查询记录
  基本格式:select 字段名 from 表名 where 条件
  例如:要查询“员工表"中“张三"的信息,可以这么写:“select * from 员工表 where 姓名='张三'"。这里,“员工表"是要查询的表的名称,“姓名"是字段名称。
  如果要查询的是张三的电话呢?就得这么写:“select 电话 from 员工表 where 姓名='张三'"。“电话"也是该表中的字段。
  如果要查询整个表的信息,就不需要加“where"。比如,要查询“员工表"中所有员工的全部信息,就可以这么写:“select * from 员工表"。
  2、删除记录
  基本格式:delete from 表名 where 条件
  例如:要删除“学生表"中“成绩"小于50的学生名字,可以这么写:“delete from 学生表 where 成绩<50"
  如果不加条件,就会删除该表中所有记录,该表就变成一个没有记录的空表,以后还可以向表中添加记录。本命令与删除表“drop table"不同,“drop table"删除的是被操作的表,删除后,整个表都不存在,也就不可以再添加记录了。
  3、添加记录
  基本格式:insert into 表名(字段1,字段2,字段3) values (字段1的值,字段2的值,字段3的值)
  本命令是往指定的表中添加记录。要注意,“表名"后面括号中是被操作的字段名称,“values"后面括号中是对应的字段值,不要弄错了位置的先后顺序。还有,本命令不可以跟“where",因为你要添加的记录在表中根本没有,所以也就不可以有什么条件了。
  4、修改记录
  基本格式:update 表名 set 欲修改的字段名1=该字段的新值,欲修改的字段名2=该字段的新值 where 条件
  该命令是修改表中已经存在的记录数据。如果不加“where"条件,就会把所有指定的字段都改成新值。
  比如:要修改“员工表"中“张三"的工资为1500,应该这么写:“update 员工表 set 工资=1500 where 姓名='张三'"。
  二、易语言命令操作数据库
  在易语言中,对外部数据库,比如ACCESS的操作,有如下方法:
  一个是用“外部数据库",另一个是用“数据库连接"和“记录集"。前一种是我这段时间正在学习的,操作起来比较方便。后一种我还没有用过,不敢多讲。不过,我觉得记录集就象一张表格,只是这表格是看不见的,是动态的。在这里,我只说一下“外部数据库"。
  1、查询操作
  基本命令:外部数据库控件名称.查询(SQL命令语句)
  这一命令只可以用来进行查询操作。使用的时候要注意SQL语句是否正确。
  如果查询的记录存在,则回车满足查询条件的记录的条数,否则回车0。
  2、非查询操作
  基本命令:外部数据库控件名称.执行(SQL命令语句,操作的数据)
  这一命令可以完成对数据的添加、删除、修改等操作,也可以完成对数据库中表的创建、删除。此命令有两个参数,第一个是SQL命令,后一个是你要操作的数据。第二个参数是可以省略的,只在对表中的备注型、OLE型字段进行操作时才用。
  本命令执行成功回车真,否则回车假。这样我们就可以通过执行的结果来判断操作是否正确了。
  比如,你想把一张图 片放入数据库,应该这么做:
  外部数据库1.执行(“insert into 图 片表(图 片名,图 片) values ('美丽的图 片',?)",读入文件(你要放入的图 片的文件名称))
  其中,“图 片表"是你的数据库中存放图 片的表的名称,“图 片名"和“图 片"是字段名称,前一字段是文本型的,后一字段是OLE型,也就是易语言中字节集型的。
  “美丽的图 片"是在表中插入的新记录中“图 片名"字段所对应的值,在SQL语句中要用单引号括起来。“?"表示你要操作的数据,如果你操作的数据中有字节集型的,应该用“?"代替,在后面的第二参数中写入真正的数据内容。如果你同时操作多个字节集型的数据,应该用多个“?",并且后面按照顺序放置相应的值。
  3、读数据库数据
  读数据的时候,首先要用查询命令,要不然是没法读数据的。
  建立一个变量,存放查询的结果。如:查询结果,整数型。
  查询结果=外部数据库控件名称.查询(查询类的SQL语句)
  外部数据库控件名称.到首记录(查询结果)
  存放数据的变量=外部数据库控件名称.读(查询结果,要读的字段名称)
  好了,以上是我学习数据库以来的一点体会,与朋友们一同分享。朋友们也可以看一下我最近发的软件《小小日记本》、《易用通讯录》和例程《图 片导入数据库》,里面用了SQL语句对ACCESS数据库进行记录的增删、修改、查询等操作


模糊查询1  查询姓名中带“李”的同学
aql语句=“select*from 成绩表 where 姓名 like ‘%李%’”

like 是模糊匹配的意思 % 是SQL语言里的通配符,用于表示多个字符 长度不限


模糊查询2 查询 姓“李”的同学
aql语句=“select*from 成绩表 where 姓名 like ‘李_’”  
    “_”也是一个通配符 用于表示一个字符  (半角下划线)

过滤一个字段重复数据
select distinct 字段 from 表
distinct 过滤重复的子句!

sql = “select 字段名 from 表明 order by 排序的字段名 asc”

order by 排序命令  ASC为升序,DESC为降序

结帖率:33% (1/3)
发表于 2010-4-21 17:25:23 | 显示全部楼层   湖南省常德市
学习中~~~~~ 貌似 以前下载过了
回复 支持 反对

使用道具 举报

结帖率:100% (1/1)
发表于 2010-6-13 01:23:32 | 显示全部楼层   湖北省鄂州市
好我喜欢,正学习呢
回复 支持 反对

使用道具 举报

结帖率:100% (4/4)

签到天数: 3 天

发表于 2010-6-24 20:19:24 | 显示全部楼层   上海市上海市
想学数据库呢  不知道怎么入手啊
回复 支持 反对

使用道具 举报

结帖率:25% (2/8)
发表于 2010-11-9 17:57:23 | 显示全部楼层   河南省郑州市
谢谢分享.非常好阿
回复 支持 反对

使用道具 举报

发表于 2011-2-21 16:06:20 | 显示全部楼层   云南省保山市
数据库的知识一点都没有呀,不知能不能学会,,,
回复 支持 反对

使用道具 举报

结帖率:100% (2/2)
发表于 2011-7-26 21:09:21 | 显示全部楼层   广东省汕尾市
{:3_229:}全是字啊 真悲剧 有木有视频教程咯
回复 支持 反对

使用道具 举报

结帖率:0% (0/1)
发表于 2011-7-27 10:41:55 | 显示全部楼层   河北省沧州市
正好用得着
回复 支持 反对

使用道具 举报

结帖率:0% (0/1)
发表于 2011-7-30 11:54:02 | 显示全部楼层   福建省泉州市
呵呵呵呵呵呵
回复 支持 反对

使用道具 举报

发表于 2011-7-30 12:42:10 | 显示全部楼层   安徽省宿州市
学习一下吧
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表