Даже не знаю как правильно и кратко описать.... Есть прога, которая заполняет БД из файла (берет данные в тхт файле, модифицирует их, и заносит в БД). Заносим в БД некоторые данные для каждого дня месяца. Так вот проблема в том, что при каждом новом запуске програмы, она заносит данные в БД по разному! Например в "правильном" случае дни в БД идут подряд, в других случаях первые пару дней либо вообще не заносятся, либо заносятся в конец БД, то есть БД начинается с 3 числа и продолжает заносить в правильном порядке, а уже после 31 числа дозаписывает 1,2 и 3 числа.... Как такое может быть, чтобы при каждом новом запуске программы, она выдавала разные результаты? п.с. Никаких "рандомских" операций в проге нет.
Модераторы перенесли эту тему с "новичков" (. Видно сочли неважной... Ну извините, выкладывть код на 5000 строк и заставлять кого то его разбирать, мне совесть непозволит. Хотелось бы просто услышать общие варианты почему такое может быть.
Нет. Я покинул эту секту . В том то и дело, что отладчик показывает все результаты правильные, а вот в базу чето вносятся они каждый раз по разному...
5000 строк выкладывать не надо. Но я вот сижу, пью кофе, а гуща все молчит, намекая на то, что с Access'ом все в порядке.
Ну вот вы, как модератор, скажите - как я могу сформулировать проблему, что бы вы ее непереносили? С отладчиком все впорядке (точнее с програмой в отладчике), и сам exe - шник выдает иногда правилные результаты. Проблема в том, что ИНОГДА! Единственное, что я не смотрел в отладчике, так это то, как работают апи функции добавления в базу, я там все равно мало что понимаю пока еще - это во-первых, а во вторых, если логически подумать вопрос не в них. Так как строки то в БД добавляются в нужном порядке, просто иногда почему то первые строки пропускаются, а иногда они в конец добавляются. А иногда выдают то, что нужно! Как такое может быть при простейшем алгоритме, в котором даже человек далекий от асма незаблудится, я не понимаю. Может хоть кто то что то подскажет почему такое может быть. Просто некий ряд причин почему такой эффект может проявлятся... П.С. для модератора: спасибо хоть не удалили. Есть надежда что кто то все же выскажет наводящую мысль...
Вопрос расплывчатый. Вы знакомы с ограничениями на операцию добавления новых записей, которых налагает сама СУБД? Разбирались в структурах таблиц БД, в схеме данных, в межтабличных отношениях (связях), в индексных ограничениях и прочих? Попробуйте задать свой вопрос в : http://www.sql.ru/forum/actualforum.aspx в разделе Microsoft Access.
sheef_ad А как ты проверяешь что данные занесены не в том порядке? Извлекаешь их запросом SELECT * FROM mytable? А как сортировать их в запросе указано? А кодировку и формат даты перед добавлением записей настроил?
Объяснить точно, чем смотрели занесенные данные. Вот моя гуща подсказала, что вы смотрели хекс-редактором. Так вы видимо не в курсе, что в базе данных есть "дырки". Обычно данные пишутся в "хвост", но когда "дыра" большая - видимо пишут туда... Вы как и многие новички рассказываете свои измышления и не умеете сформулировать вопрос.
А проблему перенесли потому, что тут не форум программистов на Акцессе. Кстати на специализированном форуме вы ответ быстрее получите.
Ну как бы я несовсем новичек в БД... Пришлось в свое время писать обьемный труд на php+MySQL, и там таких вопросов не возникало. Хотя возможно я действительно незнаю нюансов, связанных непосредственно с Access... Да, наверное так будет лучше, так и сделаю.
Нет, я смотрел в Microsoft Office Access 2007 - входит в состав MS Office. Собственно в ней же я и создавал таблицы и настраивал числовой формат для каждого столбца (именно числовой - не дата, так мне удобней, так как для числа месяца и года 3 отдельных столбика)
Здесь я пожалуй соглашусь с вами. Все же код асма в моем вопросе не фигурирует, есть вопросы к акцесу и может быть алгоритму.... В следующий раз прийму к сведенью...
Всем большое спасибо за потраченное на меня время. Нашел на sql форуме похожую тему http://www.sql.ru/forum/actualthread.aspx?bid=4&tid=395051&hl=%ef%ee%f0%ff%e4%ea%e5, этим и займусь... Еще раз спасибо.
Понятно. Всех нужных моментов не учтешь - я собственно и ждал наводящих вопросов... Ну новичек я, что я могу сделать... разве что - учится, учится, учится...© В любом случае спасибо.