dbdemo_ids.cmd 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341
  1. @echo off
  2. rem **************************************************************************/
  3. rem * */
  4. rem * Licensed Materials - Property of IBM */
  5. rem * */
  6. rem * "Restricted Materials of IBM" */
  7. rem * */
  8. rem * IBM Informix Dynamic Server */
  9. rem * Copyright IBM Corporation 2007, 2014 */
  10. rem * */
  11. rem **************************************************************************/
  12. if %1test==/?test goto usage
  13. if %1test==--test goto usage
  14. if %1test==-?test goto usage
  15. if %1test==-helptest goto usage
  16. if "%INFORMIXDIR%notset" == "notset" goto error_infxdir
  17. if "%INFORMIXSERVER%notset" == "notset" goto error_infxserver
  18. if not exist %INFORMIXDIR%\demo\dbaccess\demo_ids goto error_demodir
  19. set CLIENT_LOCALE_SAV=%CLIENT_LOCALE%
  20. set GL_DATE_SAV=%GL_DATE%
  21. set DBMONEY_SAV=%DBMONEY%
  22. set CREATE_SAV=%CREATE%
  23. set DB_SAV=%DB%
  24. set IN_SAV=%IN%
  25. set NOTS=0
  26. set DBSPACE_SAV=%DBSPACE%
  27. set WLOG_SAV=%WLOG%
  28. set GL_DATE=%%m/%%d/%%Y
  29. set DBMONEY=$.
  30. set CREATE=CREATE DATABASE
  31. set CREATECONTAINER=
  32. set DB=stores_demo
  33. set IN=
  34. set DBSPACE=
  35. set WLOG=
  36. REM evaluate command line arguments
  37. if %1test==test goto startdb
  38. if %1test==-notstest goto nots1
  39. if %1test==-logtest goto log1
  40. if %1test==-dbspacetest goto dbspace1
  41. set DB=%1
  42. goto test2
  43. :nots1
  44. set nots=1
  45. goto test2
  46. :log1
  47. set WLOG=WITH LOG
  48. goto test2
  49. :dbspace1
  50. set IN=in
  51. set DBSPACE=%2
  52. :test2
  53. if %2test==test goto startdb
  54. if %2test==-notstest goto nots2
  55. if %2test==-logtest goto log2
  56. if %2test==-dbspacetest goto dbspace2
  57. if NOT %1test==-dbspacetest SET DB=%2
  58. goto test3
  59. :nots2
  60. set nots=1
  61. goto test3
  62. :log2
  63. set WLOG=WITH LOG
  64. goto test3
  65. :dbspace2
  66. set IN=in
  67. set DBSPACE=%3
  68. :test3
  69. if %3test==test goto startdb
  70. if %3test==-notstest goto nots3
  71. if %3test==-logtest goto log3
  72. if %3test==-dbspacetest goto dbspace3
  73. if NOT %2test==-dbspacetest SET DB=%3
  74. goto test4
  75. :nots3
  76. set nots=1
  77. goto test4
  78. :log3
  79. set WLOG=WITH LOG
  80. goto test4
  81. :dbspace3
  82. set IN=in
  83. set DBSPACE=%4
  84. :test4
  85. if %4test==test goto startdb
  86. if %4test==-notstest goto nots4
  87. if %4test==-logtest goto log4
  88. if %4test==-dbspacetest goto dbspace4
  89. if NOT %3test==-dbspacetest SET DB=%4
  90. goto test5
  91. :nots4
  92. set nots=1
  93. goto test5
  94. :log4
  95. set WLOG=WITH LOG
  96. goto test5
  97. :dbspace4
  98. set IN=in
  99. set DBSPACE=%5
  100. :test5
  101. if %5test==test goto startdb
  102. if %5test==-notstest goto nots5
  103. if %5test==-logtest goto log5
  104. if NOT %4test==-dbspacetest SET DB=%5
  105. goto startdb:
  106. :nots5
  107. set nots=1
  108. goto startdb
  109. :log5
  110. set WLOG=WITH LOG
  111. :startdb
  112. REM cd %INFORMIXDIR%\demo\dbaccess\demo_ids
  113. call %INFORMIXDIR%\%INFORMIXSERVER%.cmd
  114. if /i "%DB_LOCALE%notset" == "notset" set DB_LOCALE=EN_US.8859-1
  115. if /i "%DB_LOCALE%" == "EN_US.C" set DB_LOCALE=EN_US.8859-1
  116. if /i "%DB_LOCALE%" == "EN_US.POSIX" set DB_LOCALE=EN_US.8859-1
  117. if /i "%DB_LOCALE%" == "EN_US.Latin-1" set DB_LOCALE=EN_US.8859-1
  118. if /i "%DB_LOCALE%" == "EN_US.819" set DB_LOCALE=EN_US.8859-1
  119. if /i not "%DB_LOCALE%" == "EN_US.8859-1" echo Setting DB_LOCALE to EN_US.8859-1
  120. set DB_LOCALE=EN_US.8859-1
  121. set CLIENT_LOCALE=EN_US.CP1252
  122. pushd %INFORMIXDIR%\demo\dbaccess\demo_ids
  123. REM drop the existing %DB% database
  124. echo Dropping existing %DB% database...
  125. echo DROP DATABASE %DB% | dbaccess -
  126. if /i "%nots%" == "0" (
  127. if /i "%WLOG%test" == "test" set WLOG=WITH BUFFERED LOG)
  128. REM create the database
  129. echo Creating %DB% database...
  130. echo %CREATE% %DB% %IN% %DBSPACE% %WLOG% | dbaccess -
  131. if not errorlevel 0 goto error_cdb
  132. REM create external table
  133. echo preparing external table command...
  134. echo create external table ext_customer sameas customer > %INFORMIXDIR%\demo\dbaccess\demo_ids\c_ext_table.sql
  135. echo using (datafiles ('disk:%INFORMIXDIR%\demo\dbaccess\demo_ids\ext_customer.unl'), >> %INFORMIXDIR%\demo\dbaccess\demo_ids\c_ext_table.sql
  136. echo numrows 3 >> %INFORMIXDIR%\demo\dbaccess\demo_ids\c_ext_table.sql
  137. echo ); >> %INFORMIXDIR%\demo\dbaccess\demo_ids\c_ext_table.sql
  138. REM create the tables
  139. echo Creating tables...
  140. dbaccess %DB% %INFORMIXDIR%\demo\dbaccess\demo_ids\c_tables.sql
  141. if not errorlevel 0 goto error_ctables
  142. if %nots% == 0 (
  143. dbaccess %DB% %INFORMIXDIR%\demo\dbaccess\demo_ids\c_meter.sql
  144. if not errorlevel 0 goto error_ctables)
  145. REM Create the container and virtual tables
  146. if /i "%nots%" == "1" goto continue1
  147. if /i %DBSPACE%test == test set DBSPACE=rootdbs
  148. set CREATECONTAINER= '%DBSPACE%', 'meter_data', 100, 50^)
  149. echo ^
  150. EXECUTE PROCEDURE TSContainerCreate('raw_container', %CREATECONTAINER% ; ^
  151. EXECUTE PROCEDURE TSContainerCreate('mult_container', %CREATECONTAINER% ; ^
  152. EXECUTE PROCEDURE TSCreateVirtualTab('ts_data_v', 'ts_data', ^
  153. 'origin(2010-11-10 00:00:00.00000),calendar(cal15min),container(raw_container),threshold(0),regular', 0, 'raw_reads'); ^
  154. EXECUTE PROCEDURE TSCreateVirtualTab('ts_data_multiplier_v', 'ts_data', ^
  155. 'origin(2010-11-10 00:00:00.00000),calendar(cal15min),container(mult_container),threshold(0),irregular', 0, 'multiplier'); ^
  156. | dbaccess %DB%
  157. :continue1
  158. REM create external table
  159. echo Creating external table...
  160. dbaccess %DB% %INFORMIXDIR%\demo\dbaccess\demo_ids\c_ext_table.sql
  161. if not errorlevel 0 goto error_ctables
  162. REM load data
  163. echo Loading data...
  164. dbaccess %DB% %INFORMIXDIR%\demo\dbaccess\demo_ids\c_load.sql
  165. if not errorlevel 0 goto error_load
  166. if %nots% == 0 echo ^
  167. CREATE TABLE ts_data_location ( ^
  168. loc_esi_id char(20) NOT NULL PRIMARY KEY, ^
  169. longlat st_point ^
  170. ) LOCK MODE ROW; ^
  171. LOAD FROM '%INFORMIXDIR%\demo\dbaccess\demo_ids\ts_data.unl' ^
  172. INSERT INTO ts_data; ^
  173. LOAD FROM '%INFORMIXDIR%\demo\dbaccess\demo_ids\ts_data_location.unl' ^
  174. INSERT INTO ts_data_location; ^
  175. LOAD FROM '%INFORMIXDIR%\demo\dbaccess\demo_ids\customer_ts_data.unl' ^
  176. INSERT INTO customer_ts_data; ^
  177. CREATE INDEX ts_data_location_spix ^
  178. ON ts_data_location(longlat ST_Geometry_ops) USING RTREE; ^
  179. | dbaccess %DB%
  180. if not errorlevel 0 goto error_load
  181. rem Final data to load..
  182. rem
  183. echo set lock mode to wait; > %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  184. echo update statistics; >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  185. echo. >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  186. echo grant resource to public; >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  187. echo. >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  188. echo execute procedure ifx_allow_newline('t'); >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  189. echo. >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  190. echo CREATE TABLE tab (col2 lvarchar); >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  191. echo. >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  192. echo INSERT INTO tab VALUES ('^<personnel^>^<person id="Jason.Ma"^>^<name^>^<family^>Ma^</family^>^<given^>Jason^</given^>^</name^>^</person^>^</personnel^>'); >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  193. echo CREATE TABLE warehouses ( >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  194. echo warehouse_name lvarchar, >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  195. echo warehouse_id int, >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  196. echo warehouse_spec lvarchar >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  197. echo ); >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  198. echo. >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  199. echo INSERT INTO warehouses values('Liverpool, England', 1, >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  200. echo '^<?xml version="1.0" encoding="iso-8859-1"?^> >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  201. echo. >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  202. echo ^<!-- @version: --^> >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  203. echo. >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  204. echo ^<Warehouse^> >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  205. echo ^<Docks^>2^</Docks^> >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  206. echo ^</Warehouse^>' >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  207. echo ); >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  208. echo INSERT INTO warehouses values('Taipei, Taiwan', 2, >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  209. echo '^<?xml version="1.0" encoding="iso-8859-1"?^> >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  210. echo. >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  211. echo ^<!-- @version: --^> >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  212. echo. >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  213. echo ^<Warehouse^> >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  214. echo ^<Docks^>1^</Docks^> >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  215. echo ^</Warehouse^>' >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  216. echo ); >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  217. echo INSERT INTO warehouses values('Buenos Aires, Argentina', 3, >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  218. echo '^<?xml version="1.0" encoding="iso-8859-1"?^> >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  219. echo. >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  220. echo ^<!-- @version: --^> >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  221. echo. >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  222. echo ^<Warehouse^> >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  223. echo ^<Docks^>4^</Docks^> >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  224. echo ^</Warehouse^>' >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  225. echo ); >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  226. echo INSERT INTO warehouses values('Seattle, USA', 4, >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  227. echo '^<?xml version="1.0" encoding="iso-8859-1"?^> >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  228. echo. >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  229. echo ^<!-- @version: --^> >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  230. echo. >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  231. echo ^<Warehouse^> >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  232. echo ^<Docks^>3^</Docks^> >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  233. echo ^</Warehouse^>' >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  234. echo ); >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  235. echo create table classes(classid int, class int, subject char(32)); >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  236. echo insert into classes values(1, 125, 'Chemistry'); >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  237. echo insert into classes values(2, 250, 'Physics'); >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  238. echo insert into classes values(3, 375, 'Mathematics'); >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  239. echo insert into classes values(4, 500, 'Biology'); >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  240. echo create ROW TYPE address_t (address1 char(64), city char(32), state char(32), zipcode int); >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  241. echo create table employee(givenname char(32), familyname char(32), address address_t, phone char(32)); >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  242. echo insert into employee values('Roy', 'Conner', ROW('123, First street', 'Denver', 'CO', 80111)::address_t, '303-555-1212'); >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  243. echo update statistics; >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  244. echo. >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  245. echo grant resource to public; >> %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  246. dbaccess %DB% %TEMP%\c_tabxml_%INFORMIXSERVER%.sql
  247. if not errorlevel 0 goto error_load
  248. goto SUCCESS
  249. :usage
  250. echo "Usage: dbaccessdemo [-nots] [-log] [-dbspace <dbspace name>] [<database name>]"
  251. goto end
  252. :error_infxdir
  253. echo INFORMIXDIR environment variable not set.
  254. goto end
  255. :error_infxserver
  256. echo INFORMIXSERVER environment variable not set
  257. goto end
  258. :error_cdb
  259. echo Database creation failed.
  260. goto end
  261. :error_ctables
  262. echo Tables creation failed.
  263. goto end
  264. :error_load
  265. echo Load data failed.
  266. goto end
  267. :error_demodir
  268. echo Directory %INFORMIXDIR%\demo\dbaccess\demo_ids not found.
  269. goto end
  270. :SUCCESS
  271. echo The %DB% database created successfully.
  272. echo The demo files can be found in %INFORMIXDIR%\demo\dbaccess\demo_ids
  273. :end
  274. set GL_DATE=%GL_DATE_SAV%
  275. set DBMONEY=%DBMONEY_SAV%
  276. set CREATE=%CREATE_SAV%
  277. set DB=%DB_SAV%
  278. set IN=%IN_SAV%
  279. set DBSPACE=%DBSPACE_SAV%
  280. set WLOG=%WLOG_SAV%
  281. set CLIENT_LOCALE=%CLIENT_LOCALE_SAV%
  282. set GL_DATE_SAV=
  283. set DBMONEY_SAV=
  284. set CREATE_SAV=
  285. set DB_SAV=
  286. set IN_SAV=
  287. set DBSPACE_SAV=
  288. set WLOG_SAV=
  289. set CLIENT_LOCALE_SAV=
  290. echo.
  291. popd