boot90.sql 98 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281
  1. { ************************************************************************* }
  2. { }
  3. { Licensed Materials - Property of IBM and/or HCL }
  4. { }
  5. { IBM Informix Dynamic Server }
  6. { (c) Copyright IBM Corporation 1996, 2004 All rights reserved. }
  7. { (c) Copyright HCL Technologies Ltd. 2017. All Rights Reserved. }
  8. { }
  9. { ************************************************************************* }
  10. { }
  11. { Title: boot90.sql }
  12. { }
  13. { Description: }
  14. { Bootstrapping script for a 9.0 database, run during database }
  15. { construction. }
  16. { }
  17. { ************************************************************************* }
  18. { }
  19. { ** IMPORTANT - PLEASE READ }
  20. { }
  21. { All types and routines referenced in this file must be prefixed }
  22. { with the user name "informix". E.g., use "informix.boolean" }
  23. { and not "boolean" }
  24. { }
  25. { Also, please follow the formatting conventions!!! }
  26. { }
  27. { ************************************************************************* }
  28. -- Add sysdomains view during database construction
  29. create view informix.sysdomains (id, owner, name, type) as
  30. select extended_id, owner, name, type from informix.sysxtdtypes
  31. where domain = 'D';
  32. grant select on informix.sysdomains to public as informix;
  33. -- Create user predefined data types
  34. create opaque type informix.lvarchar
  35. (
  36. internallength=variable,
  37. alignment = 1,
  38. maxlen = 2048
  39. );
  40. create opaque type informix.sendrecv
  41. (
  42. internallength=variable,
  43. alignment = 1,
  44. maxlen = 2048,
  45. cannothash
  46. );
  47. create opaque type informix.impexp
  48. (
  49. internallength=variable,
  50. alignment = 1,
  51. maxlen = 2048,
  52. cannothash
  53. );
  54. create opaque type informix.impexpbin
  55. (
  56. internallength=variable,
  57. alignment = 1,
  58. maxlen = 2048,
  59. cannothash
  60. );
  61. create opaque type informix.boolean
  62. (
  63. internallength=1,
  64. alignment = 1,
  65. passedbyvalue
  66. );
  67. create opaque type informix.pointer
  68. (
  69. internallength=4,
  70. alignment = 1,
  71. passedbyvalue
  72. );
  73. create opaque type informix.indexkeyarray
  74. (
  75. internallength=variable,
  76. alignment = 4,
  77. maxlen = 1024,
  78. cannothash
  79. );
  80. -- Let us create the output function for this. We do not need an input function
  81. create function informix.indexkeyarray_out(informix.indexkeyarray)
  82. returning informix.lvarchar
  83. external name '(indexkeyarray_out)' language C
  84. not variant;
  85. create function informix.indexkeyarray_send(informix.indexkeyarray)
  86. returning informix.sendrecv
  87. external name '(indexkeyarray_send)' language C
  88. not variant;
  89. create explicit cast (informix.indexkeyarray as informix.lvarchar
  90. with informix.indexkeyarray_out);
  91. create explicit cast (informix.indexkeyarray as informix.sendrecv
  92. with informix.indexkeyarray_send);
  93. -- Used to create the sysindexes view definition
  94. create function informix.ikeyextractcolno(informix.indexkeyarray, integer)
  95. returning smallint
  96. external name '(ikeyextractcolno)' language C
  97. not variant;
  98. -- Default opclass for btrees: btree_ops
  99. create opclass informix.btree_ops for btree
  100. strategies (lessthan, lessthanorequal, equal, greaterthanorequal, greaterthan)
  101. support (compare);
  102. create opaque type informix.rtnparamtypes
  103. (
  104. internallength=variable,
  105. alignment = 1,
  106. maxlen = 4096,
  107. cannothash
  108. );
  109. -- Let us create the output function for this. We do not need an input function
  110. create function informix.rtn_param_out(informix.rtnparamtypes)
  111. returning informix.lvarchar specific paramtypes_out
  112. external name '(rtn_param_out)' language C
  113. not variant;
  114. create cast (informix.rtnparamtypes as informix.lvarchar with informix.rtn_param_out);
  115. { ifx_param_ids, ifx_ret_ids, ifx_param_types, ifx_ret_types }
  116. { functions to display the type identifiers or names of the }
  117. { parameters and return types of routines. integer argument }
  118. { is the procid, e.g. select ifx_ret_ids(procid) from sysprocedures; }
  119. create function informix.ifx_param_ids(integer)
  120. returning informix.lvarchar
  121. external name '(spr_param_ids)' language c;
  122. create function informix.ifx_ret_ids(integer)
  123. returning informix.lvarchar
  124. external name '(spr_ret_ids)' language c;
  125. create function informix.ifx_param_types(integer)
  126. returning informix.lvarchar
  127. external name '(spr_param_types)' language c;
  128. create function informix.ifx_ret_types(integer)
  129. returning informix.lvarchar
  130. external name '(spr_ret_types)' language c;
  131. create opaque type informix.selfuncargs
  132. (
  133. internallength=24,
  134. alignment = 1,
  135. cannothash
  136. );
  137. create opaque type informix.blob
  138. (
  139. internallength=72,
  140. alignment = 4,
  141. cannothash
  142. );
  143. create opaque type informix.clob
  144. (
  145. internallength=72,
  146. alignment = 4,
  147. cannothash
  148. );
  149. create opaque type informix.lolist
  150. (
  151. internallength=variable,
  152. alignment = 4,
  153. maxlen = 2048,
  154. cannothash
  155. );
  156. -- lolist function and cast definitions
  157. create function informix.lolist_in(informix.lvarchar)
  158. returns informix.lolist
  159. external name '(lolist_in)'
  160. language C not variant;
  161. create function informix.lolist_out(informix.lolist)
  162. returns informix.lvarchar
  163. external name '(lolist_out)'
  164. language C not variant;
  165. create function informix.lolist_send(informix.lolist)
  166. returns informix.sendrecv
  167. external name '(lolist_send)'
  168. language C not variant;
  169. create function informix.lolist_recv(informix.sendrecv)
  170. returns informix.lolist
  171. external name '(lolist_recv)'
  172. language C not variant;
  173. create implicit cast (informix.lvarchar as informix.lolist with
  174. informix.lolist_in);
  175. create explicit cast (informix.lolist as informix.lvarchar with
  176. informix.lolist_out);
  177. create implicit cast (informix.sendrecv as informix.lolist with
  178. informix.lolist_recv);
  179. create explicit cast (informix.lolist as informix.sendrecv with
  180. informix.lolist_send);
  181. -- booloen function definitions
  182. create function informix.equal(informix.boolean, informix.boolean)
  183. returns informix.boolean
  184. external name '(boolean_equal)'
  185. language C not variant;
  186. create function informix.notequal(informix.boolean, informix.boolean)
  187. returns informix.boolean
  188. external name '(boolean_notequal)'
  189. language C not variant;
  190. create function informix.compare(informix.boolean, informix.boolean)
  191. returns integer
  192. external name '(boolean_compare)'
  193. language C not variant;
  194. -- cast function definitions
  195. create function informix.collcast(set) returns set
  196. external name '(collcast)' language C not variant;
  197. create function informix.collcast(multiset) returns multiset
  198. external name '(collcast)' language C not variant;
  199. create function informix.collcast(list) returns list
  200. external name '(collcast)' language C not variant;
  201. create function informix.rowcast(row) returns row
  202. external name '(rowcast)' language C not variant;
  203. -- Collection function definitions
  204. create function informix.collectionoutput(set) returns informix.lvarchar
  205. external name '(collectionoutput)' language C not variant;
  206. create function informix.collectionoutput(multiset) returns informix.lvarchar
  207. external name '(collectionoutput)' language C not variant;
  208. create function informix.collectionoutput(list) returns informix.lvarchar
  209. external name '(collectionoutput)' language C not variant;
  210. create function informix.collectioninput(informix.lvarchar) returns set
  211. external name '(collectioninput)' language C not variant;
  212. -- Send/recv Collection Functions
  213. create function informix.collectionrecv(informix.sendrecv) returns set
  214. external name '(collectionrecv)' language C not variant;
  215. create function informix.collectionsend(set) returns informix.sendrecv
  216. external name '(collectionsend)' language C not variant;
  217. create function informix.collectionsend(multiset) returns informix.sendrecv
  218. external name '(collectionsend)' language C not variant;
  219. create function informix.collectionsend(list) returns informix.sendrecv
  220. external name '(collectionsend)' language C not variant;
  221. -- Row Functions
  222. create function informix.rowoutput(row) returns informix.lvarchar
  223. external name '(rowoutput)' language C not variant;
  224. create function informix.rowinput(informix.lvarchar) returns row
  225. external name '(rowinput)' language C not variant;
  226. create function informix.rowrecv(informix.sendrecv) returns row
  227. external name '(rowrecv)' language C not variant;
  228. create function informix.rowsend(row) returns informix.sendrecv
  229. external name '(rowsend)' language C not variant;
  230. create function informix.assign(row) returns row
  231. external name '(rowassign)' language C not variant;
  232. create function informix.destroy(row) returns row
  233. external name '(rowdestroy)' language C not variant;
  234. create function informix.compare(row, row) returns integer
  235. external name '(rowcompare)' language C not variant;
  236. create function informix.equal(row, row) returns informix.boolean
  237. external name '(rowequal)' language C not variant;
  238. create function informix.notequal(row, row) returns informix.boolean
  239. external name '(rownotequal)' language C not variant;
  240. create function informix.assign(set) returns set
  241. external name '(collectionassign)' language C not variant;
  242. create function informix.assign(multiset) returns multiset
  243. external name '(collectionassign)' language C not variant;
  244. create function informix.assign(list) returns list
  245. external name '(collectionassign)' language C not variant;
  246. create function informix.destroy(set) returns set
  247. external name '(collectiondestroy)' language C not variant;
  248. create function informix.destroy(multiset) returns multiset
  249. external name '(collectiondestroy)' language C not variant;
  250. create function informix.destroy(list) returns list
  251. external name '(collectiondestroy)' language C not variant;
  252. -- blob and clob support functions with informix.their associated casts
  253. create function informix.blobinput(informix.lvarchar) returns informix.blob
  254. external name '(blob_input)'
  255. language c not variant;
  256. create function informix.clobinput(informix.lvarchar) returns informix.clob
  257. external name '(clob_input)'
  258. language c not variant;
  259. create implicit cast (informix.lvarchar as informix.blob with
  260. informix.blobinput);
  261. create implicit cast (informix.lvarchar as informix.clob with
  262. informix.clobinput);
  263. create function informix.bloboutput(informix.blob) returns informix.lvarchar
  264. external name '(blob_output)'
  265. language c not variant;
  266. create function informix.cloboutput(informix.clob) returns informix.lvarchar
  267. external name '(clob_output)'
  268. language c not variant;
  269. create explicit cast (informix.blob as informix.lvarchar with
  270. informix.bloboutput);
  271. create explicit cast (informix.clob as informix.lvarchar with
  272. informix.cloboutput);
  273. create function informix.blobrecv(informix.sendrecv)
  274. returns informix.blob
  275. external name '(blob_recv)'
  276. language c not variant;
  277. create function informix.clobrecv(informix.sendrecv)
  278. returns informix.clob
  279. external name '(clob_recv)'
  280. language c not variant;
  281. create implicit cast (informix.sendrecv as informix.blob with
  282. informix.blobrecv);
  283. create implicit cast (informix.sendrecv as informix.clob with
  284. informix.clobrecv);
  285. create function informix.blobsend(informix.blob) returns informix.sendrecv
  286. external name '(blob_send)'
  287. language c not variant;
  288. create function informix.clobsend(informix.clob) returns informix.sendrecv
  289. external name '(clob_send)'
  290. language c not variant;
  291. create implicit cast (informix.blob as informix.sendrecv with
  292. informix.blobsend);
  293. create implicit cast (informix.clob as informix.sendrecv with
  294. informix.clobsend);
  295. create function informix.blobimport(informix.impexp)
  296. returns informix.blob
  297. external name '(blob_import)'
  298. language c not variant;
  299. create function informix.clobimport(informix.impexp)
  300. returns informix.clob
  301. external name '(clob_import)'
  302. language c not variant;
  303. create implicit cast (informix.impexp as informix.blob with
  304. informix.blobimport);
  305. create implicit cast (informix.impexp as informix.clob with
  306. informix.clobimport);
  307. create function informix.blobexport(informix.blob)
  308. returns informix.impexp
  309. external name '(blob_export)'
  310. language c not variant;
  311. create function informix.clobexport(informix.clob)
  312. returns informix.impexp
  313. external name '(clob_export)'
  314. language c not variant;
  315. create implicit cast (informix.blob as informix.impexp with
  316. informix.blobexport);
  317. create implicit cast (informix.clob as informix.impexp with
  318. informix.clobexport);
  319. create function informix.assign(informix.blob)
  320. returns informix.blob
  321. external name '(blob_assign)'
  322. language c not variant;
  323. create function informix.assign(informix.clob)
  324. returns informix.clob
  325. external name '(clob_assign)'
  326. language c not variant;
  327. create function informix.destroy(informix.blob)
  328. returns informix.blob
  329. external name '(blob_destroy)'
  330. language c not variant;
  331. create function informix.destroy(informix.clob)
  332. returns informix.clob
  333. external name '(clob_destroy)'
  334. language c not variant;
  335. create function informix.lohandles(informix.blob)
  336. returns informix.lolist
  337. external name '(blob_handles)'
  338. language c not variant;
  339. create function informix.lohandles(informix.clob)
  340. returns informix.lvarchar
  341. external name '(blob_handles)'
  342. language c not variant;
  343. -- blob and clob user functions
  344. create function informix.filetoblob(informix.lvarchar, char(6))
  345. returns informix.blob
  346. external name '(blob_from_file)'
  347. language c variant;
  348. create function informix.filetoclob(informix.lvarchar, char(6))
  349. returns informix.clob
  350. external name '(blob_from_file)' -- yes blob_from_file
  351. language c variant;
  352. create function informix.filetoblob(informix.lvarchar, char(6), char(18), char(18))
  353. returns informix.blob
  354. external name '(blob_from_file_colspec)'
  355. language c variant;
  356. create function informix.filetoclob(informix.lvarchar, char(6), char(18), char(18))
  357. returns informix.clob
  358. external name '(blob_from_file_colspec)'
  359. language c variant;
  360. create function informix.lotofile(informix.blob, informix.lvarchar, char(6)) returns informix.lvarchar
  361. external name '(blob_to_file)'
  362. language c variant;
  363. create function informix.lotofile(clob, informix.lvarchar, char(6)) returns informix.lvarchar
  364. external name '(blob_to_file)'
  365. language c variant;
  366. create function informix.locopy(informix.blob)
  367. returns informix.blob
  368. external name '(blob_copy)'
  369. language c variant;
  370. create function informix.locopy(informix.blob, char(18), char(18))
  371. returns informix.blob
  372. external name '(blob_copy_colspec)'
  373. language c variant;
  374. create function informix.locopy(informix.clob)
  375. returns informix.clob
  376. external name '(blob_copy)'
  377. language c variant;
  378. create function informix.locopy(informix.clob, char(18), char(18))
  379. returns informix.clob
  380. external name '(blob_copy_colspec)'
  381. language c variant;
  382. create function informix.equal(informix.blob, informix.blob)
  383. returns informix.boolean
  384. external name '(clob_equal)'
  385. language c variant;
  386. create function informix.equal(informix.clob, informix.clob)
  387. returns informix.boolean
  388. external name '(clob_equal)'
  389. language c variant;
  390. create function informix.compare(informix.blob, informix.blob)
  391. returns integer
  392. external name '(blob_cmp)'
  393. language C variant;
  394. create function informix.compare(informix.clob, informix.clob)
  395. returns integer
  396. external name '(blob_cmp)'
  397. language C variant;
  398. {Types to support fastpathing of lo operations}
  399. create opaque type informix.ifx_lo_spec
  400. (
  401. internallength = 160,
  402. alignment = 8
  403. );
  404. create opaque type informix.ifx_lo_stat
  405. (
  406. internallength = 208,
  407. alignment = 8
  408. );
  409. create function informix.send(informix.ifx_lo_spec)
  410. returns informix.sendrecv
  411. external name '(send_ifx_lo_spec)'
  412. language c not variant;
  413. create function informix.send(informix.ifx_lo_stat)
  414. returns informix.sendrecv
  415. external name '(send_ifx_lo_stat)'
  416. language c not variant;
  417. create function informix.recv_spec(informix.sendrecv)
  418. returns informix.ifx_lo_spec
  419. external name '(recv_ifx_lo_spec)'
  420. language c not variant;
  421. create function informix.recv_stat(informix.sendrecv)
  422. returns informix.ifx_lo_stat
  423. external name '(recv_ifx_lo_stat)'
  424. language c not variant;
  425. create cast (informix.ifx_lo_spec as informix.sendrecv with
  426. informix.send);
  427. create cast (informix.ifx_lo_stat as informix.sendrecv with
  428. informix.send);
  429. create implicit cast (informix.sendrecv as informix.ifx_lo_spec with
  430. informix.recv_spec);
  431. create implicit cast (informix.sendrecv as informix.ifx_lo_stat with
  432. informix.recv_stat);
  433. -- fastpath entry points to support client sblob I/O
  434. create function informix.ifx_lo_create(ifx_lo_spec, integer, out informix.blob)
  435. returns integer
  436. external name '(sq_lo_create)'
  437. language c; {this is variant}
  438. create function informix.ifx_lo_open(informix.blob, integer)
  439. returns integer
  440. external name '(sq_lo_open)'
  441. language c; {this is variant}
  442. create function informix.ifx_lo_close(integer)
  443. returns integer
  444. external name '(sq_lo_close)'
  445. language c;
  446. create function informix.ifx_lo_truncate(integer, int8)
  447. returns integer
  448. external name '(sq_lo_truncate)'
  449. language c;
  450. create function informix.ifx_lo_alter(informix.blob, informix.ifx_lo_spec)
  451. returns integer
  452. external name '(sq_lo_alter)'
  453. language c;
  454. create function informix.ifx_lo_stat(integer, out informix.ifx_lo_stat)
  455. returns integer
  456. external name '(sq_lo_stat)'
  457. language c;
  458. create function informix.ifx_lo_tell(integer, out int8)
  459. returns integer
  460. external name '(sq_lo_tell)'
  461. language c;
  462. create function informix.ifx_lo_seek(integer, int8, integer, out int8)
  463. returns integer
  464. external name '(sq_lo_seek)'
  465. language c;
  466. create function informix.ifx_lo_filename(informix.blob, informix.lvarchar)
  467. returns informix.lvarchar
  468. external name '(sq_lo_filename)'
  469. language c;
  470. create function informix.ifx_lo_col_sbinfo(informix.lvarchar, out informix.ifx_lo_spec)
  471. returns integer
  472. external name '(sq_lo_col_sblobinfo_by_colname)'
  473. language c;
  474. {args: lofd, from-filename, file-flags, file-offset, nbytes}
  475. create function informix.ifx_lo_from_file(int, informix.lvarchar, int, int, int)
  476. returns integer
  477. external name '(sq_lo_from_file)'
  478. language c;
  479. create function informix.ifx_lo_to_file(informix.blob, informix.lvarchar, int, out int)
  480. returns informix.lvarchar
  481. external name '(sq_lo_to_file)'
  482. language c;
  483. create function informix.ifx_file_to_file(informix.lvarchar, int, informix.lvarchar, int)
  484. returns informix.lvarchar
  485. external name '(sq_file_to_file)'
  486. language c;
  487. create function informix.dosyscast(informix.pointer, int, int)
  488. returning informix.pointer
  489. external name '(dosyscast)'
  490. language C not variant;
  491. create function informix.equal(char, char) returns informix.boolean
  492. specific ifx_char_equal
  493. with (commutator = equal, negator = notequal, class = 'CPU',
  494. not variant)
  495. external name '9' language builtin;
  496. create function informix.equal(nchar(1), nchar(1)) returns informix.boolean
  497. specific ifx_nchar_equal
  498. with (commutator = equal, negator = notequal, class = 'CPU',
  499. not variant)
  500. external name '9' language builtin;
  501. create function informix.equal(varchar(1), varchar(1)) returns informix.boolean
  502. specific ifx_varchar_equal
  503. with (commutator = equal, negator = notequal, class = 'CPU',
  504. not variant)
  505. external name '9' language builtin;
  506. create function informix.equal(nvarchar(1), nvarchar(1))
  507. returns informix.boolean
  508. specific ifx_nvarchar_equal
  509. with (commutator = equal, negator = notequal, class = 'CPU',
  510. not variant)
  511. external name '9' language builtin;
  512. create function informix.equal(smallint, smallint) returns informix.boolean
  513. specific ifx_smallint_equal
  514. with (commutator = equal, negator = notequal, class = 'CPU',
  515. not variant)
  516. external name '9' language builtin;
  517. create function informix.equal(int, int) returns informix.boolean
  518. specific ifx_int_equal
  519. with (commutator = equal, negator = notequal, class = 'CPU',
  520. not variant)
  521. external name '9' language builtin;
  522. create function informix.equal(int8, int8) returns informix.boolean
  523. specific ifx_int8_equal
  524. with (commutator = equal, negator = notequal, class = 'CPU',
  525. not variant)
  526. external name '9' language builtin;
  527. create function informix.equal(decimal, decimal) returns informix.boolean
  528. specific ifx_decimal_equal
  529. with (commutator = equal, negator = notequal, class = 'CPU',
  530. not variant)
  531. external name '9' language builtin;
  532. create function informix.equal(real, real) returns informix.boolean
  533. specific ifx_real_equal
  534. with (commutator = equal, negator = notequal, class = 'CPU',
  535. not variant)
  536. external name '9' language builtin;
  537. create function informix.equal(float, float) returns informix.boolean
  538. specific ifx_float_equal
  539. with (commutator = equal, negator = notequal, class = 'CPU',
  540. not variant)
  541. external name '9' language builtin;
  542. create function informix.equal(date, date) returns informix.boolean
  543. specific ifx_date_equal
  544. with (commutator = equal, negator = notequal, class = 'CPU',
  545. not variant)
  546. external name '9' language builtin;
  547. create function informix.equal(datetime year to minute,
  548. datetime year to minute) returns informix.boolean
  549. specific ifx_datetime_equal
  550. with (commutator = equal, negator = notequal, class = 'CPU',
  551. not variant)
  552. external name '9' language builtin;
  553. create function informix.equal(interval year to month,
  554. interval year to month) returns informix.boolean
  555. specific ifx_interval_equal
  556. with (commutator = equal, negator = notequal, class = 'CPU',
  557. not variant)
  558. external name '9' language builtin;
  559. create function informix.equal(money, money) returns informix.boolean
  560. specific ifx_money_equal
  561. with (commutator = equal, negator = notequal, class = 'CPU',
  562. not variant)
  563. external name '9' language builtin;
  564. create function informix.equal(references text,
  565. references text) returns informix.boolean
  566. specific ifx_text_equal
  567. with (commutator = equal, negator = notequal, class = 'CPU',
  568. not variant)
  569. external name '9' language builtin;
  570. create function informix.equal(references byte, references byte)
  571. returns informix.boolean
  572. specific ifx_byte_equal
  573. with (commutator = equal, negator = notequal, class = 'CPU',
  574. not variant)
  575. external name '9' language builtin;
  576. create function informix.notequal(char, char) returns informix.boolean
  577. specific ifx_char_not_equal
  578. with (commutator = notequal, negator = equal, class = 'CPU',
  579. not variant)
  580. external name '26' language builtin;
  581. create function informix.notequal(nchar(1), nchar(1)) returns informix.boolean
  582. specific ifx_nchar_not_equal
  583. with (commutator = notequal, negator = equal, class = 'CPU',
  584. not variant)
  585. external name '26' language builtin;
  586. create function informix.notequal(varchar(1), varchar(1))
  587. returns informix.boolean
  588. specific ifx_varchar_not_equal
  589. with (commutator = notequal, negator = equal, class = 'CPU',
  590. not variant)
  591. external name '26' language builtin;
  592. create function informix.notequal(nvarchar(1), nvarchar(1))
  593. returns informix.boolean
  594. specific ifx_nvarchar_not_equal
  595. with (commutator = notequal, negator = equal, class = 'CPU',
  596. not variant)
  597. external name '26' language builtin;
  598. create function informix.notequal(smallint, smallint) returns informix.boolean
  599. specific ifx_smallint_not_equal
  600. with (commutator = notequal, negator = equal, class = 'CPU',
  601. not variant)
  602. external name '26' language builtin;
  603. create function informix.notequal(int, int) returns informix.boolean
  604. specific ifx_int_not_equal
  605. with (commutator = notequal, negator = equal, class = 'CPU',
  606. not variant)
  607. external name '26' language builtin;
  608. create function informix.notequal(int8, int8) returns informix.boolean
  609. specific ifx_int8_not_equal
  610. with (commutator = notequal, negator = equal, class = 'CPU',
  611. not variant)
  612. external name '26' language builtin;
  613. create function informix.notequal(decimal, decimal) returns informix.boolean
  614. specific ifx_decimal_not_equal
  615. with (commutator = notequal, negator = equal, class = 'CPU',
  616. not variant)
  617. external name '26' language builtin;
  618. create function informix.notequal(real, real) returns informix.boolean
  619. specific ifx_real_not_equal
  620. with (commutator = notequal, negator = equal, class = 'CPU',
  621. not variant)
  622. external name '26' language builtin;
  623. create function informix.notequal(float, float) returns informix.boolean
  624. specific ifx_float_not_equal
  625. with (commutator = notequal, negator = equal, class = 'CPU',
  626. not variant)
  627. external name '26' language builtin;
  628. create function informix.notequal(date, date) returns informix.boolean
  629. specific ifx_date_not_equal
  630. with (commutator = notequal, negator = equal, class = 'CPU',
  631. not variant)
  632. external name '26' language builtin;
  633. create function informix.notequal(datetime year to minute,
  634. datetime year to minute) returns informix.boolean
  635. specific ifx_datetime_not_equal
  636. with (commutator = notequal, negator = equal, class = 'CPU',
  637. not variant)
  638. external name '26' language builtin;
  639. create function informix.notequal(interval year to month,
  640. interval year to month) returns informix.boolean
  641. specific ifx_interval_not_equal
  642. with (commutator = notequal, negator = equal, class = 'CPU',
  643. not variant)
  644. external name '26' language builtin;
  645. create function informix.notequal(money, money) returns informix.boolean
  646. specific ifx_money_not_equal
  647. with (commutator = notequal, negator = equal, class = 'CPU',
  648. not variant)
  649. external name '26' language builtin;
  650. create function informix.notequal(references text, references text)
  651. returns informix.boolean
  652. specific ifx_text_not_equal
  653. with (commutator = notequal, negator = equal, class = 'CPU',
  654. not variant)
  655. external name '26' language builtin;
  656. create function informix.notequal(references byte, references byte)
  657. returns informix.boolean
  658. specific ifx_byte_not_equal
  659. with (commutator = notequal, negator = equal, class = 'CPU',
  660. not variant)
  661. external name '26' language builtin;
  662. create function informix.greaterthan(char, char) returns informix.boolean
  663. specific ifx_char_greater_than
  664. with (negator = lessthanorequal, class = 'CPU', not variant)
  665. external name '13' language builtin;
  666. create function informix.greaterthan(nchar(1), nchar(1))
  667. returns informix.boolean
  668. specific ifx_nchar_greater_than
  669. with (negator = lessthanorequal, class = 'CPU', not variant)
  670. external name '13' language builtin;
  671. create function informix.greaterthan(varchar(1), varchar(1))
  672. returns informix.boolean
  673. specific ifx_varchar_greater_than
  674. with (negator = lessthanorequal, class = 'CPU', not variant)
  675. external name '13' language builtin;
  676. create function informix.greaterthan(nvarchar(1), nvarchar(1))
  677. returns informix.boolean
  678. specific ifx_nvarchar_greater_than
  679. with (negator = lessthanorequal, class = 'CPU', not variant)
  680. external name '13' language builtin;
  681. create function informix.greaterthan(smallint, smallint)
  682. returns informix.boolean
  683. specific ifx_smallint_greater_than
  684. with (negator = lessthanorequal, class = 'CPU', not variant)
  685. external name '13' language builtin;
  686. create function informix.greaterthan(int, int) returns informix.boolean
  687. specific ifx_int_greater_than
  688. with (negator = lessthanorequal, class = 'CPU', not variant)
  689. external name '13' language builtin;
  690. create function informix.greaterthan(int8, int8) returns informix.boolean
  691. specific ifx_int8_greater_than
  692. with (negator = lessthanorequal, class = 'CPU', not variant)
  693. external name '13' language builtin;
  694. create function informix.greaterthan(decimal, decimal)
  695. returns informix.boolean
  696. specific ifx_decimal_greater_than
  697. with (negator = lessthanorequal, class = 'CPU', not variant)
  698. external name '13' language builtin;
  699. create function informix.greaterthan(real, real) returns informix.boolean
  700. specific ifx_real_greater_than
  701. with (negator = lessthanorequal, class = 'CPU', not variant)
  702. external name '13' language builtin;
  703. create function informix.greaterthan(float, float) returns informix.boolean
  704. specific ifx_float_greater_than
  705. with (negator = lessthanorequal, class = 'CPU', not variant)
  706. external name '13' language builtin;
  707. create function informix.greaterthan(date, date) returns informix.boolean
  708. specific ifx_date_greater_than
  709. with (negator = lessthanorequal, class = 'CPU', not variant)
  710. external name '13' language builtin;
  711. create function informix.greaterthan(datetime year to minute,
  712. datetime year to minute) returns informix.boolean
  713. specific ifx_datetime_greater_than
  714. with (negator = lessthanorequal, class = 'CPU', not variant)
  715. external name '13' language builtin;
  716. create function informix.greaterthan(interval year to month,
  717. interval year to month) returns informix.boolean
  718. specific ifx_interval_greater_than
  719. with (negator = lessthanorequal, class = 'CPU', not variant)
  720. external name '13' language builtin;
  721. create function informix.greaterthan(money, money) returns informix.boolean
  722. specific ifx_money_greater_than
  723. with (negator = lessthanorequal, class = 'CPU', not variant)
  724. external name '13' language builtin;
  725. create function informix.greaterthan(references text, references text)
  726. returns informix.boolean
  727. specific ifx_text_greater_than
  728. with (negator = lessthanorequal, class = 'CPU', not variant)
  729. external name '13' language builtin;
  730. create function informix.greaterthan(references byte, references byte)
  731. returns informix.boolean
  732. specific ifx_byte_greater_than
  733. with (negator = lessthanorequal, class = 'CPU', not variant)
  734. external name '13' language builtin;
  735. create function informix.lessthan(char, char) returns informix.boolean
  736. specific ifx_char_less_than
  737. with (negator = greaterthanorequal, class = 'CPU', not variant)
  738. external name '18' language builtin;
  739. create function informix.lessthan(nchar(1), nchar(1)) returns informix.boolean
  740. specific ifx_nchar_less_than
  741. with (negator = greaterthanorequal, class = 'CPU', not variant)
  742. external name '18' language builtin;
  743. create function informix.lessthan(varchar(1), varchar(1))
  744. returns informix.boolean
  745. specific ifx_varchar_less_than
  746. with (negator = greaterthanorequal, class = 'CPU', not variant)
  747. external name '18' language builtin;
  748. create function informix.lessthan(nvarchar(1), nvarchar(1))
  749. returns informix.boolean
  750. specific ifx_nvarchar_less_than
  751. with (negator = greaterthanorequal, class = 'CPU', not variant)
  752. external name '18' language builtin;
  753. create function informix.lessthan(smallint, smallint) returns informix.boolean
  754. specific ifx_smallint_less_than
  755. with (negator = greaterthanorequal, class = 'CPU', not variant)
  756. external name '18' language builtin;
  757. create function informix.lessthan(int, int) returns informix.boolean
  758. specific ifx_int_less_than
  759. with (negator = greaterthanorequal, class = 'CPU', not variant)
  760. external name '18' language builtin;
  761. create function informix.lessthan(int8, int8) returns informix.boolean
  762. specific ifx_int8_less_than
  763. with (negator = greaterthanorequal, class = 'CPU', not variant)
  764. external name '18' language builtin;
  765. create function informix.lessthan(decimal, decimal) returns informix.boolean
  766. specific ifx_decimal_less_than
  767. with (negator = greaterthanorequal, class = 'CPU', not variant)
  768. external name '18' language builtin;
  769. create function informix.lessthan(real, real) returns informix.boolean
  770. specific ifx_real_less_than
  771. with (negator = greaterthanorequal, class = 'CPU', not variant)
  772. external name '18' language builtin;
  773. create function informix.lessthan(float, float) returns informix.boolean
  774. specific ifx_float_less_than
  775. with (negator = greaterthanorequal, class = 'CPU', not variant)
  776. external name '18' language builtin;
  777. create function informix.lessthan(date, date) returns informix.boolean
  778. specific ifx_date_less_than
  779. with (negator = greaterthanorequal, class = 'CPU', not variant)
  780. external name '18' language builtin;
  781. create function informix.lessthan(datetime year to minute,
  782. datetime year to minute) returns informix.boolean
  783. specific ifx_datetime_less_than
  784. with (negator = greaterthanorequal, class = 'CPU', not variant)
  785. external name '18' language builtin;
  786. create function informix.lessthan(interval year to month,
  787. interval year to month) returns informix.boolean
  788. specific ifx_interval_less_than
  789. with (negator = greaterthanorequal, class = 'CPU', not variant)
  790. external name '18' language builtin;
  791. create function informix.lessthan(money, money) returns informix.boolean
  792. specific ifx_money_less_than
  793. with (negator = greaterthanorequal, class = 'CPU', not variant)
  794. external name '18' language builtin;
  795. create function informix.lessthan(references text, references text)
  796. returns informix.boolean
  797. specific ifx_text_less_than
  798. with (negator = greaterthanorequal, class = 'CPU', not variant)
  799. external name '18' language builtin;
  800. create function informix.lessthan(references byte, references byte)
  801. returns informix.boolean
  802. specific ifx_byte_less_than
  803. with (negator = greaterthanorequal, class = 'CPU', not variant)
  804. external name '18' language builtin;
  805. create function informix.greaterthanorequal(char, char)
  806. returns informix.boolean
  807. specific ifx_char_greater_than_or_equal
  808. with (negator = lessthan, class = 'CPU', not variant)
  809. external name '12' language builtin;
  810. create function informix.greaterthanorequal(nchar(1), nchar(1))
  811. returns informix.boolean
  812. specific ifx_nchar_greater_than_or_equal
  813. with (negator = lessthan, class = 'CPU', not variant)
  814. external name '12' language builtin;
  815. create function informix.greaterthanorequal(varchar(1), varchar(1))
  816. returns informix.boolean
  817. specific ifx_varchar_greater_than_or_equal
  818. with (negator = lessthan, class = 'CPU', not variant)
  819. external name '12' language builtin;
  820. create function informix.greaterthanorequal(nvarchar(1), nvarchar(1))
  821. returns informix.boolean
  822. specific ifx_nvarchar_greater_than_or_equal
  823. with (negator = lessthan, class = 'CPU', not variant)
  824. external name '12' language builtin;
  825. create function informix.greaterthanorequal(smallint, smallint)
  826. returns informix.boolean
  827. specific ifx_smallint_greater_than_or_equal
  828. with (negator = lessthan, class = 'CPU', not variant)
  829. external name '12' language builtin;
  830. create function informix.greaterthanorequal(int, int) returns informix.boolean
  831. specific ifx_int_greater_than_or_equal
  832. with (negator = lessthan, class = 'CPU', not variant)
  833. external name '12' language builtin;
  834. create function informix.greaterthanorequal(int8, int8)
  835. returns informix.boolean
  836. specific ifx_int8_greater_than_or_equal
  837. with (negator = lessthan, class = 'CPU', not variant)
  838. external name '12' language builtin;
  839. create function informix.greaterthanorequal(decimal, decimal)
  840. returns informix.boolean
  841. specific ifx_decimal_greater_than_or_equal
  842. with (negator = lessthan, class = 'CPU', not variant)
  843. external name '12' language builtin;
  844. create function informix.greaterthanorequal(real, real)
  845. returns informix.boolean
  846. specific ifx_real_greater_than_or_equal
  847. with (negator = lessthan, class = 'CPU', not variant)
  848. external name '12' language builtin;
  849. create function informix.greaterthanorequal(float, float)
  850. returns informix.boolean
  851. specific ifx_float_greater_than_or_equal
  852. with (negator = lessthan, class = 'CPU', not variant)
  853. external name '12' language builtin;
  854. create function informix.greaterthanorequal(date, date)
  855. returns informix.boolean
  856. specific ifx_date_greater_than_or_equal
  857. with (negator = lessthan, class = 'CPU', not variant)
  858. external name '12' language builtin;
  859. create function informix.greaterthanorequal(datetime year to minute,
  860. datetime year to minute)
  861. returns informix.boolean
  862. specific ifx_datetime_greater_than_or_equal
  863. with (negator = lessthan, class = 'CPU', not variant)
  864. external name '12' language builtin;
  865. create function informix.greaterthanorequal(interval year to month,
  866. interval year to month)
  867. returns informix.boolean
  868. specific ifx_interval_greater_than_or_equal
  869. with (negator = lessthan, class = 'CPU', not variant)
  870. external name '12' language builtin;
  871. create function informix.greaterthanorequal(money, money)
  872. returns informix.boolean
  873. specific ifx_money_greater_than_or_equal
  874. with (negator = lessthan, class = 'CPU', not variant)
  875. external name '12' language builtin;
  876. create function informix.greaterthanorequal(references text,
  877. references text) returns informix.boolean
  878. specific ifx_text_greater_than_or_equal
  879. with (negator = lessthan, class = 'CPU', not variant)
  880. external name '12' language builtin;
  881. create function informix.greaterthanorequal(references byte,
  882. references byte) returns informix.boolean
  883. specific ifx_byte_greater_than_or_equal
  884. with (negator = lessthan, class = 'CPU', not variant)
  885. external name '12' language builtin;
  886. create function informix.lessthanorequal(char, char) returns informix.boolean
  887. specific ifx_char_less_than_or_equal
  888. with (negator = greaterthan, class = 'CPU', not variant)
  889. external name '15' language builtin;
  890. create function informix.lessthanorequal(nchar(1), nchar(1))
  891. returns informix.boolean
  892. specific ifx_nchar_less_than_or_equal
  893. with (negator = greaterthan, class = 'CPU', not variant)
  894. external name '15' language builtin;
  895. create function informix.lessthanorequal(varchar(1), varchar(1))
  896. returns informix.boolean
  897. specific ifx_varchar_less_than_or_equal
  898. with (negator = greaterthan, class = 'CPU', not variant)
  899. external name '15' language builtin;
  900. create function informix.lessthanorequal(nvarchar(1), nvarchar(1))
  901. returns informix.boolean
  902. specific ifx_nvarchar_less_than_or_equal
  903. with (negator = greaterthan, class = 'CPU', not variant)
  904. external name '15' language builtin;
  905. create function informix.lessthanorequal(smallint, smallint)
  906. returns informix.boolean
  907. specific ifx_smallint_less_than_or_equal
  908. with (negator = greaterthan, class = 'CPU', not variant)
  909. external name '15' language builtin;
  910. create function informix.lessthanorequal(int, int) returns informix.boolean
  911. specific ifx_int_less_than_or_equal
  912. with (negator = greaterthan, class = 'CPU', not variant)
  913. external name '15' language builtin;
  914. create function informix.lessthanorequal(int8, int8) returns informix.boolean
  915. specific ifx_int8_less_than_or_equal
  916. with (negator = greaterthan, class = 'CPU', not variant)
  917. external name '15' language builtin;
  918. create function informix.lessthanorequal(decimal, decimal)
  919. returns informix.boolean
  920. specific ifx_decimal_less_than_or_equal
  921. with (negator = greaterthan, class = 'CPU', not variant)
  922. external name '15' language builtin;
  923. create function informix.lessthanorequal(real, real) returns informix.boolean
  924. specific ifx_real_less_than_or_equal
  925. with (negator = greaterthan, class = 'CPU', not variant)
  926. external name '15' language builtin;
  927. create function informix.lessthanorequal(float, float)
  928. returns informix.boolean
  929. specific ifx_float_less_than_or_equal
  930. with (negator = greaterthan, class = 'CPU', not variant)
  931. external name '15' language builtin;
  932. create function informix.lessthanorequal(date, date) returns informix.boolean
  933. specific ifx_date_less_than_or_equal
  934. with (negator = greaterthan, class = 'CPU', not variant)
  935. external name '15' language builtin;
  936. create function informix.lessthanorequal(datetime year to minute,
  937. datetime year to minute)
  938. returns informix.boolean
  939. specific ifx_datetime_less_than_or_equal
  940. with (negator = greaterthan, class = 'CPU', not variant)
  941. external name '15' language builtin;
  942. create function informix.lessthanorequal(interval year to month,
  943. interval year to month)
  944. returns informix.boolean
  945. specific ifx_interval_less_than_or_equal
  946. with (negator = greaterthan, class = 'CPU', not variant)
  947. external name '15' language builtin;
  948. create function informix.lessthanorequal(money, money)
  949. returns informix.boolean
  950. specific ifx_money_less_than_or_equal
  951. with (negator = greaterthan, class = 'CPU', not variant)
  952. external name '15' language builtin;
  953. create function informix.lessthanorequal(references text,
  954. references text) returns informix.boolean
  955. specific ifx_text_less_than_or_equal
  956. with (negator = greaterthan, class = 'CPU', not variant)
  957. external name '15' language builtin;
  958. create function informix.lessthanorequal(references byte,
  959. references byte) returns informix.boolean
  960. specific ifx_byte_less_than_or_equal
  961. with (negator = greaterthan, class = 'CPU', not variant)
  962. external name '15' language builtin;
  963. create function informix.like(char(1), char(1)) returns informix.boolean
  964. specific ifx_char_like_with_no_escape
  965. with (class = 'CPU', not variant)
  966. external name '17' language builtin;
  967. create function informix.like(nchar(1), nchar(1)) returns informix.boolean
  968. specific ifx_nchar_like_with_no_escape
  969. with (class = 'CPU', not variant)
  970. external name '17' language builtin;
  971. create function informix.like(varchar(1), varchar(1)) returns informix.boolean
  972. specific ifx_varchar_like_with_no_escape
  973. with (class = 'CPU', not variant)
  974. external name '17' language builtin;
  975. create function informix.like(nvarchar(1), nvarchar(1))
  976. returns informix.boolean
  977. specific ifx_nvarchar_like_with_no_escape
  978. with (class = 'CPU', not variant)
  979. external name '17' language builtin;
  980. create function informix.like(char(1), char(1), char(1))
  981. returns informix.boolean
  982. specific ifx_char_like_with_escape
  983. with (class = 'CPU', not variant)
  984. external name '17' language builtin;
  985. create function informix.like(nchar(1), nchar(1), nchar(1))
  986. returns informix.boolean
  987. specific ifx_nchar_like_with_escape
  988. with (class = 'CPU', not variant)
  989. external name '17' language builtin;
  990. create function informix.like(varchar(1), varchar(1), varchar(1))
  991. returns informix.boolean
  992. specific ifx_varchar_like_with_escape
  993. with (class = 'CPU', not variant)
  994. external name '17' language builtin;
  995. create function informix.like(nvarchar(1), nvarchar(1), nvarchar(1))
  996. returns informix.boolean
  997. specific ifx_nvarchar_like_with_escape
  998. with (class = 'CPU', not variant)
  999. external name '17' language builtin;
  1000. create function informix.matches(char(1), char(1)) returns informix.boolean
  1001. specific ifx_char_matches_binary
  1002. with (class = 'CPU', not variant)
  1003. external name '19' language builtin;
  1004. create function informix.matches(nchar(1), nchar(1)) returns informix.boolean
  1005. specific ifx_nchar_matches_binary
  1006. with (class = 'CPU', not variant)
  1007. external name '19' language builtin;
  1008. create function informix.matches(varchar(1), varchar(1))
  1009. returns informix.boolean
  1010. specific ifx_varchar_matches_binary
  1011. with (class = 'CPU', not variant)
  1012. external name '19' language builtin;
  1013. create function informix.matches(nvarchar(1), nvarchar(1))
  1014. returns informix.boolean
  1015. specific ifx_nvarchar_matches_binary
  1016. with (class = 'CPU', not variant)
  1017. external name '19' language builtin;
  1018. create function informix.matches(char(1), char(1), char(1))
  1019. returns informix.boolean
  1020. specific ifx_char_matches_trinary
  1021. with (class = 'CPU', not variant)
  1022. external name '19' language builtin;
  1023. create function informix.matches(nchar(1), nchar(1), nchar(1))
  1024. returns informix.boolean
  1025. specific ifx_nchar_matches_trinary
  1026. with (class = 'CPU', not variant)
  1027. external name '19' language builtin;
  1028. create function informix.matches(varchar(1), varchar(1), varchar(1))
  1029. returns informix.boolean
  1030. specific ifx_varchar_matches_trinary
  1031. with (class = 'CPU', not variant)
  1032. external name '19' language builtin;
  1033. create function informix.matches(nvarchar(1), nvarchar(1), nvarchar(1))
  1034. returns informix.boolean
  1035. specific ifx_nvarchar_matches_trinary
  1036. with (class = 'CPU', not variant)
  1037. external name '19' language builtin;
  1038. create function informix.concat(char, char) returns char(1)
  1039. specific ifx_char_concat
  1040. with (class = 'CPU', commutator = concat, not variant)
  1041. external name '43' language builtin;
  1042. create function informix.concat(nchar(1), nchar(1)) returns nchar(1)
  1043. specific ifx_nchar_concat
  1044. with (class = 'CPU', commutator = concat, not variant)
  1045. external name '43' language builtin;
  1046. create function informix.concat(varchar(1), varchar(1)) returns varchar(1)
  1047. specific ifx_varchar_concat
  1048. with (class = 'CPU', commutator = concat, not variant)
  1049. external name '43' language builtin;
  1050. create function informix.concat(nvarchar(1), nvarchar(1)) returns nvarchar(1)
  1051. specific ifx_nvarchar_concat
  1052. with (class = 'CPU', commutator = concat, not variant)
  1053. external name '43' language builtin;
  1054. create function informix.negate(smallint) returns smallint
  1055. specific ifx_smallint_negate
  1056. with (class = 'CPU', not variant)
  1057. external name '23' language builtin;
  1058. create function informix.negate(int) returns int
  1059. specific ifx_int_negate
  1060. with (class = 'CPU', not variant)
  1061. external name '23' language builtin;
  1062. create function informix.negate(int8) returns int8
  1063. specific ifx_int8_negate
  1064. with (class = 'CPU', not variant)
  1065. external name '23' language builtin;
  1066. create function informix.negate(decimal) returns decimal
  1067. specific ifx_decimal_negate
  1068. with (class = 'CPU', not variant)
  1069. external name '23' language builtin;
  1070. create function informix.negate(real) returns real
  1071. specific ifx_real_negate
  1072. with (class = 'CPU', not variant)
  1073. external name '23' language builtin;
  1074. create function informix.negate(float) returns float
  1075. specific ifx_float_negate
  1076. with (class = 'CPU', not variant)
  1077. external name '23' language builtin;
  1078. create function informix.negate(money)
  1079. returns money
  1080. specific ifx_money_negate
  1081. with (class = 'CPU', not variant)
  1082. external name '23' language builtin;
  1083. create function informix.minus(smallint, smallint) returns decimal
  1084. specific ifx_smallint_minus
  1085. with (class = 'CPU', not variant)
  1086. external name '23' language builtin;
  1087. create function informix.minus(int, int) returns decimal
  1088. specific ifx_int_minus
  1089. with (class = 'CPU', not variant)
  1090. external name '23' language builtin;
  1091. create function informix.minus(int8, int8) returns decimal
  1092. specific ifx_int8_minus
  1093. with (class = 'CPU', not variant)
  1094. external name '23' language builtin;
  1095. create function informix.minus(decimal, decimal) returns decimal
  1096. specific ifx_decimal_minus
  1097. with (class = 'CPU', not variant)
  1098. external name '23' language builtin;
  1099. create function informix.minus(real, real) returns decimal
  1100. specific ifx_real_minus
  1101. with (class = 'CPU', not variant)
  1102. external name '23' language builtin;
  1103. create function informix.minus(float, float) returns decimal
  1104. specific ifx_float_minus
  1105. with (class = 'CPU', not variant)
  1106. external name '23' language builtin;
  1107. create function informix.minus(date, date) returns integer
  1108. specific ifx_date_minus
  1109. with (class = 'CPU', not variant)
  1110. external name '23' language builtin;
  1111. create function informix.minus
  1112. (datetime year to minute, datetime year to minute)
  1113. returns interval year to month
  1114. specific ifx_datetime_minus2
  1115. with (class = 'CPU', not variant)
  1116. external name '23' language builtin;
  1117. create function informix.minus
  1118. (datetime year to minute, interval year to month)
  1119. returns interval year to month
  1120. specific ifx_datetime_minus
  1121. with (class = 'CPU', not variant)
  1122. external name '23' language builtin;
  1123. create function informix.minus(interval year to month, interval year to month)
  1124. returns interval year to month
  1125. specific ifx_interval_minus
  1126. with (class = 'CPU', not variant)
  1127. external name '23' language builtin;
  1128. create function informix.minus(money, money)
  1129. returns money
  1130. specific ifx_money_minus
  1131. with (class = 'CPU', not variant)
  1132. external name '23' language builtin;
  1133. create function informix.positive(smallint) returns smallint
  1134. specific ifx_smallint_positive
  1135. with (class = 'CPU', not variant)
  1136. external name '35' language builtin;
  1137. create function informix.positive(int) returns int
  1138. specific ifx_int_positive
  1139. with (class = 'CPU', not variant)
  1140. external name '35' language builtin;
  1141. create function informix.positive(int8) returns int8
  1142. specific ifx_int8_positive
  1143. with (class = 'CPU', not variant)
  1144. external name '35' language builtin;
  1145. create function informix.positive(decimal) returns decimal
  1146. specific ifx_decimal_positive
  1147. with (class = 'CPU', not variant)
  1148. external name '35' language builtin;
  1149. create function informix.positive(real) returns real
  1150. specific ifx_real_positive
  1151. with (class = 'CPU', not variant)
  1152. external name '35' language builtin;
  1153. create function informix.positive(float) returns float
  1154. specific ifx_float_positive
  1155. with (class = 'CPU', not variant)
  1156. external name '35' language builtin;
  1157. create function informix.positive(money)
  1158. returns money
  1159. specific ifx_money_positive
  1160. with (class = 'CPU', not variant)
  1161. external name '35' language builtin;
  1162. create function informix.plus(smallint, smallint) returns decimal
  1163. specific ifx_smallint_plus
  1164. with (class = 'CPU', commutator = plus, not variant)
  1165. external name '35' language builtin;
  1166. create function informix.plus(int, int) returns decimal
  1167. specific ifx_int_plus
  1168. with (class = 'CPU', commutator = plus, not variant)
  1169. external name '35' language builtin;
  1170. create function informix.plus(int8, int8) returns decimal
  1171. specific ifx_int8_plus
  1172. with (class = 'CPU', commutator = plus, not variant)
  1173. external name '35' language builtin;
  1174. create function informix.plus(decimal, decimal) returns decimal
  1175. specific ifx_decimal_plus
  1176. with (class = 'CPU', commutator = plus, not variant)
  1177. external name '35' language builtin;
  1178. create function informix.plus(real, real) returns decimal
  1179. specific ifx_real_plus
  1180. with (class = 'CPU', commutator = plus, not variant)
  1181. external name '35' language builtin;
  1182. create function informix.plus(float, float) returns decimal
  1183. specific ifx_float_plus
  1184. with (class = 'CPU', commutator = plus, not variant)
  1185. external name '35' language builtin;
  1186. create function informix.plus(date, date) returns date
  1187. specific ifx_date_plus
  1188. with (class = 'CPU', commutator = plus, not variant)
  1189. external name '35' language builtin;
  1190. create function informix.plus(datetime year to minute, interval year to month)
  1191. returns datetime year to minute
  1192. specific ifx_datetime_plus
  1193. with (class = 'CPU', commutator = plus, not variant)
  1194. external name '35' language builtin;
  1195. create function informix.plus(interval year to month, interval year to month)
  1196. returns interval year to month
  1197. specific ifx_interval_plus
  1198. with (class = 'CPU', commutator = plus, not variant)
  1199. external name '35' language builtin;
  1200. create function informix.plus(money, money)
  1201. returns money
  1202. specific ifx_money_plus
  1203. with (class = 'CPU', commutator = plus, not variant)
  1204. external name '35' language builtin;
  1205. create function informix.times(smallint, smallint) returns decimal
  1206. specific ifx_smallint_times
  1207. with (class = 'CPU', commutator = times, not variant)
  1208. external name '25' language builtin;
  1209. create function informix.times(int, int) returns decimal
  1210. specific ifx_int_times
  1211. with (class = 'CPU', commutator = times, not variant)
  1212. external name '25' language builtin;
  1213. create function informix.times(int8, int8) returns decimal
  1214. specific ifx_int8_times
  1215. with (class = 'CPU', commutator = times, not variant)
  1216. external name '25' language builtin;
  1217. create function informix.times(decimal, decimal) returns decimal
  1218. specific ifx_decimal_times
  1219. with (class = 'CPU', commutator = times, not variant)
  1220. external name '25' language builtin;
  1221. create function informix.times(real, real) returns decimal
  1222. specific ifx_real_times
  1223. with (class = 'CPU', commutator = times, not variant)
  1224. external name '25' language builtin;
  1225. create function informix.times(float, float) returns decimal
  1226. specific ifx_float_times
  1227. with (class = 'CPU', commutator = times, not variant)
  1228. external name '25' language builtin;
  1229. create function informix.times(date, date) returns date
  1230. specific ifx_date_times
  1231. with (class = 'CPU', commutator = times, not variant)
  1232. external name '25' language builtin;
  1233. create function informix.times(interval year to month, interval year to month)
  1234. returns interval year to month
  1235. specific ifx_interval_times
  1236. with (class = 'CPU', commutator = times, not variant)
  1237. external name '25' language builtin;
  1238. create function informix.times(money, money)
  1239. returns money
  1240. specific ifx_money_times
  1241. with (class = 'CPU', commutator = times, not variant)
  1242. external name '25' language builtin;
  1243. create function informix.divide(smallint, smallint) returns decimal
  1244. specific ifx_smallint_divide
  1245. with (class = 'CPU', not variant)
  1246. external name '8' language builtin;
  1247. create function informix.divide(int, int) returns decimal
  1248. specific ifx_int_divide
  1249. with (class = 'CPU', not variant)
  1250. external name '8' language builtin;
  1251. create function informix.divide(int8, int8) returns decimal
  1252. specific ifx_int8_divide
  1253. with (class = 'CPU', not variant)
  1254. external name '8' language builtin;
  1255. create function informix.divide(decimal, decimal) returns decimal
  1256. specific ifx_decimal_divide
  1257. with (class = 'CPU', not variant)
  1258. external name '8' language builtin;
  1259. create function informix.divide(real, real) returns decimal
  1260. specific ifx_real_divide
  1261. with (class = 'CPU', not variant)
  1262. external name '8' language builtin;
  1263. create function informix.divide(float, float) returns decimal
  1264. specific ifx_float_divide
  1265. with (class = 'CPU', not variant)
  1266. external name '8' language builtin;
  1267. create function informix.divide(date, date) returns date
  1268. specific ifx_date_divide
  1269. with (class = 'CPU', not variant)
  1270. external name '8' language builtin;
  1271. create function informix.divide
  1272. (interval year to month, interval year to month)
  1273. returns interval year to month
  1274. specific ifx_interval_divide
  1275. with (class = 'CPU', not variant)
  1276. external name '8' language builtin;
  1277. create function informix.divide(money, money)
  1278. returns decimal
  1279. specific ifx_money_divide
  1280. with (class = 'CPU', not variant)
  1281. external name '8' language builtin;
  1282. create function informix.abs(integer)
  1283. returns integer
  1284. specific ifx_integer_abs
  1285. with (class = 'CPU', not variant)
  1286. external name '100' language builtin;
  1287. create function informix.abs(smallint)
  1288. returns smallint
  1289. specific ifx_smallint_abs
  1290. with (class = 'CPU', not variant)
  1291. external name '100' language builtin;
  1292. create function informix.abs(int8)
  1293. returns int8
  1294. specific ifx_int8_abs
  1295. with (class = 'CPU', not variant)
  1296. external name '100' language builtin;
  1297. create function informix.abs(float)
  1298. returns float
  1299. specific ifx_float_abs
  1300. with (class = 'CPU', not variant)
  1301. external name '100' language builtin;
  1302. create function informix.abs(smallfloat)
  1303. returns smallfloat
  1304. specific ifx_smallfloat_abs
  1305. with (class = 'CPU', not variant)
  1306. external name '100' language builtin;
  1307. create function informix.abs(decimal)
  1308. returns decimal
  1309. specific ifx_decimal_abs
  1310. with (class = 'CPU', not variant)
  1311. external name '100' language builtin;
  1312. create function informix.abs(money)
  1313. returns money
  1314. specific ifx_money_abs
  1315. with (class = 'CPU', not variant)
  1316. external name '100' language builtin;
  1317. create function informix.abs(varchar(1))
  1318. returns decimal
  1319. specific ifx_varchar_abs
  1320. with (class = 'CPU', not variant)
  1321. external name '100' language builtin;
  1322. create function informix.abs(char(1))
  1323. returns decimal
  1324. specific ifx_char_abs
  1325. with (class = 'CPU', not variant)
  1326. external name '100' language builtin;
  1327. create function informix.abs(nvarchar(1))
  1328. returns decimal
  1329. specific ifx_nvarchar_abs
  1330. with (class = 'CPU', not variant)
  1331. external name '100' language builtin;
  1332. create function informix.abs(nchar(1))
  1333. returns decimal
  1334. specific ifx_nchar_abs
  1335. with (class = 'CPU', not variant)
  1336. external name '100' language builtin;
  1337. create function informix.exp(integer)
  1338. returns float
  1339. specific ifx_integer_exp
  1340. with (class = 'CPU', not variant)
  1341. external name '103' language builtin;
  1342. create function informix.exp(smallint)
  1343. returns float
  1344. specific ifx_smallint_exp
  1345. with (class = 'CPU', not variant)
  1346. external name '103' language builtin;
  1347. create function informix.exp(int8)
  1348. returns float
  1349. specific ifx_int8_exp
  1350. with (class = 'CPU', not variant)
  1351. external name '103' language builtin;
  1352. create function informix.exp(float)
  1353. returns float
  1354. specific ifx_float_exp
  1355. with (class = 'CPU', not variant)
  1356. external name '103' language builtin;
  1357. create function informix.exp(smallfloat)
  1358. returns float
  1359. specific ifx_smallfloat_exp
  1360. with (class = 'CPU', not variant)
  1361. external name '103' language builtin;
  1362. create function informix.exp(decimal)
  1363. returns float
  1364. specific ifx_decimal_exp
  1365. with (class = 'CPU', not variant)
  1366. external name '103' language builtin;
  1367. create function informix.exp(money)
  1368. returns float
  1369. specific ifx_money_exp
  1370. with (class = 'CPU', not variant)
  1371. external name '103' language builtin;
  1372. create function informix.exp(varchar(1))
  1373. returns float
  1374. specific ifx_varchar_exp
  1375. with (class = 'CPU', not variant)
  1376. external name '103' language builtin;
  1377. create function informix.exp(char(1))
  1378. returns float
  1379. specific ifx_char_exp
  1380. with (class = 'CPU', not variant)
  1381. external name '103' language builtin;
  1382. create function informix.exp(nvarchar(1))
  1383. returns float
  1384. specific ifx_nvarchar_exp
  1385. with (class = 'CPU', not variant)
  1386. external name '103' language builtin;
  1387. create function informix.exp(nchar(1))
  1388. returns float
  1389. specific ifx_nchar_exp
  1390. with (class = 'CPU', not variant)
  1391. external name '103' language builtin;
  1392. create function informix.hex(integer)
  1393. returns char(20)
  1394. specific ifx_integer_hex
  1395. with (class = 'CPU', not variant)
  1396. external name '92' language builtin;
  1397. create function informix.hex(smallint)
  1398. returns char(20)
  1399. specific ifx_smallint_hex
  1400. with (class = 'CPU', not variant)
  1401. external name '92' language builtin;
  1402. create function informix.hex(int8)
  1403. returns char(20)
  1404. specific ifx_int8_hex
  1405. with (class = 'CPU', not variant)
  1406. external name '92' language builtin;
  1407. create function informix.hex(float)
  1408. returns char(20)
  1409. specific ifx_float_hex
  1410. with (class = 'CPU', not variant)
  1411. external name '92' language builtin;
  1412. create function informix.hex(smallfloat)
  1413. returns char(20)
  1414. specific ifx_smallfloat_hex
  1415. with (class = 'CPU', not variant)
  1416. external name '92' language builtin;
  1417. create function informix.hex(decimal)
  1418. returns char(20)
  1419. specific ifx_decimal_hex
  1420. with (class = 'CPU', not variant)
  1421. external name '92' language builtin;
  1422. create function informix.hex(money)
  1423. returns char(20)
  1424. specific ifx_money_hex
  1425. with (class = 'CPU', not variant)
  1426. external name '92' language builtin;
  1427. create function informix.hex(varchar(1))
  1428. returns char(20)
  1429. specific ifx_varchar_hex
  1430. with (class = 'CPU', not variant)
  1431. external name '92' language builtin;
  1432. create function informix.hex(char(1))
  1433. returns char(20)
  1434. specific ifx_char_hex
  1435. with (class = 'CPU', not variant)
  1436. external name '92' language builtin;
  1437. create function informix.hex(nvarchar(1))
  1438. returns char(20)
  1439. specific ifx_nvarchar_hex
  1440. with (class = 'CPU', not variant)
  1441. external name '92' language builtin;
  1442. create function informix.hex(nchar(1))
  1443. returns char(20)
  1444. specific ifx_nchar_hex
  1445. with (class = 'CPU', not variant)
  1446. external name '92' language builtin;
  1447. create function informix.log10(integer)
  1448. returns float
  1449. specific ifx_integer_log10
  1450. with (class = 'CPU', not variant)
  1451. external name '102' language builtin;
  1452. create function informix.log10(smallint)
  1453. returns float
  1454. specific ifx_smallint_log10
  1455. with (class = 'CPU', not variant)
  1456. external name '102' language builtin;
  1457. create function informix.log10(int8)
  1458. returns float
  1459. specific ifx_int8_log10
  1460. with (class = 'CPU', not variant)
  1461. external name '102' language builtin;
  1462. create function informix.log10(float)
  1463. returns float
  1464. specific ifx_float_log10
  1465. with (class = 'CPU', not variant)
  1466. external name '102' language builtin;
  1467. create function informix.log10(smallfloat)
  1468. returns float
  1469. specific ifx_smallfloat_log10
  1470. with (class = 'CPU', not variant)
  1471. external name '102' language builtin;
  1472. create function informix.log10(decimal)
  1473. returns float
  1474. specific ifx_decimal_log10
  1475. with (class = 'CPU', not variant)
  1476. external name '102' language builtin;
  1477. create function informix.log10(money)
  1478. returns float
  1479. specific ifx_money_log10
  1480. with (class = 'CPU', not variant)
  1481. external name '102' language builtin;
  1482. create function informix.log10(varchar(1))
  1483. returns float
  1484. specific ifx_varchar_log10
  1485. with (class = 'CPU', not variant)
  1486. external name '102' language builtin;
  1487. create function informix.log10(char(1))
  1488. returns float
  1489. specific ifx_char_log10
  1490. with (class = 'CPU', not variant)
  1491. external name '102' language builtin;
  1492. create function informix.log10(nvarchar(1))
  1493. returns float
  1494. specific ifx_nvarchar_log10
  1495. with (class = 'CPU', not variant)
  1496. external name '102' language builtin;
  1497. create function informix.log10(nchar(1))
  1498. returns float
  1499. specific ifx_nchar_log10
  1500. with (class = 'CPU', not variant)
  1501. external name '102' language builtin;
  1502. create function informix.logn(integer)
  1503. returns float
  1504. specific ifx_integer_logn
  1505. with (class = 'CPU', not variant)
  1506. external name '101' language builtin;
  1507. create function informix.logn(smallint)
  1508. returns float
  1509. specific ifx_smallint_logn
  1510. with (class = 'CPU', not variant)
  1511. external name '101' language builtin;
  1512. create function informix.logn(int8)
  1513. returns float
  1514. specific ifx_int8_logn
  1515. with (class = 'CPU', not variant)
  1516. external name '101' language builtin;
  1517. create function informix.logn(float)
  1518. returns float
  1519. specific ifx_float_logn
  1520. with (class = 'CPU', not variant)
  1521. external name '101' language builtin;
  1522. create function informix.logn(smallfloat)
  1523. returns float
  1524. specific ifx_smallfloat_logn
  1525. with (class = 'CPU', not variant)
  1526. external name '101' language builtin;
  1527. create function informix.logn(decimal)
  1528. returns float
  1529. specific ifx_decimal_logn
  1530. with (class = 'CPU', not variant)
  1531. external name '101' language builtin;
  1532. create function informix.logn(money)
  1533. returns float
  1534. specific ifx_money_logn
  1535. with (class = 'CPU', not variant)
  1536. external name '101' language builtin;
  1537. create function informix.logn(varchar(1))
  1538. returns float
  1539. specific ifx_varchar_logn
  1540. with (class = 'CPU', not variant)
  1541. external name '101' language builtin;
  1542. create function informix.logn(char(1))
  1543. returns float
  1544. specific ifx_char_logn
  1545. with (class = 'CPU', not variant)
  1546. external name '101' language builtin;
  1547. create function informix.logn(nvarchar(1))
  1548. returns float
  1549. specific ifx_nvarchar_logn
  1550. with (class = 'CPU', not variant)
  1551. external name '101' language builtin;
  1552. create function informix.logn(nchar(1))
  1553. returns float
  1554. specific ifx_nchar_logn
  1555. with (class = 'CPU', not variant)
  1556. external name '101' language builtin;
  1557. create function informix.mod(integer, integer)
  1558. returns integer
  1559. specific ifx_integer_mod
  1560. with (class = 'CPU', not variant)
  1561. external name '104' language builtin;
  1562. create function informix.mod(smallint, integer)
  1563. returns integer
  1564. specific ifx_smallint_mod
  1565. with (class = 'CPU', not variant)
  1566. external name '104' language builtin;
  1567. create function informix.mod(int8, int8)
  1568. returns int8
  1569. specific ifx_int8_mod
  1570. with (class = 'CPU', not variant)
  1571. external name '104' language builtin;
  1572. create function informix.mod(float, integer)
  1573. returns integer
  1574. specific ifx_float_mod
  1575. with (class = 'CPU', not variant)
  1576. external name '104' language builtin;
  1577. create function informix.mod(smallfloat, integer)
  1578. returns integer
  1579. specific ifx_smallfloat_mod
  1580. with (class = 'CPU', not variant)
  1581. external name '104' language builtin;
  1582. create function informix.mod(decimal, integer)
  1583. returns integer
  1584. specific ifx_decimal_mod
  1585. with (class = 'CPU', not variant)
  1586. external name '104' language builtin;
  1587. create function informix.mod(money, integer)
  1588. returns integer
  1589. specific ifx_money_mod
  1590. with (class = 'CPU', not variant)
  1591. external name '104' language builtin;
  1592. create function informix.mod(varchar(1), integer)
  1593. returns integer
  1594. specific ifx_varchar_mod
  1595. with (class = 'CPU', not variant)
  1596. external name '104' language builtin;
  1597. create function informix.mod(char(1), integer)
  1598. returns integer
  1599. specific ifx_char_mod
  1600. with (class = 'CPU', not variant)
  1601. external name '104' language builtin;
  1602. create function informix.mod(nvarchar(1), integer)
  1603. returns integer
  1604. specific ifx_nvarchar_mod
  1605. with (class = 'CPU', not variant)
  1606. external name '104' language builtin;
  1607. create function informix.mod(nchar(1), integer)
  1608. returns integer
  1609. specific ifx_nchar_mod
  1610. with (class = 'CPU', not variant)
  1611. external name '104' language builtin;
  1612. create function informix.pow(integer, float)
  1613. returns float
  1614. specific ifx_integer_pow
  1615. with (class = 'CPU', not variant)
  1616. external name '105' language builtin;
  1617. create function informix.pow(smallint, float)
  1618. returns float
  1619. specific ifx_smallint_pow
  1620. with (class = 'CPU', not variant)
  1621. external name '105' language builtin;
  1622. create function informix.pow(int8, float)
  1623. returns float
  1624. specific ifx_int8_pow
  1625. with (class = 'CPU', not variant)
  1626. external name '105' language builtin;
  1627. create function informix.pow(float, float)
  1628. returns float
  1629. specific ifx_float_pow
  1630. with (class = 'CPU', not variant)
  1631. external name '105' language builtin;
  1632. create function informix.pow(smallfloat, float)
  1633. returns float
  1634. specific ifx_smallfloat_pow
  1635. with (class = 'CPU', not variant)
  1636. external name '105' language builtin;
  1637. create function informix.pow(decimal, float)
  1638. returns float
  1639. specific ifx_decimal_pow
  1640. with (class = 'CPU', not variant)
  1641. external name '105' language builtin;
  1642. create function informix.pow(money, float)
  1643. returns float
  1644. specific ifx_money_pow
  1645. with (class = 'CPU', not variant)
  1646. external name '105' language builtin;
  1647. create function informix.pow(varchar(1), float)
  1648. returns float
  1649. specific ifx_varchar_pow
  1650. with (class = 'CPU', not variant)
  1651. external name '105' language builtin;
  1652. create function informix.pow(char(1), float)
  1653. returns float
  1654. specific ifx_char_pow
  1655. with (class = 'CPU', not variant)
  1656. external name '105' language builtin;
  1657. create function informix.pow(nvarchar(1), float)
  1658. returns float
  1659. specific ifx_nvarchar_pow
  1660. with (class = 'CPU', not variant)
  1661. external name '105' language builtin;
  1662. create function informix.pow(nchar(1), float)
  1663. returns float
  1664. specific ifx_nchar_pow
  1665. with (class = 'CPU', not variant)
  1666. external name '105' language builtin;
  1667. create function informix.root(integer, float default 2.0)
  1668. returns float
  1669. specific ifx_integer_root
  1670. with (class = 'CPU', not variant)
  1671. external name '106' language builtin;
  1672. create function informix.root(smallint, float default 2.0)
  1673. returns float
  1674. specific ifx_smallint_root
  1675. with (class = 'CPU', not variant)
  1676. external name '106' language builtin;
  1677. create function informix.root(int8, float default 2.0)
  1678. returns float
  1679. specific ifx_int8_root
  1680. with (class = 'CPU', not variant)
  1681. external name '106' language builtin;
  1682. create function informix.root(float, float default 2.0)
  1683. returns float
  1684. specific ifx_float_root
  1685. with (class = 'CPU', not variant)
  1686. external name '106' language builtin;
  1687. create function informix.root(smallfloat, float default 2.0)
  1688. returns float
  1689. specific ifx_smallfloat_root
  1690. with (class = 'CPU', not variant)
  1691. external name '106' language builtin;
  1692. create function informix.root(decimal, float default 2.0)
  1693. returns float
  1694. specific ifx_decimal_root
  1695. with (class = 'CPU', not variant)
  1696. external name '106' language builtin;
  1697. create function informix.root(money, float default 2.0)
  1698. returns float
  1699. specific ifx_money_root
  1700. with (class = 'CPU', not variant)
  1701. external name '106' language builtin;
  1702. create function informix.root(varchar(1), float default 2.0)
  1703. returns float
  1704. specific ifx_varchar_root
  1705. with (class = 'CPU', not variant)
  1706. external name '106' language builtin;
  1707. create function informix.root(char(1), float default 2.0)
  1708. returns float
  1709. specific ifx_char_root
  1710. with (class = 'CPU', not variant)
  1711. external name '106' language builtin;
  1712. create function informix.root(nvarchar(1), float default 2.0)
  1713. returns float
  1714. specific ifx_nvarchar_root
  1715. with (class = 'CPU', not variant)
  1716. external name '106' language builtin;
  1717. create function informix.root(nchar(1), float default 2.0)
  1718. returns float
  1719. specific ifx_nchar_root
  1720. with (class = 'CPU', not variant)
  1721. external name '106' language builtin;
  1722. create function informix.round(integer, integer default 0)
  1723. returns decimal
  1724. specific ifx_integer_round
  1725. with (class = 'CPU', not variant)
  1726. external name '90' language builtin;
  1727. create function informix.round(smallint, integer default 0)
  1728. returns decimal
  1729. specific ifx_smallint_round
  1730. with (class = 'CPU', not variant)
  1731. external name '90' language builtin;
  1732. create function informix.round(int8, integer default 0)
  1733. returns decimal
  1734. specific ifx_int8_round
  1735. with (class = 'CPU', not variant)
  1736. external name '90' language builtin;
  1737. create function informix.round(float, integer default 0)
  1738. returns decimal
  1739. specific ifx_float_round
  1740. with (class = 'CPU', not variant)
  1741. external name '90' language builtin;
  1742. create function informix.round(smallfloat, integer default 0)
  1743. returns decimal
  1744. specific ifx_smallfloat_round
  1745. with (class = 'CPU', not variant)
  1746. external name '90' language builtin;
  1747. create function informix.round(decimal, integer default 0)
  1748. returns decimal
  1749. specific ifx_decimal_round
  1750. with (class = 'CPU', not variant)
  1751. external name '90' language builtin;
  1752. create function informix.round(money, integer default 0)
  1753. returns decimal
  1754. specific ifx_money_round
  1755. with (class = 'CPU', not variant)
  1756. external name '90' language builtin;
  1757. create function informix.round(varchar(1), integer default 0)
  1758. returns decimal
  1759. specific ifx_varchar_round
  1760. with (class = 'CPU', not variant)
  1761. external name '90' language builtin;
  1762. create function informix.round(char(1), integer default 0)
  1763. returns decimal
  1764. specific ifx_char_round
  1765. with (class = 'CPU', not variant)
  1766. external name '90' language builtin;
  1767. create function informix.round(nvarchar(1), integer default 0)
  1768. returns decimal
  1769. specific ifx_nvarchar_round
  1770. with (class = 'CPU', not variant)
  1771. external name '90' language builtin;
  1772. create function informix.round(nchar(1), integer default 0)
  1773. returns decimal
  1774. specific ifx_nchar_round
  1775. with (class = 'CPU', not variant)
  1776. external name '90' language builtin;
  1777. create function informix.sqrt(integer)
  1778. returns float
  1779. specific ifx_integer_sqrt
  1780. with (class = 'CPU', not variant)
  1781. external name '107' language builtin;
  1782. create function informix.sqrt(smallint)
  1783. returns float
  1784. specific ifx_smallint_sqrt
  1785. with (class = 'CPU', not variant)
  1786. external name '107' language builtin;
  1787. create function informix.sqrt(int8)
  1788. returns float
  1789. specific ifx_int8_sqrt
  1790. with (class = 'CPU', not variant)
  1791. external name '107' language builtin;
  1792. create function informix.sqrt(float)
  1793. returns float
  1794. specific ifx_float_sqrt
  1795. with (class = 'CPU', not variant)
  1796. external name '107' language builtin;
  1797. create function informix.sqrt(smallfloat)
  1798. returns float
  1799. specific ifx_smallfloat_sqrt
  1800. with (class = 'CPU', not variant)
  1801. external name '107' language builtin;
  1802. create function informix.sqrt(decimal)
  1803. returns float
  1804. specific ifx_decimal_sqrt
  1805. with (class = 'CPU', not variant)
  1806. external name '107' language builtin;
  1807. create function informix.sqrt(money)
  1808. returns float
  1809. specific ifx_money_sqrt
  1810. with (class = 'CPU', not variant)
  1811. external name '107' language builtin;
  1812. create function informix.sqrt(varchar(1))
  1813. returns float
  1814. specific ifx_varchar_sqrt
  1815. with (class = 'CPU', not variant)
  1816. external name '107' language builtin;
  1817. create function informix.sqrt(char(1))
  1818. returns float
  1819. specific ifx_char_sqrt
  1820. with (class = 'CPU', not variant)
  1821. external name '107' language builtin;
  1822. create function informix.sqrt(nvarchar(1))
  1823. returns float
  1824. specific ifx_nvarchar_sqrt
  1825. with (class = 'CPU', not variant)
  1826. external name '107' language builtin;
  1827. create function informix.sqrt(nchar(1))
  1828. returns float
  1829. specific ifx_nchar_sqrt
  1830. with (class = 'CPU', not variant)
  1831. external name '107' language builtin;
  1832. create function informix.trunc(integer, integer default 0)
  1833. returns decimal
  1834. specific ifx_integer_trunc
  1835. with (class = 'CPU', not variant)
  1836. external name '91' language builtin;
  1837. create function informix.trunc(smallint, integer default 0)
  1838. returns decimal
  1839. specific ifx_smallint_trunc
  1840. with (class = 'CPU', not variant)
  1841. external name '91' language builtin;
  1842. create function informix.trunc(int8, integer default 0)
  1843. returns decimal
  1844. specific ifx_int8_trunc
  1845. with (class = 'CPU', not variant)
  1846. external name '91' language builtin;
  1847. create function informix.trunc(float, integer default 0)
  1848. returns decimal
  1849. specific ifx_float_trunc
  1850. with (class = 'CPU', not variant)
  1851. external name '91' language builtin;
  1852. create function informix.trunc(smallfloat, integer default 0)
  1853. returns decimal
  1854. specific ifx_smallfloat_trunc
  1855. with (class = 'CPU', not variant)
  1856. external name '91' language builtin;
  1857. create function informix.trunc(decimal, integer default 0)
  1858. returns decimal
  1859. specific ifx_decimal_trunc
  1860. with (class = 'CPU', not variant)
  1861. external name '91' language builtin;
  1862. create function informix.trunc(money, integer default 0)
  1863. returns decimal
  1864. specific ifx_money_trunc
  1865. with (class = 'CPU', not variant)
  1866. external name '91' language builtin;
  1867. create function informix.trunc(varchar(1), integer default 0)
  1868. returns decimal
  1869. specific ifx_varchar_trunc
  1870. with (class = 'CPU', not variant)
  1871. external name '91' language builtin;
  1872. create function informix.trunc(char(1), integer default 0)
  1873. returns decimal
  1874. specific ifx_char_trunc
  1875. with (class = 'CPU', not variant)
  1876. external name '91' language builtin;
  1877. create function informix.trunc(nvarchar(1), integer default 0)
  1878. returns decimal
  1879. specific ifx_nvarchar_trunc
  1880. with (class = 'CPU', not variant)
  1881. external name '91' language builtin;
  1882. create function informix.trunc(nchar(1), integer default 0)
  1883. returns decimal
  1884. specific ifx_nchar_trunc
  1885. with (class = 'CPU', not variant)
  1886. external name '91' language builtin;
  1887. create function informix.cos(integer)
  1888. returns float
  1889. specific ifx_integer_cos
  1890. with (class = 'CPU', not variant)
  1891. external name '97' language builtin;
  1892. create function informix.cos(smallint)
  1893. returns float
  1894. specific ifx_smallint_cos
  1895. with (class = 'CPU', not variant)
  1896. external name '97' language builtin;
  1897. create function informix.cos(int8)
  1898. returns float
  1899. specific ifx_int8_cos
  1900. with (class = 'CPU', not variant)
  1901. external name '97' language builtin;
  1902. create function informix.cos(float)
  1903. returns float
  1904. specific ifx_float_cos
  1905. with (class = 'CPU', not variant)
  1906. external name '97' language builtin;
  1907. create function informix.cos(smallfloat)
  1908. returns float
  1909. specific ifx_smallfloat_cos
  1910. with (class = 'CPU', not variant)
  1911. external name '97' language builtin;
  1912. create function informix.cos(decimal)
  1913. returns float
  1914. specific ifx_decimal_cos
  1915. with (class = 'CPU', not variant)
  1916. external name '97' language builtin;
  1917. create function informix.cos(money)
  1918. returns float
  1919. specific ifx_money_cos
  1920. with (class = 'CPU', not variant)
  1921. external name '97' language builtin;
  1922. create function informix.cos(varchar(1))
  1923. returns float
  1924. specific ifx_varchar_cos
  1925. with (class = 'CPU', not variant)
  1926. external name '97' language builtin;
  1927. create function informix.cos(char(1))
  1928. returns float
  1929. specific ifx_char_cos
  1930. with (class = 'CPU', not variant)
  1931. external name '97' language builtin;
  1932. create function informix.cos(nvarchar(1))
  1933. returns float
  1934. specific ifx_nvarchar_cos
  1935. with (class = 'CPU', not variant)
  1936. external name '97' language builtin;
  1937. create function informix.cos(nchar(1))
  1938. returns float
  1939. specific ifx_nchar_cos
  1940. with (class = 'CPU', not variant)
  1941. external name '97' language builtin;
  1942. create function informix.sin(integer)
  1943. returns float
  1944. specific ifx_integer_sin
  1945. with (class = 'CPU', not variant)
  1946. external name '96' language builtin;
  1947. create function informix.sin(smallint)
  1948. returns float
  1949. specific ifx_smallint_sin
  1950. with (class = 'CPU', not variant)
  1951. external name '96' language builtin;
  1952. create function informix.sin(int8)
  1953. returns float
  1954. specific ifx_int8_sin
  1955. with (class = 'CPU', not variant)
  1956. external name '96' language builtin;
  1957. create function informix.sin(float)
  1958. returns float
  1959. specific ifx_float_sin
  1960. with (class = 'CPU', not variant)
  1961. external name '96' language builtin;
  1962. create function informix.sin(smallfloat)
  1963. returns float
  1964. specific ifx_smallfloat_sin
  1965. with (class = 'CPU', not variant)
  1966. external name '96' language builtin;
  1967. create function informix.sin(decimal)
  1968. returns float
  1969. specific ifx_decimal_sin
  1970. with (class = 'CPU', not variant)
  1971. external name '96' language builtin;
  1972. create function informix.sin(money)
  1973. returns float
  1974. specific ifx_money_sin
  1975. with (class = 'CPU', not variant)
  1976. external name '96' language builtin;
  1977. create function informix.sin(varchar(1))
  1978. returns float
  1979. specific ifx_varchar_sin
  1980. with (class = 'CPU', not variant)
  1981. external name '96' language builtin;
  1982. create function informix.sin(char(1))
  1983. returns float
  1984. specific ifx_char_sin
  1985. with (class = 'CPU', not variant)
  1986. external name '96' language builtin;
  1987. create function informix.sin(nvarchar(1))
  1988. returns float
  1989. specific ifx_nvarchar_sin
  1990. with (class = 'CPU', not variant)
  1991. external name '96' language builtin;
  1992. create function informix.sin(nchar(1))
  1993. returns float
  1994. specific ifx_nchar_sin
  1995. with (class = 'CPU', not variant)
  1996. external name '96' language builtin;
  1997. create function informix.tan(integer)
  1998. returns float
  1999. specific ifx_integer_tan
  2000. with (class = 'CPU', not variant)
  2001. external name '93' language builtin;
  2002. create function informix.tan(smallint)
  2003. returns float
  2004. specific ifx_smallint_tan
  2005. with (class = 'CPU', not variant)
  2006. external name '93' language builtin;
  2007. create function informix.tan(int8)
  2008. returns float
  2009. specific ifx_int8_tan
  2010. with (class = 'CPU', not variant)
  2011. external name '93' language builtin;
  2012. create function informix.tan(float)
  2013. returns float
  2014. specific ifx_float_tan
  2015. with (class = 'CPU', not variant)
  2016. external name '93' language builtin;
  2017. create function informix.tan(smallfloat)
  2018. returns float
  2019. specific ifx_smallfloat_tan
  2020. with (class = 'CPU', not variant)
  2021. external name '93' language builtin;
  2022. create function informix.tan(decimal)
  2023. returns float
  2024. specific ifx_decimal_tan
  2025. with (class = 'CPU', not variant)
  2026. external name '93' language builtin;
  2027. create function informix.tan(money)
  2028. returns float
  2029. specific ifx_money_tan
  2030. with (class = 'CPU', not variant)
  2031. external name '93' language builtin;
  2032. create function informix.tan(varchar(1))
  2033. returns float
  2034. specific ifx_varchar_tan
  2035. with (class = 'CPU', not variant)
  2036. external name '93' language builtin;
  2037. create function informix.tan(char(1))
  2038. returns float
  2039. specific ifx_char_tan
  2040. with (class = 'CPU', not variant)
  2041. external name '93' language builtin;
  2042. create function informix.tan(nvarchar(1))
  2043. returns float
  2044. specific ifx_nvarchar_tan
  2045. with (class = 'CPU', not variant)
  2046. external name '93' language builtin;
  2047. create function informix.tan(nchar(1))
  2048. returns float
  2049. specific ifx_nchar_tan
  2050. with (class = 'CPU', not variant)
  2051. external name '93' language builtin;
  2052. create function informix.acos(integer)
  2053. returns float
  2054. specific ifx_integer_acos
  2055. with (class = 'CPU', not variant)
  2056. external name '99' language builtin;
  2057. create function informix.acos(smallint)
  2058. returns float
  2059. specific ifx_smallint_acos
  2060. with (class = 'CPU', not variant)
  2061. external name '99' language builtin;
  2062. create function informix.acos(int8)
  2063. returns float
  2064. specific ifx_int8_acos
  2065. with (class = 'CPU', not variant)
  2066. external name '99' language builtin;
  2067. create function informix.acos(float)
  2068. returns float
  2069. specific ifx_float_acos
  2070. with (class = 'CPU', not variant)
  2071. external name '99' language builtin;
  2072. create function informix.acos(smallfloat)
  2073. returns float
  2074. specific ifx_smallfloat_acos
  2075. with (class = 'CPU', not variant)
  2076. external name '99' language builtin;
  2077. create function informix.acos(decimal)
  2078. returns float
  2079. specific ifx_decimal_acos
  2080. with (class = 'CPU', not variant)
  2081. external name '99' language builtin;
  2082. create function informix.acos(money)
  2083. returns float
  2084. specific ifx_money_acos
  2085. with (class = 'CPU', not variant)
  2086. external name '99' language builtin;
  2087. create function informix.acos(varchar(1))
  2088. returns float
  2089. specific ifx_varchar_acos
  2090. with (class = 'CPU', not variant)
  2091. external name '99' language builtin;
  2092. create function informix.acos(char(1))
  2093. returns float
  2094. specific ifx_char_acos
  2095. with (class = 'CPU', not variant)
  2096. external name '99' language builtin;
  2097. create function informix.acos(nvarchar(1))
  2098. returns float
  2099. specific ifx_nvarchar_acos
  2100. with (class = 'CPU', not variant)
  2101. external name '99' language builtin;
  2102. create function informix.acos(nchar(1))
  2103. returns float
  2104. specific ifx_nchar_acos
  2105. with (class = 'CPU', not variant)
  2106. external name '99' language builtin;
  2107. create function informix.asin(integer)
  2108. returns float
  2109. specific ifx_integer_asin
  2110. with (class = 'CPU', not variant)
  2111. external name '98' language builtin;
  2112. create function informix.asin(smallint)
  2113. returns float
  2114. specific ifx_smallint_asin
  2115. with (class = 'CPU', not variant)
  2116. external name '98' language builtin;
  2117. create function informix.asin(int8)
  2118. returns float
  2119. specific ifx_int8_asin
  2120. with (class = 'CPU', not variant)
  2121. external name '98' language builtin;
  2122. create function informix.asin(float)
  2123. returns float
  2124. specific ifx_float_asin
  2125. with (class = 'CPU', not variant)
  2126. external name '98' language builtin;
  2127. create function informix.asin(smallfloat)
  2128. returns float
  2129. specific ifx_smallfloat_asin
  2130. with (class = 'CPU', not variant)
  2131. external name '98' language builtin;
  2132. create function informix.asin(decimal)
  2133. returns float
  2134. specific ifx_decimal_asin
  2135. with (class = 'CPU', not variant)
  2136. external name '98' language builtin;
  2137. create function informix.asin(money)
  2138. returns float
  2139. specific ifx_money_asin
  2140. with (class = 'CPU', not variant)
  2141. external name '98' language builtin;
  2142. create function informix.asin(varchar(1))
  2143. returns float
  2144. specific ifx_varchar_asin
  2145. with (class = 'CPU', not variant)
  2146. external name '98' language builtin;
  2147. create function informix.asin(char(1))
  2148. returns float
  2149. specific ifx_char_asin
  2150. with (class = 'CPU', not variant)
  2151. external name '98' language builtin;
  2152. create function informix.asin(nvarchar(1))
  2153. returns float
  2154. specific ifx_nvarchar_asin
  2155. with (class = 'CPU', not variant)
  2156. external name '98' language builtin;
  2157. create function informix.asin(nchar(1))
  2158. returns float
  2159. specific ifx_nchar_asin
  2160. with (class = 'CPU', not variant)
  2161. external name '98' language builtin;
  2162. create function informix.atan(integer)
  2163. returns float
  2164. specific ifx_integer_atan
  2165. with (class = 'CPU', not variant)
  2166. external name '94' language builtin;
  2167. create function informix.atan(smallint)
  2168. returns float
  2169. specific ifx_smallint_atan
  2170. with (class = 'CPU', not variant)
  2171. external name '94' language builtin;
  2172. create function informix.atan(int8)
  2173. returns float
  2174. specific ifx_int8_atan
  2175. with (class = 'CPU', not variant)
  2176. external name '94' language builtin;
  2177. create function informix.atan(float)
  2178. returns float
  2179. specific ifx_float_atan
  2180. with (class = 'CPU', not variant)
  2181. external name '94' language builtin;
  2182. create function informix.atan(smallfloat)
  2183. returns float
  2184. specific ifx_smallfloat_atan
  2185. with (class = 'CPU', not variant)
  2186. external name '94' language builtin;
  2187. create function informix.atan(decimal)
  2188. returns float
  2189. specific ifx_decimal_atan
  2190. with (class = 'CPU', not variant)
  2191. external name '94' language builtin;
  2192. create function informix.atan(money)
  2193. returns float
  2194. specific ifx_money_atan
  2195. with (class = 'CPU', not variant)
  2196. external name '94' language builtin;
  2197. create function informix.atan(varchar(1))
  2198. returns float
  2199. specific ifx_varchar_atan
  2200. with (class = 'CPU', not variant)
  2201. external name '94' language builtin;
  2202. create function informix.atan(char(1))
  2203. returns float
  2204. specific ifx_char_atan
  2205. with (class = 'CPU', not variant)
  2206. external name '94' language builtin;
  2207. create function informix.atan(nvarchar(1))
  2208. returns float
  2209. specific ifx_nvarchar_atan
  2210. with (class = 'CPU', not variant)
  2211. external name '94' language builtin;
  2212. create function informix.atan(nchar(1))
  2213. returns float
  2214. specific ifx_nchar_atan
  2215. with (class = 'CPU', not variant)
  2216. external name '94' language builtin;
  2217. create function informix.atan2(integer, float)
  2218. returns float
  2219. specific ifx_integer_atan2
  2220. with (class = 'CPU', not variant)
  2221. external name '95' language builtin;
  2222. create function informix.atan2(smallint, float)
  2223. returns float
  2224. specific ifx_smallint_atan2
  2225. with (class = 'CPU', not variant)
  2226. external name '95' language builtin;
  2227. create function informix.atan2(int8, float)
  2228. returns float
  2229. specific ifx_int8_atan2
  2230. with (class = 'CPU', not variant)
  2231. external name '95' language builtin;
  2232. create function informix.atan2(float, float)
  2233. returns float
  2234. specific ifx_float_atan2
  2235. with (class = 'CPU', not variant)
  2236. external name '95' language builtin;
  2237. create function informix.atan2(smallfloat, float)
  2238. returns float
  2239. specific ifx_smallfloat_atan2
  2240. with (class = 'CPU', not variant)
  2241. external name '95' language builtin;
  2242. create function informix.atan2(decimal, float)
  2243. returns float
  2244. specific ifx_decimal_atan2
  2245. with (class = 'CPU', not variant)
  2246. external name '95' language builtin;
  2247. create function informix.atan2(money, float)
  2248. returns float
  2249. specific ifx_money_atan2
  2250. with (class = 'CPU', not variant)
  2251. external name '95' language builtin;
  2252. create function informix.atan2(varchar(1), float)
  2253. returns float
  2254. specific ifx_varchar_atan2
  2255. with (class = 'CPU', not variant)
  2256. external name '95' language builtin;
  2257. create function informix.atan2(char(1), float)
  2258. returns float
  2259. specific ifx_char_atan2
  2260. with (class = 'CPU', not variant)
  2261. external name '95' language builtin;
  2262. create function informix.atan2(nvarchar(1), float)
  2263. returns float
  2264. specific ifx_nvarchar_atan2
  2265. with (class = 'CPU', not variant)
  2266. external name '95' language builtin;
  2267. create function informix.atan2(nchar(1), float)
  2268. returns float
  2269. specific ifx_nchar_atan2
  2270. with (class = 'CPU', not variant)
  2271. external name '95' language builtin;
  2272. create function informix.length(varchar(1))
  2273. returns int
  2274. specific ifx_varchar_length
  2275. with (class = 'CPU', not variant)
  2276. external name '16' language builtin;
  2277. create function informix.length(char(1))
  2278. returns int
  2279. specific ifx_char_length
  2280. with (class = 'CPU', not variant)
  2281. external name '16' language builtin;
  2282. create function informix.length(nvarchar(1))
  2283. returns int
  2284. specific ifx_nvarchar_length
  2285. with (class = 'CPU', not variant)
  2286. external name '16' language builtin;
  2287. create function informix.length(nchar(1))
  2288. returns int
  2289. specific ifx_nchar_length
  2290. with (class = 'CPU', not variant)
  2291. external name '16' language builtin;
  2292. create function informix.length(references byte)
  2293. returns int
  2294. specific ifx_bytes_length
  2295. with (class = 'CPU', not variant)
  2296. external name '16' language builtin;
  2297. create function informix.length(references text)
  2298. returns int
  2299. specific ifx_text_length
  2300. with (class = 'CPU', not variant)
  2301. external name '16' language builtin;
  2302. create function informix.octet_length(varchar(1))
  2303. returns int
  2304. specific ifx_varchar_octet_length
  2305. with (class = 'CPU', not variant)
  2306. external name '74' language builtin;
  2307. create function informix.octet_length(char(1))
  2308. returns int
  2309. specific ifx_char_octet_length
  2310. with (class = 'CPU', not variant)
  2311. external name '74' language builtin;
  2312. create function informix.octet_length(nvarchar(1))
  2313. returns int
  2314. specific ifx_nvarchar_octet_length
  2315. with (class = 'CPU', not variant)
  2316. external name '74' language builtin;
  2317. create function informix.octet_length(nchar(1))
  2318. returns int
  2319. specific ifx_nchar_octet_length
  2320. with (class = 'CPU', not variant)
  2321. external name '74' language builtin;
  2322. create function informix.octet_length(references byte)
  2323. returns int
  2324. specific ifx_bytes_octet_length
  2325. with (class = 'CPU', not variant)
  2326. external name '74' language builtin;
  2327. create function informix.octet_length(references text)
  2328. returns int
  2329. specific ifx_text_octet_length
  2330. with (class = 'CPU', not variant)
  2331. external name '74' language builtin;
  2332. create function informix.char_length(varchar(1))
  2333. returns int
  2334. specific ifx_varchar_char_length
  2335. with (class = 'CPU', not variant)
  2336. external name '75' language builtin;
  2337. create function informix.char_length(char(1))
  2338. returns int
  2339. specific ifx_char_char_length
  2340. with (class = 'CPU', not variant)
  2341. external name '75' language builtin;
  2342. create function informix.char_length(nvarchar(1))
  2343. returns int
  2344. specific ifx_nvarchar_char_length
  2345. with (class = 'CPU', not variant)
  2346. external name '75' language builtin;
  2347. create function informix.char_length(nchar(1))
  2348. returns int
  2349. specific ifx_nchar_char_length
  2350. with (class = 'CPU', not variant)
  2351. external name '75' language builtin;
  2352. create function informix.char_length(references byte)
  2353. returns int
  2354. specific ifx_bytes_char_length
  2355. with (class = 'CPU', not variant)
  2356. external name '75' language builtin;
  2357. create function informix.char_length(references text)
  2358. returns int
  2359. specific ifx_text_char_length
  2360. with (class = 'CPU', not variant)
  2361. external name '75' language builtin;
  2362. create function informix.character_length(varchar(1))
  2363. returns int
  2364. specific ifx_varchar_character_length
  2365. with (class = 'CPU', not variant)
  2366. external name '75' language builtin;
  2367. create function informix.character_length(char(1))
  2368. returns int
  2369. specific ifx_char_character_length
  2370. with (class = 'CPU', not variant)
  2371. external name '75' language builtin;
  2372. create function informix.character_length(nvarchar(1))
  2373. returns int
  2374. specific ifx_nvarchar_character_length
  2375. with (class = 'CPU', not variant)
  2376. external name '75' language builtin;
  2377. create function informix.character_length(nchar(1))
  2378. returns int
  2379. specific ifx_nchar_character_length
  2380. with (class = 'CPU', not variant)
  2381. external name '75' language builtin;
  2382. create function informix.character_length(references byte)
  2383. returns int
  2384. specific ifx_bytes_character_length
  2385. with (class = 'CPU', not variant)
  2386. external name '75' language builtin;
  2387. create function informix.character_length(references text)
  2388. returns int
  2389. specific ifx_text_character_length
  2390. with (class = 'CPU', not variant)
  2391. external name '75' language builtin;
  2392. { executing this procedure will allow you to have a newline character in }
  2393. { the string as in "insert into tab values ("line ends here^M new line"); }
  2394. create procedure informix.ifx_allow_newline (informix.boolean);
  2395. external name '' language C
  2396. end procedure;
  2397. create function informix.mi_get_typedesc(int,int)
  2398. returns informix.lvarchar
  2399. external name '(mife_type_typedesc)'
  2400. language C;
  2401. create function informix.mi_get_typedesc(informix.lvarchar)
  2402. returns informix.lvarchar
  2403. external name '(mife_describe_typestring)'
  2404. language C;
  2405. create function informix.reload_module(varchar(255), varchar(255))
  2406. returns int
  2407. external name '' language C;
  2408. create procedure informix.ifx_load_module (modulename varchar(255),
  2409. languagename varchar(255)) returns int
  2410. define retvalue int;
  2411. let retvalue = reload_module(modulename, languagename);
  2412. if retvalue = 0 then
  2413. return 0;
  2414. else
  2415. raise exception -9720;
  2416. end if;
  2417. end procedure;
  2418. create function informix.ifx_invalid_module(varchar(255), varchar(255))
  2419. returns int
  2420. external name '' language C;
  2421. create function informix.ifx_new_external(varchar(255), varchar(255),
  2422. varchar(255))
  2423. returns informix.lvarchar
  2424. external name '' language C;
  2425. create function informix.ifx_match_external(varchar(255), varchar(255))
  2426. returns int
  2427. external name '' language C;
  2428. create function informix.ifx_load_internal(varchar(255), varchar(255))
  2429. returns int
  2430. external name '' language C;
  2431. create procedure informix.ifx_replace_module (oldmodulename varchar(255),
  2432. newmodulename varchar(255),
  2433. languagename varchar(255)) returns int
  2434. define retvalue int;
  2435. let retvalue = ifx_invalid_module(oldmodulename,
  2436. languagename);
  2437. if retvalue = 0 then
  2438. update informix.sysprocedures
  2439. set externalname = ifx_new_external(newmodulename, externalname,
  2440. languagename)
  2441. where ifx_match_external(oldmodulename, externalname) = 1;
  2442. let retvalue = ifx_load_internal(newmodulename, languagename);
  2443. end if;
  2444. if retvalue = 0 then
  2445. return 0;
  2446. else
  2447. raise exception -9720;
  2448. end if;
  2449. end procedure;
  2450. -- Add sysindexes view during database construction,
  2451. -- after we have added the type indexkeyarray
  2452. create view informix.sysindexes
  2453. (idxname, owner, tabid, idxtype, clustered,
  2454. part1, part2, part3, part4, part5, part6, part7, part8,
  2455. part9, part10, part11, part12, part13, part14, part15, part16,
  2456. levels, leaves, nunique, clust)
  2457. as select
  2458. idxname, owner, tabid, idxtype, clustered,
  2459. informix.ikeyextractcolno(indexkeys,0),
  2460. informix.ikeyextractcolno(indexkeys,1),
  2461. informix.ikeyextractcolno(indexkeys,2),
  2462. informix.ikeyextractcolno(indexkeys,3),
  2463. informix.ikeyextractcolno(indexkeys,4),
  2464. informix.ikeyextractcolno(indexkeys,5),
  2465. informix.ikeyextractcolno(indexkeys,6),
  2466. informix.ikeyextractcolno(indexkeys,7),
  2467. informix.ikeyextractcolno(indexkeys,8),
  2468. informix.ikeyextractcolno(indexkeys,9),
  2469. informix.ikeyextractcolno(indexkeys,10),
  2470. informix.ikeyextractcolno(indexkeys,11),
  2471. informix.ikeyextractcolno(indexkeys,12),
  2472. informix.ikeyextractcolno(indexkeys,13),
  2473. informix.ikeyextractcolno(indexkeys,14),
  2474. informix.ikeyextractcolno(indexkeys,15),
  2475. levels, leaves, nunique, clust
  2476. from informix.sysindices;
  2477. grant select on informix.sysindexes to public as informix;
  2478. -- Define rtree access method:
  2479. create function informix.rlt_create(pointer)
  2480. returns int
  2481. external name '(rlt_create)'
  2482. language C;
  2483. create function informix.rlt_drop(pointer)
  2484. returns int
  2485. external name '(rlt_drop)'
  2486. language C;
  2487. create function informix.rlt_open(pointer)
  2488. returns int
  2489. external name '(rlt_open)'
  2490. language C;
  2491. create function informix.rlt_close(pointer)
  2492. returns int
  2493. external name '(rlt_close)'
  2494. language C;
  2495. create function informix.rlt_insert(pointer, pointer, pointer)
  2496. returns int
  2497. external name '(rlt_insert)'
  2498. language C;
  2499. create function informix.rlt_delete(pointer, pointer, pointer)
  2500. returns int
  2501. external name '(rlt_delete)'
  2502. language C;
  2503. create function informix.rlt_update(pointer, pointer, pointer,
  2504. pointer, pointer)
  2505. returns int
  2506. external name '(rlt_update)'
  2507. language C;
  2508. create function informix.rlt_beginscan(pointer)
  2509. returns int
  2510. external name '(rlt_beginscan)'
  2511. language C;
  2512. create function informix.rlt_endscan(pointer)
  2513. returns int
  2514. external name '(rlt_endscan)'
  2515. language C;
  2516. create function informix.rlt_rescan(pointer)
  2517. returns int
  2518. external name '(rlt_rescan)'
  2519. language C;
  2520. create function informix.rlt_getnext(pointer, pointer, pointer)
  2521. returns int
  2522. external name '(rlt_getnext)'
  2523. language C;
  2524. create secondary access_method informix.rtree (
  2525. am_create = informix.rlt_create,
  2526. am_drop = informix.rlt_drop,
  2527. am_open = informix.rlt_open,
  2528. am_close = informix.rlt_close,
  2529. am_insert = informix.rlt_insert,
  2530. am_delete = informix.rlt_delete,
  2531. am_update = informix.rlt_update,
  2532. am_beginscan = informix.rlt_beginscan,
  2533. am_endscan = informix.rlt_endscan,
  2534. am_rescan = informix.rlt_rescan,
  2535. am_getnext = informix.rlt_getnext,
  2536. am_sptype = 'D');
  2537. -- Default opclass for rtrees: rtree_ops
  2538. create opclass informix.rtree_ops for informix.rtree
  2539. strategies (overlap, equal, contains, within)
  2540. support (union, size, inter, hilbert);
  2541. alter access_method informix.rtree add am_defopclass = informix.rtree_ops;
  2542. -- lvarchar support functions.
  2543. create function informix.equal(informix.lvarchar, informix.lvarchar)
  2544. returns informix.boolean
  2545. with (commutator = equal, negator = notequal, class = 'CPU',
  2546. not variant)
  2547. external name '(lvarchar_equal)' language C;
  2548. create function informix.notequal(informix.lvarchar, informix.lvarchar)
  2549. returns informix.boolean
  2550. with (commutator = notequal, negator = equal, class = 'CPU',
  2551. not variant)
  2552. external name '(lvarchar_notequal)' language C;
  2553. create function informix.greaterthan(informix.lvarchar, informix.lvarchar)
  2554. returns informix.boolean
  2555. with (negator = lessthanorequal, class = 'CPU', not variant)
  2556. external name '(lvarchar_greaterthan)' language C;
  2557. create function informix.lessthan(informix.lvarchar, informix.lvarchar)
  2558. returns informix.boolean
  2559. with (negator = greaterthanorequal, class = 'CPU', not variant)
  2560. external name '(lvarchar_lessthan)' language C;
  2561. create function informix.greaterthanorequal(informix.lvarchar, informix.lvarchar)
  2562. returns informix.boolean
  2563. with (negator = lessthan, class = 'CPU', not variant)
  2564. external name '(lvarchar_gte)' language C;
  2565. create function informix.lessthanorequal(informix.lvarchar, informix.lvarchar)
  2566. returns informix.boolean
  2567. with (negator = greaterthan, class = 'CPU', not variant)
  2568. external name '(lvarchar_lte)' language C;
  2569. create function informix.compare(informix.lvarchar, informix.lvarchar)
  2570. returns integer
  2571. external name '(lvarchar_compare)'
  2572. language C not variant;
  2573. { these functions are created to extract type information for triggers }
  2574. create function informix.trigger_cols(int)
  2575. returns informix.lvarchar
  2576. external name ''
  2577. language C;
  2578. create procedure informix.ifx_trigger_cols(trigid int)
  2579. returns informix.lvarchar
  2580. return (informix.trigger_cols(trigid));
  2581. end procedure;
  2582. create function informix.trigger_action (int, int)
  2583. returns informix.lvarchar
  2584. external name ''
  2585. language C;
  2586. create procedure informix.ifx_trigger_action(trigid int, when CHAR(10))
  2587. returns informix.lvarchar;
  2588. define cleanwhen char(10);
  2589. define intwhen int;
  2590. let cleanwhen = trim (BOTH FROM when);
  2591. if (cleanwhen = 'BEFORE' or cleanwhen = 'before') then
  2592. let intwhen = 1;
  2593. elif (cleanwhen = 'ROW' or cleanwhen = 'row') then
  2594. let intwhen = 2;
  2595. elif (cleanwhen = 'AFTER' or cleanwhen = 'after') then
  2596. let intwhen = 3;
  2597. else
  2598. return NULL;
  2599. end if;
  2600. return (informix.trigger_action(trigid, intwhen));
  2601. end procedure;