Fråga från Lakebase SQL-redigeraren

Lakebase SQL-redigeraren kör frågor på dina Lakebase-databaser direkt från Lakebase-appen. Den erbjuder Postgres-inbyggda funktioner som EXPLAIN/ANALYZE, psql-style metakommandon och export av resultat till CSV/JSON/XLSX.

Anmärkning

Du kan också fråga din Lakebase-databas från SQL-redigeraren i Lakehouse, som tillhandahåller visualiseringar, instrumentpaneler, samarbetsfunktioner och möjligheten att kombinera Lakebase-data med andra Unity Catalog-tabeller. Se Fråga från SQL-redigeraren (Lakehouse).

Använda Lakebase SQL-redigeraren

Så här använder du SQL-redigeraren:

  1. Öppna Lakebase-appen och välj ditt projekt.
  2. Välj SQL-redigeraren i sidofältet och välj sedan en gren och databas.
  3. Ange en fråga i redigeraren och klicka på Kör för att visa resultatet.

LKB SQL-redigerare

Använd följande fråga för att prova SQL-redigeraren. Frågan skapar en tabell, lägger till data och hämtar data från tabellen.

CREATE TABLE IF NOT EXISTS playing_with_lakebase(id SERIAL PRIMARY KEY, name TEXT NOT NULL, value REAL);
INSERT INTO playing_with_lakebase(name, value)
SELECT LEFT(md5(i::TEXT), 10), random() FROM generate_series(1, 10) s(i);
SELECT * FROM playing_with_lakebase;

Om du kör flera frågeinstruktioner samtidigt returneras en separat resultatuppsättning för varje instruktion. Resultatuppsättningarna visas på separata flikar och är numrerade i den ordning de körs.

Om du vill rensa redigeraren väljer du innehållet i textrutan och tar bort den.

Förklara och analysera

Lakebase SQL-redigeraren har funktioner för att förklara och analysera .

Förklara och analysera i LKB SQL-redigeraren

  • Funktionen Förklara kör den angivna frågan med kommandot Postgres EXPLAIN , som returnerar körningsplanen för frågan. Funktionen Förklara returnerar bara en plan med uppskattningar. Den kör inte frågan.
  • Funktionen Analysera kör den angivna frågan med EXPLAIN ANALYSERA. Parametern ANALYZE kör frågan och returnerar faktiska antal rader och körningstider för plannoder tillsammans med uppskattningarna EXPLAIN .

För att förstå informationen som tillhandahålls av funktionerna Förklara och analysera måste du känna till Postgres-kommandot EXPLAIN och dess ANALYZE parameter. Se dokumentationen EXPLAIN och Använda EXPLAIN i PostgreSQL-dokumentationen.

Exportera data till CSV, JSON och XLSX

Lakebase SQL-redigeraren stöder export av dina data till JSON, CSVoch XLSX. Öppna nedladdningsknappen från det nedre högra hörnet på SQL Editor-sidan . Nedladdningsknappen visas bara när det finns en resultatuppsättning som ska laddas ned.

Export av LKB SQL-redigerare

Expandera resultatavsnittet i SQL-redigerarfönstret

Expandera resultatavsnittet i fönstret SQL-redigeraren genom att välja knappen för att expandera fönstret i det nedre högra hörnet.

Expandera LKB SQL-redigeraren

Metakommandon

Lakebase SQL-redigeraren stöder användning av Postgres-metakommandon, som fungerar som genvägar för att interagera med din databas. Om du redan är bekant med att använda metakommandon från psql kommandoradsgränssnittet kan du använda många av dessa kommandon i Lakebase SQL-redigeraren.

Metakommandon kan påskynda arbetsflödet genom att ge snabb åtkomst till databasscheman och annan viktig information utan att behöva skriva fullständiga SQL-frågor.

Här följer några vanliga metakommandon i Lakebase SQL-redigeraren:

  • \dt — Visa en lista över alla tabeller i den aktuella databasen
  • \d [table_name] — Beskriva en tabells struktur
  • \l — Visa en lista över alla databaser
  • \? — Ett fuskark med tillgängliga metakommandon
  • \h [NAME] – Få hjälp för alla Postgres-kommandon (t.ex. \h SELECT)

Anmärkning

psql Alla metakommandon stöds inte i SQL-redigeraren. Om du vill hämta en lista över kommandon som stöds använder du \?.

En fullständig lista över metakommandon och deras användning finns i Metakommandon i psql.

Använda metakommandon

Om du vill använda ett metakommando i SQL-redigeraren anger du metakommandot i redigeraren (precis som en SQL-fråga) och klickar på Kör. Resultatet visas i utdatafönstret.

Begränsningar i SQL-redigeraren när offentlig åtkomst är inaktiverad

När din arbetsyta har Private Link konfigurerat med offentlig åtkomst inaktiverad dirigerar SQL-redigeraren frågor via Lakebase-backend i stället för att använda en direkt databasanslutning. De flesta frågor fungerar identiskt med en direktanslutning, men proxyn är tillståndslös och kör varje instruktion som en oberoende HTTP-begäran, vilket medför följande begränsningar:

Vad fungerar:

  • Frågor med en enda sats (SELECT, INSERT, UPDATE, DELETE, UPSERT)
  • DDL-instruktioner (CREATE, ALTER, DROP TABLE, CREATE INDEX och andra)
  • EXPLAIN och DESCRIBE-kommandon (\d, \dt, \di)
  • Fullständigt stöd för Postgres-datatyp (matriser, JSON/JSONB, numeriska, tidsstämplar, booleska värden)
  • Frågeresultat och felmeddelanden

Vad fungerar inte:

Feature Limitation
Transactions BEGIN, COMMIT, ROLLBACKoch SAVEPOINT fungerar inte som förväntat. Varje sats committas automatiskt var för sig utan garanti för atomicitet.
Sessionstillstånd SET och SET LOCAL gäller endast för den aktuella begäran. Temporära tabeller, förberedda instruktioner, markörer och rådgivande lås är inte tillgängliga i efterföljande instruktioner.
LISTEN/NOTIFY Kräver en beständig anslutning för asynkrona meddelanden, som proxyn inte stöder.
KOPIERA FRÅN STDIN Det går inte att strömma data på klientsidan via proxyn.
\watch Regelbunden omkörning av frågor är inte tillgängligt via den tillståndslösa proxyn.
Avbrytning av fråga Annullering sker endast i mån av möjlighet. En fråga kan fortsätta köras på serversidan efter en begäran om avbrytning.
Skript med flera satser Satser körs utan en delad transaktion. Ett fel i en del av skriptet leder till en partiell commit.
Storleksgräns för resultat Frågeresultat är begränsade till 32 MB.

För arbetsbelastningar som kräver transaktioner eller sessionstillstånd ansluter du direkt till databasen med hjälp av en Postgres-klient. Se Ansluta med psql.

Felsökning

Om SQL-redigeraren visar meddelandet "Det gick inte att hämta" eller "Okänt fel" och arbetsytan använder Private Link kontrollerar du att inkommande Private Link (arbetsytenivå, port 443) är korrekt konfigurerad. Se Felsöka Private Link-anslutningen.