|
|
|
Auto increment в рамках года
|
|||
|---|---|---|---|
|
#18+
Доброго времени суток! Дано: ------------------------- | ID| Q | data | ------------------------ | 1 | 1 | 31/12/2015 | | 2 | 2 | 31/12/2015 | | 3 | 3 | 31/12/2015 | | 4 | 1 | 01/01/2016 | | 5 | 2 | 02/01/2016 | | 6 | 3 | 02/02/2016 | ------------------------ Подскажите пожалуйста, как можно решить задачу auto inrement для разных годов. Что-то застрял на этом месте. Пример как должна выглядеть таблица показал выше. На VFP решил задачу через промежуточную таблицу содержащую increment различных "переменных". Большое спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2016, 13:30:35 |
|
||
|
Auto increment в рамках года
|
|||
|---|---|---|---|
|
#18+
systistrator, В MyISAM есть такой механизм, но MyISAM использовать не рекомендуется. Так что делайте руками. Или переформулируйте задачу так, чтобы не было необходимости в этом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2016, 13:34:41 |
|
||
|
Auto increment в рамках года
|
|||
|---|---|---|---|
|
#18+
Изменить задачу не могу, так как нумерация документов должна быть сквозной в рамках года. Да и не только в рамках года, есть аналогичная задача в этом же проекте с нумерацией записей в рамках суток, от 01-99. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2016, 13:48:44 |
|
||
|
Auto increment в рамках года
|
|||
|---|---|---|---|
|
#18+
Да блин, отдельная табличка с IDом автоинкрементным, оттуда берёшь новый ID, вставляя запись (и потом тут же удаляя), а раз в год эту табличку пересоздаёшь... И всего делов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2016, 13:49:26 |
|
||
|
Auto increment в рамках года
|
|||
|---|---|---|---|
|
#18+
MasterZiv, Как вариант, да. Я надеялся, что есть более, ну скажем элегантный способ, нежели создавать кучу таблиц для инкремента одного поля. А потом, по окончанию дня затирать и пересоздавать таблицу. Ну а для доступа к прошлогодним таблицам писать механизм доступа. miksoft, Подскажите пожалуйста, что Вы имели ввиду сказав про MyISAM? Как это называется, куда копать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2016, 14:05:32 |
|
||
|
Auto increment в рамках года
|
|||
|---|---|---|---|
|
#18+
systistratormiksoft, Подскажите пожалуйста, что Вы имели ввиду сказав про MyISAM? Как это называется, куда копать? http://dev.mysql.com/doc/refman/5.5/en/example-auto-increment.html For MyISAM tables, you can specify AUTO_INCREMENT on a secondary column in a multiple-column index. In this case, the generated value for the AUTO_INCREMENT column is calculated as MAX(auto_increment_column) + 1 WHERE prefix=given-prefix.Но пользоваться этим очень не рекомендую. Как минимум, по причине жесткой привязки к MyISAM. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2016, 15:20:01 |
|
||
|
Auto increment в рамках года
|
|||
|---|---|---|---|
|
#18+
systistratorИзменить задачу не могу, так как нумерация документов должна быть сквозной в рамках года.Разделите понятия идентификатор документа и номер документа. В схожем случае мы используем идентификаторы вида 201612345, из которого последние 5 знаков идут в номер документа, а первые четыре - год, для того чтобы можно было каждый год счет начинать заново. Но приходится каждый новый год модифицировать табличку, выставлять автоинкремент для нее в значение 201400001, 201500001, 201600001 и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2016, 15:24:33 |
|
||
|
Auto increment в рамках года
|
|||
|---|---|---|---|
|
#18+
miksoft, Низкий Вам поклон! Я вроде нашел для себя ответ в Вашем посте. Не совсем понял, что такое идентификаторы. Но это в целом наверное и не важно. Ежегодно я буду объявлять автоинремент как Вы подсказали ГОД000001 (2016000001) и выдирать то, что мне надо. ) Ну видать с дневными инкрементами придется делать тоже самое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2016, 15:52:06 |
|
||
|
Auto increment в рамках года
|
|||
|---|---|---|---|
|
#18+
systistratorНе совсем понял, что такое идентификаторы.То, что в большинстве таблиц хранится в поле ID. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2016, 15:57:13 |
|
||
|
Auto increment в рамках года
|
|||
|---|---|---|---|
|
#18+
Кстати, уже потом выяснилось, что этот идентфикатор очень нужен для интеграции с другими системами, где номер документа должен быть строго уникальным за все время. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2016, 15:58:38 |
|
||
|
Auto increment в рамках года
|
|||
|---|---|---|---|
|
#18+
miksoft, Почему-то подумалось, что Вы имели ввиду нечто другое, а не ID. ) Да, конечно, я в своих проектах разделяю эти два понятия, номер записи (id) и грубо говоря номер документа (id_doc). и то, что я хочу добиться, относится именно к id_doc. Еще раз большое спасибо за оказанную помощь! Успехов в реализации проектов! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2016, 12:39:21 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=39161856&tid=1832195]: |
0ms |
get settings: |
7ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
76ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
| others: | 215ms |
| total: | 372ms |

| 0 / 0 |
