- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
singl及相关使用方法
1.singl 使用方法( 本文中所有例子均以
mainacctinfo 表为例)
cd $HOME/script
singl tablename subid(2 位)
例:
输入 Y 或者 y 进行库表重建
Oralce 数据库使用sqlldr 进行数据导入,故使用crtctl tablename 生成ctl
文件 crtctl 的使用见第五章
输入Y 或者 y 将生成的SQC 文件移植到相关目录下, 目录规则:
$HOME/project/subid/dbapi
输入Y 或者y ,在移植目录下进行编译(新的库表结构对应的dbxxyyyy.SQC
需手工在移植目录makefile 中添加编译相关)。
2.建表脚本说明
建表脚本模版为crtdb.txt ,模版中的 N.N 代表not null(非空)字段的含义 。通过crtdb.txt
模版中定义的表名,最终产生的建表语句为tablename.sql
模版头的含义
其中表名(tablename)必须填入,dbcm0301 也就是生成SQC 的名称,全系统不能重复(必
须填入)
字段类型为char :
字段类型为int 或long
字段类型为date
建表脚本中的date 型不同于数据库的date 型,脚本中的date 只是为了方便开
发人员对该字段类型的区分,在数据库实际建表时,将date 转换为char (10)
作为该字段实际类型和长度。
字段类型为dec
建表脚本中的dec 在实际建表语句中,转换为DECIMAL。17,2 的含义为:长度为17 位(包
含小数点),小数点后为2 位
索引的生成
生成的索引名称为tablename_IDX ,此处的tablename 会自动截取表名的前13 位,故在使用
时注意避免定义相似的表名。唯一索引使用 unique 作为前缀进行定义,索引字段按照“, ”
进行分割,索引按照顺序生成,支持多唯一索引。
3.tablename.h 说明
tablename.h 生成在$HOME/include/dbase 下面,下面以mainacctinfo.h 作为说明举例:
静态宿主变量的声明
结构的声明(TBL_MAINACCTINFO )
相关宏定义
R_MAINACCTINFO
R_的宏定义用于将全表数据查询回来后 INTO 到该宏定义中,使用该宏定义前一定要使用
cmInitTablename()宏进行初始化,例:
U_MAINACCTINFO
该宏定义的使用方法为:不再使用SELECT * INTO,替换为SELECT U_MAINACCTINFO INTO ,以
便查询效率的提升。
W_MAINACCTINFO
UW_MAINACCTINFO
PACKALL_MAINACCTINFO
cmInitMainacctinfo()
cmStoVMainacctinfo(x)
x 对应 TBL_MAINACCTINFO 的声明结构或结构指针,StoV 函数将 X 的字段值赋值给
tablename_flds
cmVtoSMainacctinfo(x)
x 对应TBL_MAINACCTINFO 的声明结构或结构指针,VtoS 函数将tablename_flds 的值赋值给
X 的字段值
4.dbxxyyyy.SQC 说明
for update 游标的声明
get_tablename_flds 原型
set_tablename_flds 原型
cmReadMainacctinfo
通过唯一索引,将表的数据读取出并赋值给结构,使用时一定注意:函数是通过唯一索引读
取数据,故唯一索引必须有值且正确。
注:如果建表脚本中该表有多个唯一索引,会按照索引的先后顺序生成
cmReadTablename_2;cmReadTablename_3 等函数,用法相同。
cmModiMainacctinfo
以唯一索引为where 条件,将结构全部字段的值更新到数据库中。
cmInstMainacctinfo
将结构字段值插入数据库表中。
cmOpenMainacctinfo
cmCloseMainacctinfo
cmFetchMainacctinfo
将游标fetch 出的数据拷贝到结构中。
cmReadMainacctinfoForUpd
以for update 的形式读取数据库记录并将值拷贝到结构中。
cmTracMainac
文档评论(0)