автоинкремент столбца 'trackingcode` при каждой вставке в базу данных

In [1]: class A(object):
...:     def __init__(self):
...:         self.a()
...:     def a(self):
...:         print "A.a()"
...:
...:     __str__ = a
...:         

In [2]: class B(A):
...:     def __init__(self):
...:         super(B, self).__init__()
...:     def a(self):
...:         print "B.a()"
...:         
...:         

In [3]: b = B()
        print str(b)
   A.a()

Вам нужно будет снова объявить __str__ в B.

0
задан IamV 5 March 2019 в 11:34
поделиться

1 ответ

Почему бы вам просто не использовать классические индексы с автоинкрементом и установить строку «TS-» перед идентификатором с PHP или, что еще лучше, MySQL?

рабочий пример db-fiddle здесь [ 111]

РЕДАКТИРОВАТЬ после нашего диалога в комментариях ниже:

SELECT CONCAT("TS-", LPAD(id_test, CHAR_LENGTH((SELECT MAX(id_test) FROM TEST)), '0')) AS trackingcode FROM TEST 

db-fiddle рабочий пример адаптивного решения

Так что это самый быстрый и чистый способ достичь своей цели.

Если у вас будет менее 10 строк, коды отслеживания будут «TS-01», «TS-02» и т. Д. ... Если у вас будет менее 100 строк, они будут «TS-001», TS -002 "и т. Д ...

0
ответ дан PHPnoob 5 March 2019 в 11:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: