My18科技配置工具使用方法及变量说明
- 格式:docx
- 大小:522.67 KB
- 文档页数:14
My18科技配置工具使用方法及变量说明修改时间2014/04/10在My18科技配置工具中可以任意设置sql规则和自定义变量以便满足不同的网站需求。
为了方便起见,软件还自带了一组内置变量来代表相应的数据。
参数的填写:安装好程序后,点“开始—程序—My18系列软件—My18科技配置工具”,然后把数据库参数填写上即可。
注:首次配置请填写数据库管理员帐号(sa或root,要具备创建表和触发器的权限)。
配置好后可以更换为普通帐号(只需select、insert、update权限)。
填写好后点连接测试,提示成功后点“数据库配置”按钮,就进入sql规则配置界面。
设置短信:这里需要购买相应的短信发送帐号密码等信息,资费为0.1元/条,主要是发送收款短信到指定手机,方便客户随时随地了解收款情况。
查找模板:My18已经为大家准备了几百套配置好的模板,只需要大家根据自己数据库结构情况选项相应模板即可。
为方便快速查找,可以点击[查找模板]按钮,在[模糊匹配条件]中输入模板名称,点[筛选]按钮查找,找到相应模板后双击即可。
也可以自己创建新模板。
新建模板:点[新建模板]按钮即可创建。
也可通过[删除模板]按钮删除。
填好[模板名称]、[用户表名]、[关键字]及选择好关键字类型后点[保存]创建即完成。
其中[备注提示名]是给内置变量@Memo赋值。
可以通过这个设置来体现网站的品牌效应。
自定义:配置工具中的规则可能无法完全满足实际应用的需要,因此可以在新建模板时选择[自定义]模式。
当勾选中[自定义]复选框时,下方高级设置中的sql表规则和字段规则将不再起作用。
直接在[自定义SQL]中写入编辑好的触发器代码,然后点右侧的[快速保存配置]即可。
这样就可以通过自己编写的触发器来调用存储过程或进行条件循环、判断等触发器操作了。
内置变量:@O_id:充值交易流水号@addmoney:充值金额@o_time:打款时间@U_id:用户ID(附言内容)@M_name:打款人名@H_fee:手续费@p_type:充值方式@Memo:备注提示名@huikuanren:工行收款人为什么要自定义变量?很多时候我们需要记录的信息并不在内置变量里,比如我们想在流水表中记录充值会员的会员名。
这个值在用户表中,且与用户id是一一对应的,但它不是软件的内置变量,所以需要我们设置select 规则来从用户表中将会员名自定义成一个变量以供使用。
例如用户的之前金额,也不是内置变量,所以也需要自定义成一个变量。
自定义变量的写法:@变量名例如想定义一个变量n ,那么写法就是 @n变量的运用:示例一:例如我们要记录的备注信息为:“My18提示:张三支付宝充值20元订单号:2012000019871425622 交易时间:2012-02-02”。
写法如下:@Memo+@M_name+@P_type+'充值'+@addmoney+'元订单号:'+@o_id+' 交易时间:'+@o_time有的客户希望备注信息中的金额是充值金额加手续费。
写法如下:@Memo+@M_name+@p_type+'充值'+convert(nvarchar,(convert(float,@addmoney)+convert(float,@H_fee)))+'元订单号:'+@O_id+' 时间'+@o_time这里首先将@addmoney和@H_fee两个变量转化成数字型,相加后再转化成字符型即可。
示例二:再例如记录充值后的金额,写法如下:@addmoney+@H_fee+@a其中@a是自定义变量,是用select规则从用户表中取的余额字段的值,代表该用户之前的金额。
@addmoney和@H_fee是内置变量,分别代表充值金额和手续费。
Sql规则:My18为大家提供了select、update、insert三种Sql规则其中select用来自定义变量的取值Update和insert用来写入和更新数据Select规则与Update和insert规则最大的不同是select仅用来取值,不对数据库做任何的操作。
而update用来更新,insert用来插入。
Select规则的用法:例如:要取tp_user1表中充值会员的用户名、充值前余额、总金额三项内容,分别赋值给自定义变量@n、@m、@m1如图在『SQL表规则』的右半部分点【新建】按钮,创建规则。
[规则类型]选择select,填好要取值的表名称、表的关键字等,[对应变量]一定要写@U_id,因为你要选择取值的表中的关键字一定要和用户标识(@U_id)有一一对应关系。
[变量类型]选择该表关键字的类型。
注:[规则名称]是来备注此条规则的含义。
填好后点保存,左半部分即出现如图所示:接着我们开始自定义变量和给变量赋值,如图在『SQL字段规则』的右半部分点【新建】按钮,创建规则。
填好要取值的字段名称和选择该字段的类型,然后[对应值]处必须选择变量,[对应内容]处填写自定义变量的名称。
例如自定义一个变量@m填好后点保存,以此类推建立好所有你想要定义的变量。
如下图所示:Update规则的用法:例如我们要更新tp_user表中对应充值用户的余额字段money。
如图在『SQL表规则』的右半部分点【新建】按钮,创建规则。
[规则类型]选择Update,填好要更新的表名称、表的关键字等,[对应变量]一定要写@U_id,因为你要更新的表中的关键字一定要和用户标识(@U_id)有一一对应关系。
[变量类型]选择该表关键字的类型填好后点保存,左半部分即出现如图所示:接着我们开始将变量赋值给要更新的字段,如图在『SQL字段规则』的右半部分点【新建】按钮,创建规则。
填好要更新的字段名称和选择该字段的类型,[对应值]处如选择变量,就是将该字段的值更新为指定变量的值;如选择常量,就是将该字段的值更新成一个常量。
[对应内容]处填写变量名称或常量值。
例如将money的值更新为之前金额加充值金额加手续费:@m+@addmoney+@H_fee填好后点保存,以此类推建立好所有你想要更新的规则。
如下图所示:insert规则的用法:例如我们要向tp_moneyinfo表中添加相应的充值记录。
如图在『SQL表规则』的右半部分点【新建】按钮,创建规则。
[规则类型]选择insert,填好要添加记录的表名称即可,[关键字]、[对应变量]等都不需填写,因为添加操作无需关键字。
填好后点保存,左半部分即出现如图所示:接着我们开始将变量赋值到相应字段,如图在『SQL字段规则』的右半部分点【新建】按钮,创建规则。
填好相应字段名称和选择该字段的类型,[对应值]处如选择变量,表示将指定变量的值添加到该字段;如选择常量,就表示将指定常量添加到该字段。
[对应内容]处填写变量名称或常量值。
例如将充值会员的用户名(自定义变量@n)添加到username字段中:填好后点保存,以此类推建立好所有你想要的规则。
如下图所示:Sql规则设置好后点左上角的[配置完成]按钮,如图提示即表示配置完成。
配置验证的用法:在规则配置完后用来验证规则是否正确。
点[配置验证]按钮后出现如下输入框输入一个用户表中确实存在的用户ID号,然后点[确定]按钮。
出现如下图提示点[确定]按钮,出现测试步骤列表点[是(Y)]按钮后,会在配置界面的最下方弹出对比结果列表这时双击任何一条检测记录都会显示出该条记录的详细信息通过这个我们可以清楚快速的找到规则错误的位置,能提高规则的配置效率。
应用实例:通过配置sql规则,我们可以实现多种应用。
比如有些客户只需要充值流水记录,而不要软件去更新用户余额,那么就可以只设置insert规则的方式来实现。
又比如有些客户的用户表和流水表都有多个,像UN的程序那样,userinfo表和capitalinfo表都是用户信息表的情况,就可以通过设置多个update和insert规则来实现。
还有客户希望充值后会员不但余额增加,还增加相应的积分,那么就可以通过select规则自定义变量并取值后再使用update规则来更新相应积分。
当前时间转化成时间戳:对应值选择【变量】,【对应内容】MYSQL填入:UNIX_TIMESTAMP()MSSQL填入:CONVERT(bigint,DATEDIFF(mi,'1970-01-01 00:00:00', GETDATE())) * 60 + DATEPART(ss,GETDATE())如何将时间戳转化为时间格式:对应值选择【变量】,【对应内容】MYSQL填入:FROM_UNIXTIME(UNIX_TIMESTAMP(),'%Y-%m-%d %H:%i:%s')MSSQL填入:DA TEADD(ss, 1309746570 , '19700101')结果显示为:2014-04-10 13:16:11获取当前日期:对应值选择【变量】,【对应内容】MYSQL填入:curdate()MSSQL填入:convert(nvarchar,getdate(),23)结果显示为:2014-04-10获取当前时间:对应值选择【变量】,【对应内容】MSSQL填入:getdate()MYSQL填入:now()转换时间格式:对应值选择【变量】,【对应内容】MYSQL填入:(select date_format(@o_time,'%Y%m%d%H%i%S'))结果显示为20140410132524变量的运算:比如要将充值金额扩大1.05倍,MSSQL数据库时写法如下convert(float,@addmoney)*1.05+convert(float,@H_fee)*1.05MYSQL数据库时写法如下@addmoney*1.05+@H_fee*1.05例如只取百位以上的整数,101只取100MSSQL数据库时写法如下(FLOOR(convert(float,@addmoney)/100))*100MYSQL数据库时写法如下(FLOOR(@addmoney/100))*100空值的运算:有的开发者在数据库设计时金额字段要求不严,允许空值,这时如何进行运算呢?首先将空值转换成0,再运算即可。
例如:IFNULL(@b,0)+@addmoney+@H_fee获取rowguid值:对应值选择【变量】,【对应内容】填入:newid()取某个表中id字段最大值:例如取bank_back表中id的最大值SQL表规则中建立一个select规则,【对应变量】填入:(select max(id) from bank_back)SQL字段规则中建立如下建立变量这样@id就是从bank_back表中取得的id字段的最大值如表名或者字段名与保留关键字相同的处理方法:Mssql中的引用方法:[表名]Mysql中的引用方法:`表名`附录:SQL2005的保留关键字列表Mysql的保留关键字列表:保留字被引起来后可以用作识别符。