易语言,SQL数据库教程[整理版] 易语言操作SQL Server数据库全过程最近看到很多初学者在问在易语言中如何操作SQL Server以外部数据库,也有人提出想要个全面的操作过程,为了让大家能够尽快上手,我给大家简单介绍一下操作SQL的过程,希望能起到抛砖引玉的作用。
由于我本身工作业比较忙,就以我目前做的一个软件的部份内容列给大家简单讲讲吧,高手就不要笑话了,只是针对初学者第一步,首先需要建立一个数据库: 以建立一个员工表为例,各字段如下: 3 员工ID int 4 0 0 登陆帐号 nvarchar 30 1 0 密码 nvarchar 15 1 所属部门 nvarchar 30 1 00 姓名 nvarchar 10 1 0 性别 nvarchar 2 1 0 年龄 nvarchar 10 1 0 当前职务 nvarchar 10 1 0 级别 nvarchar 10 1 0 出生日期 nvarchar 40 1 0 专业nvarchar 10 1 0 学历 nvarchar 8 1 0 婚姻状况 nvarchar 4 1 0 身份证号nvarchar 17 1 0 籍贯 nvarchar 50 1 0 毕业院校 nvarchar 50 10 兴趣爱好 nvarchar 600 1 0 电话 nvarchar 11 1 0 家庭成员 nvarchar 20 1 0 工作经历 nvarchar 600 1 0 销售行业经验nvarchar 600 1 0 离职原因nvarchar 600 1 0 升迁记录 nvarchar 600 1 0 调岗记录 nvarchar 600 1 0 特殊贡献 nvarchar 600 1 0 奖励记录 nvarchar 600 1 0 处罚记录 nvarchar 600 1 0 同事关系 nvarchar 4 1 0 企业忠诚度 nvarchar 4 1 0 入司日期 nvarchar 30 1 0 在职状态 nvarchar 4 1 0 上级评语 nvarchar 600 1 0 最后登陆时间nvarchar 20 1 0 登陆次数 nvarchar 50 1 0 照片 image 16 1一般我习惯用nvarchar,因为这是可变长的的非Unicode数据,最大长度为8000个字符,您可以根据您的情况来设定,我这里只是举例说明。
第二步:在易言语中建立数据库连接,用外部数据库控件,可先建立4个全局变量:1、建立全局变量:.版本 2.全局变量服务器, 文本型.全局变量服务器数据库, 文本型.全局变量服务器用户名, 文本型.全局变量服务器密码, 文本型2、给变量赋值:.版本 2服务器 , 读配置项 (取运行目录 () ,“\sys.ini”, “server info”, “server”, “您的服务器地址”)服务器用户名 , 读配置项 (取运行目录 () ,“\sys.ini”, “s erver info”, “uid”, “您的服务器用户名”)服务器密码 , 读配置项 (取运行目录 () ,“\sys.ini”, “server info”,“pwd”, “您的服务器密码”)服务器数据库 , 读配置项 (取运行目录 () ,“\sys.ini”, “server info”, “database”, “您的数据库名城”)、然后建立外部数据库的连接。
3.版本 2.如果真 (外部数据库1.打开(“DRIVER=SQL Server;SERVER=” ,服务器,“;UID=” ,服务器用户名,“[s:12]WD=” ,服务器密码,“;WSID=” ,服务器,“;DATABASE=” ,服务器数据库, ) , 真).如果真 (外部数据库1.打开SQL数据库 (服务器, 服务器用户名, 服务器密码, 服务器数据库, , ) , 假)信息框(“打开数据库失败”, #警告图标, )结束 ().如果真结束到此,您已经完成了与SQL数据库的连接,可以开始使用,以下讲讲在数据库中要到的增加、查询、修改、删除命令:建立全局变量:.版本 2.全局变量脚本, 文本型.全局变量记录集句柄1、 SQL增加语句的使用:版本 2 .脚本, “insert into 员工表 ([姓名],[性别],[年龄],[出生日期],[专业],[学历],[婚姻状况],[身份证号],[籍贯],[毕业院校],[兴趣爱好],[电话],[家庭成员],[工作经历],[销售行业经验],[离职原因],[所属部门],[当前职务],[升迁记录],[调岗记录],[特殊贡献],[奖励记录],[处罚记录],[同事关系],[企业忠诚度],[入司日期],[在职状态],[上级评语],[照片]) values ('” ,编辑框_职员信息_姓名.内容,“','” ,编辑框_职员信息_性别.取项目文本 (编辑框_职员信息_性别.现行选中项) ,“','” ,编辑框_职员信息_年龄.内容,“','” ,编辑框_职员信息_出生日期.内容,“','” ,编辑框_职员信息_专业.内容,“','” ,组合框_职员信息_学历.取项目文本 (组合框_职员信息_学历.现行选中项) ,“','” ,组合框_职员信息_婚姻状况.取项目文本 (组合框_职员信息_婚姻状况.现行选中项) ,“','” ,编辑框_职员信息_身份证号.内容,“','” ,编辑框_职员信息_籍贯.内容,“','” ,编辑框_职员信息_毕业院校.内容,“','” ,编辑框_职员信息_兴趣爱好.内容,“','” ,编辑框_职员信息_电话.内容,“','” ,编辑框_职员信息_家庭成员.内容,“','” ,编辑框_职员信息_工作经历.内容,“','” ,编辑框_职员信息_销售行业经验.内容,“','” ,编辑框_职员信息_离职原因.内容,“','” ,编辑框_职员信息_所属部门.内容,“','” ,编辑框_职员信息_当前职务.内容,“','” ,编辑框_职员信息_升迁记录.内容,“','” ,编辑框_职员信息_调岗记录.内容,“','” ,编辑框_职员信息_特殊贡献.内容,“','” ,编辑框_职员信息_奖励记录.内容,“','” ,处罚记录编辑框.内容,“','” ,组合框_职员信息_同事关系.取项目文本 (组合框_职员信息_同事关系.现行选中项) ,“','” ,组合框_职员信息_企业忠诚度.取项目文本 (组合框_职员信息_企业忠诚度.现行选中项) ,“','” ,编辑框_职员信息_入司日期.内容,“','” ,组合框_职员信息_在职状态.取项目文本 (组合框_职员信息_在职状态.现行选中项) ,“','” ,编辑框_职员信息_上级评语.内容,“',?)”.如果 (SQL数据库.执行 (脚本, 照片图片框.图片) , 真)信息框(“保存员工信息成功!”, 0, ).否则信息框(“保存员工信息失败!”, 0, ) .如果结束SQL数据库.关闭记录集 (记录集句柄)需要注意的是,在上面红色部分有个,,这是保存图片的字段,在蓝色部分可以(脚本, 照片图片框.图片) 照片图片框.图片是字节集看见,(SQL数据库.执行数据,也就是数据库中对应的照片字段,image类型 2、 SQL查询语句的使用: .版本 2脚本, “select 员工ID,姓名 from 员工表 where 姓名” ,“= ” ,“'” ,编辑框_职员信息_姓名.内容,“'” 记录集句柄 , SQL数据库.查询(脚本).如果真 (编辑框_职员信息_姓名.内容 , SQL数据库.读 (记录集句柄, “姓名”))信息框(“您要录入的员工姓名:” ,编辑框_职员信息_姓名.内容,“已经存在~”, 0 , #询问图标, “销售管理系统提醒您~”)返回 ().如果真结束SQL数据库.关闭记录集 (记录集句柄)以上是查询的时候,需要注意的是,如果是文本型数据,需要用单引号,红色部分样式,如果需要多表查询,select可以这样写:, select A.*,B.* from A,B where A.ID=B.ID介绍一个小技巧,如果您SQL数据库操作的很熟悉,可以用视图来帮您建立多表的查询,如果把视图里的SQL语句稍微改动一下就可以放到易语言中使用了,如我这里需要把客户表与其他的表关联,用视图得到的SQL语句是这样的:SELECT dbo.客户表.客户ID, dbo.客户表.客户姓名, dbo.客户表.身份证号,dbo.客户表.客户等级, dbo.客户表.性别, dbo.客户表.年龄, dbo.客户表.电话,dbo.客户表.手机, dbo.客户表.电子邮件, dbo.客户表.联系地址,dbo.员工资料.姓名 AS 销售顾问, dbo.客户表.拜访时间, dbo.客户进程表.回访次数,dbo.客户进程表.意向房号, dbo.客户进程表.接待人员, dbo.客户进程表.主要问题,dbo.客户进程表.跟踪次数, dbo.客户进程表.跟踪人员, dbo.客户进程表.付款金额,dbo.客户进程表.预订日期, dbo.客户进程表.首付日期, dbo.客户进程表.预订金额,dbo.客户进程表.退定时间, dbo.客户进程表.退定原因, dbo.客户进程表.收款人,dbo.客户进程表.备注FROM dbo.员工资料 INNER JOINdbo.客户表 ON dbo.员工资料.员工ID = dbo.客户表.员工ID INNER JOINdbo.客户进程表 ON dbo.客户表.客户ID = dbo.客户进程表.客户ID修改成我们要在易语言中使用的SQL语句就应该写成这样:SELECT客户表.客户ID,客户表.客户姓名,客户表.身份证号,客户表.客户等级,客户表.性别,客户表.年龄,客户表.电话,客户表.手机,客户表.电子邮件,客户表.联系地址,员工资料.姓名 AS 销售顾问,客户表.拜访时间,客户进程表.回访次数,客户进程表.意向房号,客户进程表.接待人员,客户进程表.主要问题,客户客户进程表.跟踪人员,客户进程表.付款金额,客户进程表.预进程表.跟踪次数,订日期,客户进程表.首付日期,客户进程表.预订金额,客户进程表.退定时间,客户进程表.退定原因,客户进程表.收款人,客户进程表.备注FROM 员工表,客户表,客户进程表WHERE 员工资料.员工ID =客户表.员工AND 客户表.客户ID =客户进程表.客户ID细心的读者应该可以看到,把上面的DBO,全部取消了,后面多加了一个WHERE和AND语句,只要大家多动动脑,复杂的语句也可以用SQL Server数据库来为我们完成。