深爱那片海 发表于 2015-1-16 22:25:25

MSSQL教程之EAServer 老手上路----JaguarCts开辟者...

对于insert和delete,event中包含了插入/删除的记录的所有字段的值(太爽了。。)server

SyBaseEnterPriseApplicationServer老手上路

SybaseEAServer的文章也有一些,很少说起到开辟中的一些细节成绩。自己处置JaguarCts开辟不久,碰到了很多细节成绩,想来刚处置JaguarCts开辟者也会赶上,以做参考,另则心中还存有很多成绩,故撰此文,起举一反三之效,看JaguarCts妙手能释疑,深表感激。

1、体系设置部分:
1、运转情况:
WIN2000SERVER版,SP2补钉,P3850CPU,PB8.0Beta+EAServer3.6.1。
2、运转情况安装注重事项:
在开辟情况中JaguarCts服务器不要安装成NT服务,由于开辟中常常修正JaguarCts组件,会呈现“OBJECTCAN‘TSAVE”的毛病,若不是NT服务,用JaguarServer(debug)。呈现此类毛病后重启动JaguarServer(debug)便可。若安装成NT服务可用以下指令删除:
serverstartservicename-remove(serivename是NT服务中Jaguar的服务名)
WIN2000SERVER版必定要打补钉,实在SP1也可,不然没法天生代办署理(Proxy)。
3、启动Jaguar办理器(图(一))
(A)JaguarMagager菜单ToolConnectJaguarManager。

(B)点ProfileManager能够新增一个Profile。
(C)在UserName中输出JAGADMIN(体系)
(D)PassWord默许为空。
(E)HostName能够是LocalHost。(假如你有必定的履历,它能够改成你的呆板名,但在Connect乐成后要出来修正Listener中各端口的主机名。)
4、启动平安办理器(图(二))
(A)JaguarManager菜单ToolConnectecurityManager。
(B)PIN默许暗码是“SYBASE”
5、修正Jagadmin的暗码
(A)当3毗连乐成后,在JaguarManager中双击Servers,显现以后一切服务,选一服务后击右键,在右键菜单当选serverproperty翻开属性面板。
(B)在属性面板当选Security改暗码。

6、办理毗连缓冲
(A)在JaguarManager中双击Servers,在列表当选一个Server。
(B)选InstallConnectionCaches
(C)右键,在弹出的菜单上选“CreateandInstallaNewConnectionCache”
(D)在弹出的窗口中输出ConnectionCache名。
(E)断定后就进进了ConnectionCache设置面板。
(F)本文以设置SQLSERVER为例。在General选项卡中设置:ServerName为SqlServer的服务名。UserName为登录SqlServer的用户ID,输出PassWord。在Driver选项卡当选ODBC,DLLORCLASSNAME为ODBC32.DLL。PING一下尝尝。
(G)若PING通不外,你就得看一下本文后面(3)提到的HostName你输出的是甚么,若LocalHost就不可,改成你的呆板名。

2、开辟使用部分
A、服务端:
1、新建EAServerProfile以下图。ServerName即盘算机名。PortNumber为9000,LoginName为Jagadmin。
2、在NEW----TARGET----EAServerComponent入手下手导游
3、Next-Next-使用名、库文件寄存-Next-ImplementNewInterFace--PBObjectName(n_cst_base)EAServerComponentName--EAServerProfile--PakeageName(组件以包为单元,新增一个包或选一个存在的包)--ComponentType(stadardcomponent)--InstancePoolingOptions(Supported)--TransactionSupportedOption(NotSupported)--InterfaceOptions(Next)--OtherOptions(全选)--Project(Next)--Next--Next--Finish
4、翻开刚创立的组件N_cst_base,在Constructor事务中:
SQLCA.DBMS="MSSMicrosoftSQLServer6.x"
SQLCA.Database="Jaguar_2001"
SQLCA.ServerName="jaguarcts"
SQLCA.LogId="sa"
SQLCA.AutoCommit=False
SQLCA.DBParm=""
CONNECTUSINGSQLCA;
IFSQLCA.SQLCODE=-1THEN
messagebox(“system”,"数据库毗连失利!"+SQLCA.SQLERRTEXT)
ENDIF
5、在N_cst_base的Destructor事务中:
DisconnectUsingSQLCA;
6、在N_cst_basek中新增一个工具函数:
of_user_login(stringas_userid,stringas_password)returninteger
//
integerli_return
SELECTcount(*)INTO:li_returnFROMjag001WHEREjag0101=:as_useridandjag0102=:as_password;
RETURNli_return
Jag001表的字段:jag0101(varchar(20))―jag0102(varchar(20))
7、天生组件代办署理工具
NEW--PROJECT----EAServerProxyWizard一向NEXT,值得注重的是呈现一个TreeView时、让你选一个包(即在3中创立的包),下一步是选一个代办署理库(能够选存在的PBL,也能够新增一个PBL),NEXT后是DeploymentActions,要选三(代办署理工具名=包名+组件名)
8、若不出不测,代办署理工具就天生了。
B、客户端:
1、新建一个使用。
2、新建一个毗连工具
NEW--PBObject--ConnectionObjectWizard个中值得注重的是ConnectivityOptions(RequiresEAServerConnection);PakageName即3中创立的包。ConnectionObject名能够默许,也能够自已输出;resourceofconnectinformation能够任选一种。
3、在新使用的open事务:
n_cst_connectinv_connect_srv//2创立的毗连工具声明
Jaguar_2001_n_cst_baseinv_login_srv//代办署理工具声明
integerli_return

inv_connect_srv=CREATEn_cst_connect
li_return=inv_connect_srv.ConnectToServer()

TRY//创立代办署理工具inv_login_srv
li_return=
inv_connect_srv.CreateInstance(inv_login_srv,"Jaguar_2001/n_cst_base")
CATCH(cts_pbuserexceptionuae)
li_return=999
ENDTRY

IFli_return0THEN
MessageBox("ErrorInfo","ErrorCode="+string(inv_connect_srv.ErrCode)+"~nErrText="+inv_connect_srv.ErrText)
ENDIF

TRY//举行登录,表中有一行数据(xzh2000,000000)
li_return=inv_login_srv.of_user_logon(‘xzh2000’,’000000’)
CATCH(cts_pbuserexceptionuae1)
li_return=999
ENDTRY

Ifli_return=1then
Messagebox(“system”,”OK”)
Else
Messagebox(“system”,”CANCEL”)
Endif

三申明:
本文是在JaguarManage(Debug)启动情形下经由过程,若有疑问,请发EMAIL:至:xzh2000@fm365.com



导致了一个使用几乎和mSQL一样的API接口的用于他们的数据库的新的SQL接口的产生,这样,这个API被设计成允许为用于mSQL而写的第三方代码更容易移植到MySQL。

爱飞 发表于 2015-1-19 11:23:09

groupby子句可以将查询结果分组,并返回行的汇总信息Oracle按照groupby子句中指定的表达式的值分组查询结果。

蒙在股里 发表于 2015-1-27 09:40:26

记得在最开始使用2k的时候就要用到这个功能,可惜2k没有,现在有了作解决方案的朋友会很高兴吧。

若天明 发表于 2015-2-5 07:32:31

SP4是一个累积性的ServicePack,包含自以前的ServicePack发布以来所有的修补程序(包括MS03-031安全公告)。

飘灵儿 发表于 2015-2-11 08:09:27

是否碎片会引发效率问题?这都是需要进一步探讨的东西。varbinary(max)代替image也让SQLServer的字段类型更加简洁统一。

海妖 发表于 2015-3-2 01:25:20

备份方面可能还是一个老大难的问题。不能单独备份几个表总是感觉不爽。灵活备份的问题不知道什么时候才能解决。

仓酷云 发表于 2015-3-11 01:35:47

是否碎片会引发效率问题?这都是需要进一步探讨的东西。varbinary(max)代替image也让SQLServer的字段类型更加简洁统一。

老尸 发表于 2015-3-17 18:12:12

原来的计算字段其实和虚拟字段很像。只是管理方面好了而已,性能方面提高不多。但是SQL2005提供了计算字段的持久化,这就提高了查询的性能,但是会加重insert和update的负担。OLTP慎用。OLAP可以大规模使用。
页: [1]
查看完整版本: MSSQL教程之EAServer 老手上路----JaguarCts开辟者...