Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Смена типа данных домена
|
|||
|---|---|---|---|
|
#18+
Есть у кого-нибудь еще мнения, почему не конвертируются данные между типами данных? Или как можно их привести в итоге к numeric... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2015, 09:10 |
|
||
|
Смена типа данных домена
|
|||
|---|---|---|---|
|
#18+
Freddie26поля создал не в 3-м диалекте SET SQL DIALECT 3; эта команда не меняет диалекта базы. Диалект базы можно назначить только командой create database Т.е. базу надо создать в нужном диалекте, далее подключаться в нужном же диалекте (как минимум не мешать в этом серверу, он и сам неплохо разбирается с каким диалектом подключиться, если оный не указывать при коннекте) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2015, 09:21 |
|
||
|
Смена типа данных домена
|
|||
|---|---|---|---|
|
#18+
Ivan_Pisarevsky, Как я уже писал... диалект в БД в таблице RDB$DATABASE = 3. При подключении я не указываю диалект, т.к. то ли этого нет в моей версии IBExpert, то ли я попросту не знаю где именно его надо указать. Значит по умолчанию у меня должен быть с Ваших слов третий диалект... Вроде бы все верно... Если мне не верите, скажите что сделать чтобы предоставить вам достоверную информацию (логи, метаданные БД или что еще). А SET SQL DIALECT 3; я указывал чтобы наверняка задать третий диалект, в любом случае хуже от этого быть не должно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2015, 10:00 |
|
||
|
Смена типа данных домена
|
|||
|---|---|---|---|
|
#18+
Freddie26Как я уже писал... диалект в БД в таблице RDB$DATABASE = 3Вот тут давай подробнее. Начни с вывода содержимого RDB$DATABASE. Продолжи тем, как ты там нашёл диалект. И закончи показом gstat -h. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2015, 10:07 |
|
||
|
Смена типа данных домена
|
|||
|---|---|---|---|
|
#18+
hvlad, Прошу прощения - MON$DATABASE, а не RDB$DATABASE. Database "C:\Database\MYBASE.FDB" Database header page information: Flags 0 Checksum 12345 Generation 6615 Page size 16384 ODS version 11.2 Oldest transaction 6573 Oldest active 6574 Oldest snapshot 6574 Next transaction 6607 Bumped transaction 1 Sequence number 0 Next attachment ID 4 Implementation ID 26 Shadow count 0 Page buffers 0 Next header page 0 Database dialect 3 Creation date Apr 3, 2015 15:46:57 Attributes force write Variable header data: Sweep interval: 0 *END* ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2015, 10:30 |
|
||
|
Смена типа данных домена
|
|||
|---|---|---|---|
|
#18+
Freddie26, ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2015, 10:45 |
|
||
|
Смена типа данных домена
|
|||
|---|---|---|---|
|
#18+
Freddie26, проверь в sql editor, сколько будет select 1/3 from rdb$database или select 22/7 from rdb$database ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2015, 10:55 |
|
||
|
Смена типа данных домена
|
|||
|---|---|---|---|
|
#18+
Симонов Денис, Если галочка "использовать масштаб поля" должна стоять, то она у меня и так стоит... kdv, select 1/3 from rdb$database - возвращает 0 select 22/7 from rdb$database - возвращает 3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2015, 15:09 |
|
||
|
Смена типа данных домена
|
|||
|---|---|---|---|
|
#18+
Freddie26, а ну ка покажи DDL той таблицы в которую ты новый филд добавил и нового домена. Чувствую что-то тут не то. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2015, 15:23 |
|
||
|
Смена типа данных домена
|
|||
|---|---|---|---|
|
#18+
Симонов Денис, Я так понимаю нужны запросы на создание домена и любой таблицы... Вытаскиваю из IBExpert'a как есть. Код: plsql 1. 2. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2015, 15:40 |
|
||
|
Смена типа данных домена
|
|||
|---|---|---|---|
|
#18+
Симонов Денис, или вот более удачная таблица с данными и снимком того, что я вижу вместо нужного формата данных. картинка: запрос на создание таблицы (домен тот же): Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. 206. 207. 208. 209. 210. 211. 212. 213. 214. 215. 216. 217. 218. 219. 220. 221. 222. 223. 224. 225. 226. 227. 228. 229. 230. 231. 232. 233. 234. 235. 236. 237. 238. 239. 240. 241. 242. 243. 244. 245. 246. 247. 248. 249. 250. 251. Думаю тут прекрасно видно, что что-то не так... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2015, 15:48 |
|
||
|
Смена типа данных домена
|
|||
|---|---|---|---|
|
#18+
Freddie26, что даёт вот такой запрос Код: sql 1. 2. лишние знаки есть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2015, 15:51 |
|
||
|
Смена типа данных домена
|
|||
|---|---|---|---|
|
#18+
Симонов Денисчто даёт вот такой запрос Лучше вот такой: Код: sql 1. 2. 3. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2015, 15:55 |
|
||
|
Смена типа данных домена
|
|||
|---|---|---|---|
|
#18+
Симонов Денис, Данных в этой таблице нет. В другой таблице (с данными) выполняю запрос: Код: plsql 1. 2. Результат: ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2015, 15:56 |
|
||
|
Смена типа данных домена
|
|||
|---|---|---|---|
|
#18+
Freddie26В виде строки выводит без погрешностей, приведение к numeric не помогает :) Отсюда вывод: ты совершенно зря вскипел на слове "врёшь" и проигнорировал вторую часть предложения о баге в IBExpert. Выкинь эту каку и будет тебе счастье. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2015, 16:05 |
|
||
|
Смена типа данных домена
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, Я не проигнорировал, просто не знал как доказать, что это баг. И в чем собственно заключается сам баг? Я вижу, что в строку кастит из numeric нормально. Но откуда он берет погрешность при касте в numeric? Если это просто баг отображения, то на сколько я понимаю проблем быть не должно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2015, 16:15 |
|
||
|
Смена типа данных домена
|
|||
|---|---|---|---|
|
#18+
Freddie26И в чем собственно заключается сам баг? В том, что для работы с NUMERIC используется метод TField.AsFloat внутри которого значение приводится к double и тем теряет точность. Если бы использовалось прямое преобразование в строку, ошибка не возникала бы. Такой вот баг, характерный для всех наследников FIBC, наследие рукожопа, который проектировал DB VCL. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2015, 16:25 |
|
||
|
Смена типа данных домена
|
|||
|---|---|---|---|
|
#18+
Собрал тестовый проект в Delphi, подключил эту БД в дизайнере, выполнил запрос: по факту данные хранятся в numeric и погрешности нет. Вопрос со сменой домена отпадает. Останется разобраться с ошибкой "Arithmetic exception, numeric overflow, or string truncation", но на сколько я понимаю тут проблем быть уже не должно. Всем большое спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.04.2015, 17:05 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=38928155&tid=1562933]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
187ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
55ms |
get tp. blocked users: |
1ms |
| others: | 293ms |
| total: | 579ms |

| 0 / 0 |
