Veritabanı Yöneticileri

Veritabanı becerilerini geliştirmek ve topluluktaki diğer kişilerden öğrenmek isteyen veritabanı uzmanları için soru cevap


1
PostgreSQL nesne izinlerini hangi sırayla kontrol eder?
Bir veritabanı rolü göz önüne alındığında, saklı yordam olarak tanımlanan user1bir işlev ve something()aşağıdaki gibi oluşturulan bir görünüm: CREATE VIEW view1 AS select * from something() Ve bu izinler verildiğinde: REVOKE ALL ON FUNCTION something FROM user1 REVOKE SELECT ON view1 FROM user1 Koştuğumda SELECT * FROM view1bir hata alıyorum …

2
DEĞİL (a = 1 VE b = 1) vs (a <> 1 VE b <> 1)
Gelen WHERESQL sorgusunun maddesi aynı davranışa sahip bu iki koşulu beklenir: NOT (a=1 AND b=1) vs a&lt;&gt;1 AND b&lt;&gt;1 İlk koşul beklendiği gibi davranır ve aynı şeyi yapmak için ikinci koşulu epksekteyken yapmaz. Bu çok basit şeyler, ama utanarak neyi yanlış yaptığımı göremiyorum.
16 condition 

3
Neden hiç ALGORİTMA = ALGORİTMA KOPYALAMA = TESPİT'i tercih ederim?
MySQL 5.6 çevrimiçi DDL'yi tanıttığından, ALTER TABLEkomut isteğe bağlı olarak ALGORITHM=INPLACEveya ALGORITHM=COPYbelirtilmiş olabilir. Online DDL genel bakış varsayılan olarak, bu notlar INPLACEmümkün olan her yerde kullanılır ve ima ki (hiç oldukça bunu belirtmeden) INPLACEalgoritması daha ucuzdur COPYbiridir. Peki ALGORITHM=COPYbir ALTER TABLEifadede ne gibi bir sebep belirtmem gerekirdi ?

1
PostgreSQL'de (x NOT NULL) ve (NOT x IS NULL)
Neden x IS NOT NULLeşit değil NOT x IS NULL? Bu kod: CREATE TABLE bug_test ( id int, name text ); INSERT INTO bug_test VALUES (1, NULL); DO $$ DECLARE v_bug_test bug_test; BEGIN RAISE NOTICE '%: %', v_bug_test, (v_bug_test IS NULL); RAISE NOTICE '%: %', v_bug_test, (v_bug_test IS NOT NULL); …
16 postgresql  null 

3
IF EXISTS'deki sorgulama çok yavaş yapıyor
Aşağıdaki sorgu var: select databasename from somedb.dbo.bigtable l where databasename ='someval' and source &lt;&gt;'kt' and not exists(select 1 from dbo.smalltable c where c.source=l.source) Yukarıdaki sorgu üç saniye içinde tamamlanır. Yukarıdaki sorgu herhangi bir değer döndürürse, saklı yordamın EXIT olmasını istiyoruz, bu yüzden aşağıdaki gibi yeniden yazdım: If Exists( select databasename …

2
SEÇİN TABLO OLUŞTURMA
PostgreSQL destekliyor CREATE TABLE ASve SELECT INTOher ikisini de ne zaman kullanacağım? CREATE TABLE AS - bir sorgunun sonuçlarından yeni bir tablo tanımlama CREATE TABLE ASbir tablo oluşturur ve bir SELECTkomutla hesaplanan verilerle doldurur . Tablo sütunları, SELECT(yeni sütun adlarının açık bir listesini vererek sütun adlarını geçersiz kılabilirsiniz) öğesinin çıktı …
16 postgresql  ctas 

2
Tamsayı olmayan birincil anahtar hususları
bağlam Dağıtılmış bir uygulamadan veri depolayacak bir veritabanı (PostgreSQL 9.6'da) tasarlıyorum. Uygulamanın dağıtılmış doğası SERIALnedeniyle, potansiyel artış koşulları nedeniyle otomatik artış tamsayılarını ( ) birincil anahtarım olarak kullanamıyorum. Doğal çözüm, bir UUID veya global olarak benzersiz bir tanımlayıcı kullanmaktır. Postgres birlikte bir dahili UUIDtip mükemmel bir seçimdir. UUID ile ilgili …

2
SQL Server'ın PERSISTED sütunları tanımla eşleşmeyen verilerle doldurması yasal mı?
Hesaplanan bir sütundaki garip değerler hakkında bu soruyu takip ediyorum PERSISTED. Bu sorunun cevabı, bu davranışın nasıl ortaya çıktığı hakkında birkaç tahmin yapıyor. Şu soruyu soruyorum: Bu açık bir hata değil mi? Are PERSISTEDsütunlar Hiç bu şekilde davranmasına izin? DECLARE @test TABLE ( Col1 INT, Contains2 AS CASE WHEN 2 …

1
Çoktan çoğa ilişkileri olan bir video oyunu iş alanı için bir veritabanı tasarlama
Veritabanı tasarımında nispeten yeniyim ve pratik için kendi varsayımsal veritabanımı yapmaya karar verdim. Bununla birlikte, sayısız çoktan çoğa (M: N) ilişki olduğuna saygı duyduğum için modelleme ve normalleştirme konusunda sorun yaşıyorum. Genel senaryo açıklaması Veritabanı, Zelda serisinde çalışan çeşitli Kişiler hakkındaki verileri tutmak içindir . Ben takip etmek istiyorum Konsol …

2
Tüm çocuklar için Toplam bulmak için özyinelemeli CTE
Aşağıda, beklenen sonuçlarla yinelenen bir T-SQLSorgu (muhtemelen CTE) kullanarak arama yapmak istediğim bir montaj ağacı . Herhangi bir bölümü verilen montaj başına toplam miktarı bilmek istiyorum. Yani 'Perçin' ararsam, sadece doğrudan çocukların sayımı değil, meclisin her seviyesindeki toplam sayıyı bilmek istiyorum. Assembly (id:1) | |-Rivet |-Rivet |-SubAssembly (id:2) | | …

4
Veritabanı olarak Blockchain (Bitcoin)?
Bu BBC News makalesini okuyordum ve aşağıdaki alıntı dikkatimi çekti. Bu gibi sesler Her Zaman Açık Kullanılabilirlik Grupları veya Yüksek Kullanılabilirlik Yansıtma güvenlik otomatik olarak dahil belki birlikte. Blockchain modern, yüksek işlem hacmine sahip uygulamalar için potansiyel olarak uygulanabilir bir veritabanı çözümü mü? Kişisel tıbbi kayıtlar gibi düşük hacimli işlemler …

4
Otobüs güzergahlarını bir veritabanında saklama
Biraz araştırma yaptım ve bir güzergahı bir durak dizisi olarak saklamam gerektiğini buldum. Gibi bir şey: Start -&gt; Stop A -&gt; Stop B -&gt; Stop C -&gt; End Üç tablo oluşturdum: Rotalar Duraklar RouteStops ... burada RouteStops bir bağlantı tablosu. Benim gibi bir şey var: Rotalar +---------+ | routeId | …


1
Saat dilimi neden Postgres'te 0001 yılında UTC'den böyle çılgın bir dengelemeye sahip?
Postgres 9.5'te, yıl ile denemeler yaparken 0001(sıfır yıl yok 0000) aşağıda görülen sonucu gördüğüme şaşırdım . Ofseti -07:52:58? Bazı örnek kodlar. Ben karma kullanımı o Not TIMESTAMP WITH TIME ZONEve TIMESTAMP WITHOUT TIME ZONEçok dikkatlice okuyun. SET TIME ZONE 'America/Los_Angeles' ; SELECT (TIMESTAMP WITH TIME ZONE '2015-01-01 00:00:00.0', TIMESTAMP WITH …

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.