Или имелось в виду, что у майора есть доступ не только к сертификату, но и к приватному ключу, который к этому сертификату прилагается (что, кажется, позволяет как расшифровать траффик, так и сгенерировать новый серт для нужного сайта)?
смысл в том, что ГОСТ ты можешь поставить сам в добровольном (принудительном) порядке, чтобы, к примеру, пользоваться госуслугами или nalog.ru.кстати, практически нигде в РФ этого реально не видел. Для физлиц все госсайты и банки имеют обычные ssl сертификаты (может понадобиться свой личный сертификат ЭП, но он никак не связан с установкой корневого в систему).
Если PostgreSQL не умеет использовать покрывающий индекс, то объясни мне, почему удаление поля из индекса (fiddle) изменяет план и вместо Index Only Scan using idx1 on test пишет Index Scan using idx1 on test. Что сервер подразумевает в первом случае, когда добавляет слово Only?
Select app_type.name, app_brand.name, app_product.name
FROM app_product
LEFT JOIN app_type_product ON (app_type_product.product_id = app_product.id)
LEFT JOIN app_type ON (app_type_product.type_id = app_type.id)
LEFT JOIN app_brand_product ON (app_brand_product.product_id = app_product.id)
LEFT JOIN app_brand ON (app_brand_product.brand_id = app_brand.id)
SELECT * FROM test_table WHERE high ~ '[^0-9]';
я хочу просто сделать upsert, это довольно популярная операция в базах данных, поэтому мне кажется что в алхимии это должно как-то делаться более простым путем чем через разные диалекты
id bigint auto_increment
. Без этого у вас так или иначе когда-то в обозримом будущем возникнут проблемы.INSERT
? Там действительно в основном новые данные (с новыми tuple_first, tuple_second) или это такой способ делать UPDATE?on duplicate key update
, и вас заботит рост значения в auto_increment (непонятно, почему - это ни на что в общем не влияет), то делайте сначала обычный UPDATE, а затем, если affected rows = 0, уже insert ... on duplicate key update
.super(SomeParent, self).__init__()
- не есть хорошая практика и это не сильно лучше, чем SomeParent.__init__(self)
. В идеале каждый класс в цепочке должен вызывать просто super().__init__()
class A:
def __init__(self, value, **kw):
print("A::__init__")
self.value = value
super().__init__(**kw)
class B:
def __init__(self, name, **kw):
print("B::__init__")
self.name = name
super().__init__(**kw)
class C(A, B):
def __init__(self, **kw):
super().__init__(**kw)
t = C(name='Name', value=0)
SELECT ...
FROM bot_users
WHERE premium=true and id_kucoin_s is not null
ORDER BY CASE WHEN some_id = XXX THEN 0 ELSE 1 END, take_profit_kucoin_s DESC;
The VPN encrypts all traffic and sends it to CF before it is sent to the intended website instead of sending it directly to the intended website.
The only difference compared to other VPNs (other than using a newer and faster protocol) is that it will show your real IP address to any website currently using Cloudflare’s main services