#programowanie #sql
Cześć,

Potrzebuję Waszej pomocy. Niestety nie jestem biegły w sql. Mam dwie tabele:

CREATE TABLE stock_details
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@plushy: Gdy będę robił update rekordów z tabeli stock_details nie będę musiał updatować wartości z tabeli stocks. Bo jak rozumiem po każdym nowym dodaniu rekordu (trigger on create) będą uruchamiane napisane funkcję, które już zrobią update wartości w tabeli stocks.

Dobra mam coś takiego:

CREATE OR REPLACE FUNCTION totalRecords ()
RETURNS double precision
  • Odpowiedz
@pulla: http://www.postgresql.org/docs/9.1/static/sql-createtrigger.html + http://www.postgresql.org/docs/9.2/static/plpgsql-trigger.html ogólnie różniąca polega na tym, iż twoja funkcja powinna zwracać trigger. A sam trigger wola funkcje, lecz nie dowolna, a jedna z trigger function, czyli takiej która trigger zwraca. Wartość zmieniasz poprzez new.total:= zreszta, wszystko znajdziesz w dokumentacji. Plus mała rada, jeśli nie potrzebujesz dużej precyzji, to typ danych Real jest wystarczający, a zajmuje mniej miejsca.
  • Odpowiedz
@towarprawemnietowarem: Różnica żadna, ale dopiero się tego uczę i zastanawiałem się dlaczego zaczyna indeksować od 5, kiedy ja ustawiłem Identity Seed na 1.
Teraz już wiem, że to numer KAŻDEJ próby dodania rekordu, a nie tylko tych udanych. Ogólnie to myślę, że fajnie wiedzieć jak coś działa jeśli zamierza się tego używać.
  • Odpowiedz
Zacząłem przerabiać nerdDinner i mam problem już w drugiej części.
http://nerddinnerbook.s3.amazonaws.com/Part2.htm
dokładnie część: Setting up a Foreign Key Relationship between Tables

Oni ustalają tą relacje graficznie (http://nerddinnerbook.s3.amazonaws.com/Images/image035.png), ale gdy klikne ppm na wiersz nie mam tylu opcji do wyboru.
panDzik - Zacząłem przerabiać nerdDinner i mam problem już w drugiej części.
http://...

źródło: comment_Tcm6BmJGBA3F52JBtvKYDNUS9Kfgcn99.jpg

Pobierz
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@pan_Dzik: siedzę w oracle'u, ale na szybko znalazłem podobny wpis dla mssql, jak to jest w oracle'u:

alter table MyTable
add constraint MyTableMyColumnFK FOREIGN KEY ( MyColumn ) references MyOtherTable(PKColumn);

BTW - musisz chyba mieć jakąś "wybrakowaną" wersję visual'a, albo brakuje jakiegoś dodatku - chociaż w tutorialu piszą, że jest to wersja "SQL Server Express" - też to masz?
  • Odpowiedz
@grzgar:
Co do rozwiązania to masz racje; na stacku znalezłem bardzo podobną odpowiedź:
ALTER TABLE Orders
ADD CONSTRAINT FKCustomerOrder
FOREIGN KEY
  • Odpowiedz
Nie do końca #programowanie ale może znajdzie się ktoś bardzo ogarnięty i mi pomoże. Mam dwie duże bazy MS #sql w firmie. W wyniku migracji okazało się, że cześć pracowników pracowała na starej bazie a część na nowej. Przez dwa dni dało to setki dokumentów różnicy. W jaki sposób można połączyć ze sobą te dwie bazy, może jest jakiś program który porówna mi dwie bazy i wyrzuci z
  • 9
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#sql #sqlserver #ms
Czy da się w microsoft management studio sprawdzać dane w bazie danych? Bo potrafię tylko diagram zrobić, ale nie za bardzo kumam z niego co gdzie jest (adventureworks2012). Chciałbym więc sprawdzić dane bo to mi więcej powie.
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@madry_i_mieciutki: o jakie dane dokładnie Ci chodzi ? Ogólnie jeśli nie znasz SQL'a to możesz sobie w managmencie kliknąć prawym przyciskiem na konkretnej tabeli i kliknąć "Select Top 1000 Rows" lub kliknąć u góry w "New Query" i napisać sobie "Select * from nazwa_tabeli" pamiętaj tylko żeby sobie wybrać odpowiednią baze danych jak tworzysz sobie swoje zapytanie.
  • Odpowiedz
Mirki, powiedzmy, że mam w bazie cos takiego

|Imie |
|Karyna|

Czy jest jakaś możliwość, żeby przy wyświetlaniu danych dodać coś, żeby wyszło coś takiego? Z tym, że ma obyć się bez zmiany danych w bazie.

|Imie
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Jeżeli mam w bazie danych #sql tak, że tabela nazywa się "settings" i chcę tam trzymać słownik, tj. klucz i wartość... ale wartość może być stringiem, integerem lub boolem (czyli integerem i tak, zostają dwie opcje)... na razie mam tak, że mam dodatkową kolumnę "typ" i tam mam enum który decyduje czy zwrócić wartość z komuny "intvalue" czy "stringvalue" i jeżeli to pierwsze to czy przekonwetować na boola
  • 27
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@katinka: no to już by była przesada wg mnie ( ͡° ͜ʖ ͡°) ale sądziłem, że dałoby się jeszcze lepiej... np. czy jest sens ograniczenia się np. do jakiegoś binarnego typu danych i tam władować każdą zmienną i tylko przeformatowywać przy wyciąganiu i wkładaniu na podstawie tego enuma? Strasznie mnie męczą puste kolumny... a niestety mam ich dużo, np. jest sobie tabelka "głosowanie" i tam jeżeli
  • Odpowiedz
Błąd na serwisie prawy.pl

"User 'ikosprawy' has exceeded the 'maxquestions' resource (current value: 200000) SQL=INSERT INTO j25_session (session_id, client_id, time) VALUES ('2997b5b9854d09c2a9d4392af996fc24', 0,
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#sql #it #pytanie
Podczas uruchamiania management studio 2012 wyskakuje mi komunikat "exception has been thrown by the target of an invocation". Uruchamiam kompa ponownie i wszystko gra... ktoś coś...?
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Cześć. Studiuję geografię/geoinformatykę, robię trochę GIS i teledetekcji i słyszałem, że przydaje się SQL. Niestety, przedmiot z baz danych nie został uruchomiony, bo zapisało się za mało osób. Polecacie jakieś kursy, ćwiczenia związane z SQL? Trzeba mieć jakieś początkowe umiejętności z zakresu programowania?
#sql #januszeinformatyki
  • 14
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Simo_Hayha: polecam 3 etapy
ms access i proste kwerendy, podzapytania, update rekordow ze slownikow, dao, ado
Potem sqllite studio do pseudo profesjonalnego sql, triggery itp
Trzeci etap to pl/sql w oracle albo tsql? W microsofcie, albo darmowy postgresql
A moze od razu jakies dodatki z geoserwerami bazami w qgis?
Generalnie bazy gis sa bardzo duze z tego co wiem...
Sa takze bazy no-sql do dziwnych obiektow
  • Odpowiedz
@Simo_Hayha: SQL nie jest językiem programowania aczkolwiek pewne podstawy by się zdały. Obadaj jakiś tutorial do Posgtresa a potem książka PostGIS in action. Innej bazy niż pg nie ma sensu używać na początek, i nie ważne co się będzie działo trzymaj się z dala od MySQL.
  • Odpowiedz
Elo
chce zrobić grę w której gracz rozwiązuje labirynt jak w filmie Cube (struktura 3d ) i wymyśliłem że nie powinienem trzymać labiryntu od razu całego w bazie danych a dopiero w trakcie gry na bieżąco dobudowywać pomieszczenia.
Algorytm dobudowania wygada tak:
1.Gracz wchodzi do pomieszczenia
2.Jeśli pomieszczenie ma flagę "krawędź" to: 3 ; Jeśli nie: kończ
3. Dopóki istnieje miejsce (X,Y,Z) Gdzie nie ma pomieszczenia w promieniu r od aktualnego;
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@LubiPiwko: Przyznam szczerze, nie zagłębiałem się za bardzo w ten tekst.
Ogólnie nie musisz robić widoków, możesz robić joiny. Więc nie ma tak że trzeba. Tak czy siak, jeśli chcesz sobie zwrócić później taki widok / lub zapytanie join do modelu, to musisz sobie taki obiekt/model wcześniej przygotować.
  • Odpowiedz
Tak więc, otwieram w pgAdmin tabelkę "photo" i widze pole pphoto posiada wartość typ: bytea.
Piszę więc: SELECT p
photo FROM photo WHERE p_id = 1. Rezultat jest:
Dlaczego SQL zwraca null zamiast wartości pola?
#sql #postgresql #bazydanych
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@mariecziek: To co pokazuje pgAdmin jest wyłącznie kwestią, jak w pgAdmin prezentują pola typu bytea - może zawsze piszą binary data, bez względu na wartość?
  • Odpowiedz
Mirke,
mam 3 tabele z danymi, zrobilem sobie widok, ktory pokazuje ich wspolne kolumny razem (dane z jednej pod druga) uzywajac UNION ALL. I teraz chce stworzyc na ten widok index, ale krzyczy mi, ze cannot create index on view that contains UNION, INTERSECT itp. Jak to obejsc?
#sql #programowanie
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

  • 1
UNION ALL powinien wystarczyć aby dane z tabel były pobrane z wykorzystaniem indeksów, o ile nie masz tam ORDER BY albo innych cudów na zapytaniu. Najlepiej sprawdź plan zapytania.
  • Odpowiedz
Mirki jak to jest, że większość ogłoszeń o pracę w uk dla BI, ETL developera itp wymagana jest znajomość ssis/ssas/ssrs. Dlaczego tak popularne są narzędzia MS, a mało gdzie poszukują specjalistów od DataStage, Terradata, Informatica? Przeglądam ogłoszenia z czystej ciekawości i nie wiem co myśleć? Wyjaśnijcie mi ten ewenement...

#praca #pracait #sql #etl #pracauk #uk #anglia #bazydanych
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach