|
sqlite3. База данных
|
|||
---|---|---|---|
#18+
Спроектировал базу данных. Сформировал ее в sqlite3 Помогите разобраться почему не работают связи и каскадное удаление. В чем ошибка? Имеем 3 таблицы: tab1: Название дисциплины(*), Название области знания tab2: ФИО автора учебника(*), Название книги, Издательство, Год tab3: ФИО автора учебника, Название дисциплины, Количество экземпляров, Заключение (ФИО автора и название дисциплины - внешние ключи ) SQL-скрипт формирования базы данных: Код: sql 1. 2. 3. 4. 5. 6.
Модератор: Тема перенесена из форума "MySQL". ... |
|||
:
Нравится:
Не нравится:
|
|||
20.04.2015, 12:37 |
|
sqlite3. База данных
|
|||
---|---|---|---|
#18+
Может быть поэтому : Assuming the library is compiled with foreign key constraints enabled, it must still be enabled by the application at runtime, using the PRAGMA foreign_keys command. For example: sqlite> PRAGMA foreign_keys = ON; Foreign key constraints are disabled by default (for backwards compatibility), so must be enabled separately for each database connection. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.04.2015, 13:40 |
|
sqlite3. База данных
|
|||
---|---|---|---|
#18+
я вводил эту команду перед созданием таблиц. Я думаю дело в самом заполнении... ... |
|||
:
Нравится:
Не нравится:
|
|||
20.04.2015, 14:52 |
|
sqlite3. База данных
|
|||
---|---|---|---|
#18+
Это надо вводить и перед созданием таблиц и при любой работе с базой. Т.е. если ты просто откроешь базу и удалишь что-то из главной таблицы (без PRAGMA foreign_keys = ON), то в подчинённых таблицах контроль целостности внешнего ключа не отработает. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.04.2015, 15:01 |
|
sqlite3. База данных
|
|||
---|---|---|---|
#18+
я не закрывал базу. ввел команду и все равно не работают каскады. Посмотрите, пожалуйста,заполнение таблиц, мне, кажется, это в нем дело. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.04.2015, 15:46 |
|
sqlite3. База данных
|
|||
---|---|---|---|
#18+
А вот у меня всё работает. Тест на мёртвом языке. Библиотеку сам не перестраивал, взял бинарник на sqlite.org. Использовал свою минимальную обёртку над чистым API (в основном для приведения типа). Если API возвращает что-либо кроме SQLITE_OK - в обёртке тут же возбуждается исключение. Т.е. проход до последнего ShowMessage гарантирует, что БД всё съела и не подавилась. наколеношный тест внешнего ключа tab3->tab1 Код: pascal 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
20.04.2015, 15:54 |
|
sqlite3. База данных
|
|||
---|---|---|---|
#18+
* кроме SQLITE_OK и SQLITE_DONE, если быть точным Тест tab2 -> tab3 делается заменой tab1 на tab2 в предпоследнем prepare. Он, разумеется, тоже завершается успешно. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.04.2015, 16:01 |
|
sqlite3. База данных
|
|||
---|---|---|---|
#18+
Версия моего sqlite3 3.6.11 Возможно что проблемы связаны с этим? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2015, 03:20 |
|
sqlite3. База данных
|
|||
---|---|---|---|
#18+
Забавно, но по ходу может) В списке изменений утверждается, что " Added support for foreign key constraints " только начиная с 3.6.19. Это можно проверить - взять, например, свежую версию библиотеки и подсунуть в проект. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2015, 04:19 |
|
|
start [/forum/topic.php?fid=54&fpage=10&tid=2008686]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
27ms |
get topic data: |
13ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
2ms |
others: | 287ms |
total: | 404ms |
0 / 0 |