易语言sql语法实用大全范本模板文档格式.docx
《易语言sql语法实用大全范本模板文档格式.docx》由会员分享,可在线阅读,更多相关《易语言sql语法实用大全范本模板文档格式.docx(19页珍藏版)》请在冰豆网上搜索。
0处罚记录nvarchar6001
0同事关系nvarchar41
0企业忠诚度nvarchar41
0入司日期nvarchar301
0在职状态nvarchar41
0上级评语nvarchar6001
0最后登陆时间nvarchar201
0登陆次数nvarchar501
0照片image161
一般我习惯用nvarchar,因为这是可变长的的非Unicode数据,最大长度为8000个字符,您可以根据您的情况来设定,我这里只是举例说明。
第二步:
在易言语中建立数据库连接,用外部数据库控件,可先建立4个全局变量:
1、建立全局变量:
.版本2
.全局变量服务器,文本型
。
全局变量服务器数据库,文本型
.全局变量服务器用户名,文本型
全局变量服务器密码,文本型
2、给变量赋值:
服务器=读配置项(取运行目录()+“\sys.ini”,“serverinfo”,“server”,“您的服务器地址”)
服务器用户名=读配置项(取运行目录()+“\sys.ini”,“serverinfo”,“uid”,“您的服务器用户名”)
服务器密码=读配置项(取运行目录()+“\sys.ini"
“serverinfo”,“pwd”,“您的服务器密码"
)
服务器数据库=读配置项(取运行目录()+“\sys。
ini”,“serverinfo”,“database”,“您的数据库名城”)
3、然后建立外部数据库的连接。
.如果真(外部数据库1.打开(“DRIVER=SQLServer;
SERVER=”+服务器+“;
UID="
+服务器用户名+“;
PWD=”+服务器密码+“;
WSID=”+服务器+“;
DATABASE=”+服务器数据库,)=真)
.如果真(外部数据库1.打开SQL数据库(服务器,服务器用户名,服务器密码,服务器数据库,,)=假)
信息框(“打开数据库失败"
,#警告图标,)
结束()
.如果真结束
到此,您已经完成了与SQL数据库的连接,可以开始使用,以下讲讲数据库中要用到的增加、查询、修改、删除命令:
建立全局变量:
版本2
.全局变量脚本,文本型
全局变量记录集句柄
1、SQL增加语句的使用:
脚本=“insertinto员工表([姓名],[性别],[年龄],[出生日期],[专业],[学历],[婚姻状况],[身份证号],[籍贯],[毕业院校],[兴趣爱好],[电话],[家庭成员],[工作经历],[销售行业经验],[离职原因],[所属部门],[当前职务],[升迁记录],[调岗记录],[特殊贡献],[奖励记录],[处罚记录],[同事关系],[企业忠诚度],[入司日期],[在职状态],[上级评语],[照片])values('
"
+编辑框_职员信息_姓名.内容+“’,'
+编辑框_职员信息_性别.取项目文本(编辑框_职员信息_性别.现行选中项)+“’,'
”+编辑框_职员信息_年龄.内容+“’,'
”+编辑框_职员信息_出生日期。
内容+“'
,’”+编辑框_职员信息_专业。
'
”+组合框_职员信息_学历.取项目文本(组合框_职员信息_学历.现行选中项)+“'
’”+组合框_职员信息_婚姻状况.取项目文本(组合框_职员信息_婚姻状况.现行选中项)+“'
’”+编辑框_职员信息_身份证号。
,'
”+编辑框_职员信息_籍贯。
内容+“’,'
+编辑框_职员信息_毕业院校.内容+“’,’”+编辑框_职员信息_兴趣爱好.内容+“’,’”+编辑框_职员信息_电话。
”+编辑框_职员信息_家庭成员.内容+“’,’”+编辑框_职员信息_工作经历.内容+“’,’”+编辑框_职员信息_销售行业经验.内容+“'
+编辑框_职员信息_离职原因。
内容+“’,’”+编辑框_职员信息_所属部门。
”+编辑框_职员信息_当前职务.内容+“’,'
+编辑框_职员信息_升迁记录.内容+“'
”+编辑框_职员信息_调岗记录。
”+编辑框_职员信息_特殊贡献。
’”+编辑框_职员信息_奖励记录。
”+处罚记录编辑框.内容+“'
”+组合框_职员信息_同事关系.取项目文本(组合框_职员信息_同事关系。
现行选中项)+“’,'
”+组合框_职员信息_企业忠诚度.取项目文本(组合框_职员信息_企业忠诚度。
现行选中项)+“'
”+编辑框_职员信息_入司日期。
内容+“’,'
”+组合框_职员信息_在职状态.取项目文本(组合框_职员信息_在职状态.现行选中项)+“’,’”+编辑框_职员信息_上级评语。
内容+“’,?
)”
如果(SQL数据库.执行(脚本,照片图片框。
图片)=真)
信息框(“保存员工信息成功!
”,0,)
.否则
信息框(“保存员工信息失败!
”,0,)
如果结束
SQL数据库。
关闭记录集(记录集句柄)
需要注意的是,在上面红色部分有个?
,这是保存图片的字段,在蓝色部分可以看见,(SQL数据库.执行(脚本,照片图片框.图片)照片图片框。
图片是字节集数据,也就是数据库中对应的照片字段,image类型
2、SQL查询语句的使用:
脚本=“select员工ID,姓名from员工表where姓名"
+“="
+“’”+编辑框_职员信息_姓名.内容+“'
”
记录集句柄=SQL数据库。
查询(脚本)
如果真(编辑框_职员信息_姓名。
内容=SQL数据库.读(记录集句柄,“姓名"
))
信息框(“您要录入的员工姓名:
”+编辑框_职员信息_姓名.内容+“已经存在!
”,0+#询问图标,“销售管理系统提醒您!
”)
返回()
如果真结束
以上是查询的时候,需要注意的是,如果是文本型数据,需要用单引号,红色部分样式,
如果需要多表查询,select可以这样写:
,
selectA。
*,B.*fromA,BwhereA。
ID=B。
ID
介绍一个小技巧,如果您SQL数据库操作的很熟悉,可以用视图来帮您建立多表的查询,如果把视图里的SQL语句稍微改动一下就可以放到易语言中使用了,
如我这里需要把客户表与其他的表关联,用视图得到的SQL语句是这样的:
SELECTdbo。
客户表。
客户ID,dbo。
客户姓名,dbo.客户表.身份证号,
dbo。
客户等级,dbo。
性别,dbo.客户表。
年龄,dbo。
电话,
客户表.手机,dbo.客户表。
电子邮件,dbo.客户表.联系地址,
员工资料。
姓名AS销售顾问,dbo。
拜访时间,dbo。
客户进程表。
回访次数,
意向房号,dbo.客户进程表。
接待人员,dbo。
客户进程表.主要问题,
跟踪次数,dbo。
客户进程表.跟踪人员,dbo.客户进程表。
付款金额,
客户进程表.预订日期,dbo。
首付日期,dbo.客户进程表。
预订金额,
dbo.客户进程表。
退定时间,dbo。
退定原因,dbo.客户进程表.收款人,
客户进程表.备注
FROMdbo.员工资料INNERJOIN
客户表ONdbo.员工资料。
员工ID=dbo.客户表.员工IDINNERJOIN
dbo.客户进程表ONdbo.客户表。
客户ID=dbo.客户进程表。
客户ID
修改成我们要在易语言中使用的SQL语句就应该写成这样:
SELECT客户表.客户ID,客户表。
客户姓名,客户表.身份证号,客户表。
客户等级,客户表。
性别,客户表。
年龄,客户表。
电话,客户表。
手机,客户表。
电子邮件,客户表.联系地址,员工资料.姓名AS销售顾问,客户表。
拜访时间,客户进程表.回访次数,客户进程表。
意向房号,客户进程表.接待人员,客户进程表.主要问题,客户进程表.跟踪次数,客户进程表。
跟踪人员,客户进程表.付款金额,客户进程表.预订日期,客户进程表.首付日期,客户进程表.预订金额,客户进程表.退定时间,客户进程表.退定原因,客户进程表。
收款人,客户进程表.备注
FROM员工表,客户表,客户进程表
WHERE员工资料.员工ID=客户表.员工AND客户表.客户ID=客户进程表.客户ID
细心的读者应该可以看到,把上面的DBO,全部取消了,后面多加了一个WHERE和AND语句,只要大家多动动脑,复杂的语句也可以用SQLServer数据库来为我们完成。
3、SQL修改语句的使用:
判断开始(选定项目2=1)
脚本=“update员工表set"
+选定项目1+“=’"
+删首尾空(新员工名称编辑框.内容)+“'
,备注”+“=’”+删首尾空(备注编辑框.内容)+“'
where”+选定项目1+“='
”+项目文本1+“'
.判断(选定项目2=2)
脚本=“update员工表set”+选定项目1+“=’”+删首尾空(新员工名称编辑框。
内容)+“'
,备注"
+“='
+删首尾空(备注编辑框.内容)+“’where”+部门编号1+“="
+“’”+“1”+“’and”+选定项目1+“='
”+项目文本1+“’"
默认
.判断结束
.判断开始(SQL数据库。
执行(脚本,)=真)
部门管理窗口。
读取并显示当前记录集()
SQL数据库.关闭记录集(记录集句柄)
销毁()
信息框(“修改员工姓名失败!
,#警告图标,)
上面用了一个判读语句,用来选择要使用的SQL语句,第一个脚本是直接修改员工的名字,第二个脚本是修改某个部门下的员工的名字,必须是在那个部门下的人员才可以修改。
相信大家应该可以看得明白.
4、SQL删除语句的使用:
.
脚本=“deletefrom员工表where”+选定姓名1+“=’”+姓名+“’and员工ID=’”+取得的ID+"
’”
.判断开始(SQL数据库.执行(脚本,)=真)
信息框(“删除员工成功!
#信息图标,)
员工管理窗口.读取并显示当前记录集()
信息框(“删除员工失败!
”,#警告图标,)
上面出现的选定姓名1、姓名、取得的ID、三个,是我用的临时的变量,是为了从其他地方动态的取得要删除的内容,简化以后得到的SQL语句就是这样.
deletefrom员工表where员工姓名=‘姓名’and员工ID=1
以上是我目前开发的我们公司的一个销售管理系统的程序,把大家想知道的内容提出来并简化给大家做个参考,源代码我就不送上了,相信大家也应该可以看的明白,由于工作一直比较忙,没有截图,也没有细心整理,不过语句都没有错误的,大家放心使用,等有时间给大家出一个专门操作SQLServer数据库网络版软件的教程,这里只是简单的操作而已,给初学者一个借鉴.
数据定义语言(DDL)和数据操作语言(DML)。
(1)数据定义语言(DDL)
数据定义语言用来定义数据库的各级模式.常用关键字有:
Create(建立数据表)、Alter(更改数据表)、Drop(删除数据表)。
建立数据表
CREATETABLEtable_name(
column1DATATYPE[NOTNULL][NOTNULLPRIMARYKEY],
column2DATATYPE[NOTNULL],
.。
.
)
说明:
上面的DATATYPE指的是字段的类型,NUTNULL指是否为空,PRIMARYKEY指本表的主键。
建立索引
CREATEINDEXindex_nameONtable_name(column_name)
为数据表格的某个字段建立索引以增加查询时的速度。
更改数据表
ALTERTABLEtable_nameADDCOLUMNcolumn_nameDATATYPE
增加一个字段。
ALTERTABLEtable_nameADDPRIMARYKEY(column_name)
将某个字段设为主键.
ALTERTABLEtable_nameDROPPRIMARYKEY(column_name)
将某个字段的主键定义取消.
删除数据表
DROPtable_name
DROPindex_name
于ODBC数据源连接文本
在《外部数据库的连接原理》一讲中我们说过,ODBC提供对多种数据库的支持,如dBase、Access、MSSQLServer及Oracle,也就是说运用ODBC数据源中所提供的连接代码,我们可以实现对多种数据库的连接。
以连接Access数据库为例,ODBC数据源连接文本的格式是:
“Driver={数据库驱动程序};
Dbq=数据库文件;
在以上连接文本中,如果数据库跟程序在同一目录下,或者用变量DefaultDir指定了数据库所在目录,则数据库文件可以不用全路径名,如下即可:
“ODBC;
DBQ=MSAccess.mdb;
Driver={MicrosoftAccessDriver(*.mdb)};
如下也可:
“ODBC;
DBQ=MSAccess。
mdb;
DefaultDir=d:
\Downloads\e21;
Driver={MicrosoftAccessDriver(*.mdb)};
如果数据库跟程序不在同一目录下,或者没有用变量DefaultDir指定数据库所在目录,则数据库文件需要用全路径名,如下:
DBQ=E:
\QuakeIIIArena\MSAccess.mdb;
Driver={MicrosoftAccessDriver(*.mdb)};
以上所说的是连接Access数据库的格式,那么连接其他数据库的ODBC数据源连接文本又是怎样的?
连接不同类型的数据库要使用不同的对应驱动程序,没忘记吧!
不同的驱动程序当然它们的参数组合也就不同了,每一种不同驱动程序都有其特定的的参数形式:
⑴、MSAccessODBCDSNless连接:
☆、参数:
Driver设置值:
{MicrosoftAccessDriver(*。
mdb)}
Dbq设置值:
实际路径文件名称
☆、例句:
“Driver={MicrosoftAccessDriver(*。
mdb)};
Dbq=c:
\somepath\dbname.mdb;
Uid=Admin;
Pwd=pass;
”
⑵、dBaseODBCDSNless连接:
{MicrosoftdBASEDriver(*。
dbf)}
☆、参数:
☆、例句:
“Driver={MicrosoftdBASEDriver(*。
dbf)};
DriverID=277;
Dbq=c:
\somepath\dbname.dbf;
⑶、OracleODBCDSNless连接:
{MicrosoftODBCforOracle}
“Driver={MicrosoftODBCforOracle};
Server=OracleServer.world;
Uid=admin;
⑷、MSSQLServerDSNless连接:
{SQLServer};
Server设置值:
服务器名称
Database设置值:
数据表名称
Uid设置值:
用户名称
Pwd设置值:
密码
“Driver={SQLServer};
Server=servername;
Database=dbname;
Uid=sa;
Pwd=pass;
⑸、MSTextDriverDSNless连接:
{MicrosoftTextDriver(*。
txt;
*。
csv)}
“Driver={MicrosoftTextDriver(*。
csv)};
\somepath\;
Extensions=asc,csv,tab,txt;
PersistSecurityInfo=False;
⑹、VisualFoxproDSNless连接:
{MicrosoftVisualFoxProDriver}
SourceType设置值:
DBC
SourceDB设置值:
实际路径文件名称
“Driver={MicrosoftVisualFoxProDriver};
SourceType=DBC;
SourceDB=c:
\somepath\dbname。
dbc;
Exclusive=No;
⑺、MySQLDSNless连接:
{mysql}
database设置值:
uid设置值:
pwd设置值:
“driver={mysql};
database=yourdatabase;
uid=username;
pwd=password;
option=16386”
*******************************************************************
SQL语言简介
在上一讲中我们介绍了连接外部数据库的方法,那么连接之后怎样对外部数据库进行读取、显示、增删、更新、查询等操作呢?
这些操作需要通过外部数据库等对象调用SQL指令才能完成。
㈠、什么是SQL语言
SQL(StructureQueryLanguge,结构化查询语言)是一种数据库专用的计算机语言,不管是Oracle、MSSQL、Access、MySQL或其他公司的数据库,也不管数据库建立在大型主机或个人计算机上,都可以使用SQL语言来访问和修改数据库的内容。
虽然不同公司的数据库软件多多少少会增加一些专属的SQL语法,但大体上,它们还是遵循ASNI(美国国家标准协会)制定的SQL标准。
因为SQL语言具有易学习及阅读等特性,所以SQL逐渐被各种数据库厂商采用,而成为一种共通的标准查询语言。
只要你学会SQL,即可操作各种数据库如VisualFoxpro、Access、dBase等等。
总之,SQL语言是各种数据库都可以使用的数据库查询语言。
SQL语言不仅仅具有查询数据库的功能,而且可以对数据库完成选取、增删、更新与跳转等各种操作。
㈡、SQL语言的组成
SQL语言是由命令(函数)、子句、运算符、加总函数及通配符等组成,分述如下:
1、命令
SQL的命令可分成数据定义语言与数据操作语言,数据定义语言可用来建立新的数据库、数据表、字段及索引等,本教程不予介绍;
另一为数据操作语言,可用来建立查询表、排序、筛选数据、修改、增删等动作。
数据定义语言命令常用的有选择、添加、删除和修改这四种:
⑴、命令:
SELECT
中文意思:
选择
用于找出合乎条件的记录
⑵、命令:
INSERT
中文意思:
插入
用于增加一笔记录或合并两个数据表
⑶、命令:
UPDATE
更新
说明:
用于更正合乎条件的记录
⑷、命令:
DELETE
删除
用于删除合乎条件的记录
2、子句
子句是用于设定命令要操作的对象(即参数),SQL所用的子句如下:
⑴、子句:
FROM
数据表
用于指定数据表
⑵、子句:
WHERE
条件
用于设定条件
⑶、GROUP