#programowanie #sql #programista15k

powiedzcie mi taką rzecz, czy pole nvarchar(100) gdy będzie puste to zajmuje stałą ilość bajtów, czy zajmowane jest tyle, ile znaków jest wpisanych do danego pola?
Jak jest w przypadku char(100)?

Mam tabelę, która ma aktualnie ponad 2mln rekordów i chciałbym dodać takie pole, tabela będzie dalej dość szybko rosła...
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Uczę się php i mam pytanie dotyczące bazy danych mysql, którą odpalam za pomocą xampa i zarządzam za pomocą phpMyAdmin.

W folderze z xampem jest folder o nazwie mysql w którym jest folder data i widzę, że znajdują się tam foldery wszystkich baz danych jakie stworzyłem. Mam rozumieć, że w jednym takim folderze znajdują się wszystkie pliki związane z daną bazą danych? Czyli jeżeli chciałbym skopiować taką bazę, żeby móc ją potem
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Szczęść Boże Mirki, chciałbym zgłębić temat baz danych i popróbować swoich sił długoterminowo w analizie danych. Ostatnio w #korpo głównie zajmuje się analizowaniem danych z systemu, ale fakt, że jedyne co potrafi to tworzyć coś w excelu bardzo mocno mnie ogranicza. Nie mniej spodobało mi się to. W związku z próbą pójścia w tym kierunku chciałbym pouczyć się trochę zapytań SQL. Dodatkowym bodźcem jest fakt, że niedługo do wachlarza oferowanego
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@azeff7: wszystko zależy od tego co będzie twoim źródłem danych, czy będziesz te dane pozyskiwał „ręcznie” czy też będą to jakieś inne uporządkowane zbiory danych które po zmapowaniu da się masowo zaimportować do bazy. Jeśli będą to pojedyncze rekordy informacji to lepiej od razu inserować to ręcznie.
  • Odpowiedz
Mirki mam problem do ogarnięcia na bazie. Mam triger na tabeli, który przed insertem wywołuje procedurę. Problem jest taki, że to dość istotna tabela z punktu widzenia całego systemu i robienie ma niej triggera nie jest najlepszym rozwiązaniem. Jak mogę to ominąć, by móc za każdym rekordem spełniającym warunek odpalać procedurę? Myślałem o jobie, ale on działa na czas, a nie na rekord, macie jakieś pomysły? #bazydanych #oracle
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@tomszczyk: No jak nie chcesz nic przyblokować to się za to nie bierz.
A jak chcesz się za to zabrać to zrób to dobrze, tak aby niczego nie zablokować
¯\_(ツ)_/¯

A najlepiej najpierw przetestuj na środowisku zapsowym. Skoro to istotny system to na pewno takie środowisko gdzieś obok stoi
  • Odpowiedz
Może głupie pytanie ale jestem ciekaw odpowiedzi. Z wykorzystaniem której implementacji RDBMS uczyliście się baz, sql itd. - Oracle, Microsoft'u, MySQL, PostgreSQL (czy jeszcze czegoś innego) ? I którą polecilibyście osobie wchodzącej dopiero w ten segment IT np. pod kątem pracy (ofert) czyli mówimy tu o pracy właśnie z bazami (jako główny obszar)
#bazydanych #informatyka #programowanie #sql
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Cześć Mirki. Ostatnio poznałem nowe zaklęcie #bazydanych #sql, np:

GROUP_CONCAT( DISTINCT CONCAT_WS(',', categories.id, categories.name ) SEPARATOR ';' ) AS category
Rzecz w tym, że obecnie w praktyce znajduję tylko jedno, szczególne zastosowanie: Gdy wyświetlając listę wyników, dla każdego z wyniku z osobna potrzebuję wyświetlić podlistę ( np.: relacji 1-do-wielu, lub wiele-do-wielu ). Ma ktoś może przykład innego zastosowania GROUP-CONCAT z/bez CONCAT-WS ?
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

[Baza danych Oracle]

Użytkownik, który korzysta z dblinka odwołującego się do bazy MS SQL Server zgłosił mi taki błąd:
"[FreeTDS][SQL Server]Invalid cursor state {24000}
ORA-02063: preceding 2 lines from DBAX
28500. 00000 - "connection from ORACLE to a non-Oracle system returned this message:"
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@DinapeS: często transakcje rozproszone, sprawdź:
select localtranid, state from dba2pcpending;
ale przede wszystkim - jak kolega wyżej - włączyć tracing w $ORACLE_HOME/HS i popatrzeć co się dzieje dokładnie.
  • Odpowiedz
Mam takie pytanie dotyczące rynku. Przeglądam oferty pracy związane z bazami danych aby mieć jako taki ogląd co trzeba umieć w kontekście szukania pracy. W większości ofert spotykam się z bazami MS albo Oracle. Natomiast bardzo rzadko widzę MySQL. Ogólnie swoją naukę sql i ogólnie baz (jako teorii) prowadziłem w MySQL dopinając do tego python'a. I zastanawiam się czy w takim układzie nie skupić na bazach Microsoft'u i Oracle'a bo łatwiej będzie
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@vaars: Nie ma tak, że firma korzysta tylko z jednego dostawcy i koniec. Aktualnie w swojej pracy korzystam z MS, Oracle, Mysql, Mariadb, Postgresql, przy czym MS jest hurtownią i do niej wszystko zgrywam.
Ucz się MS, bo to najbardziej przyjazna baza i szeroko wykorzystywana do hurtowni i bi, a to teraz jest w modzie. Obróbka danych.
  • Odpowiedz
@semyel: takie książki trzeba dobierać pod dany rdbms. Do t-sql polecam Funkcje okna w języku T-SQL dla SQL Server 2019 albo Zapytania w języku T-SQL w Microsoft SQL Server 2014 i SQL Server 2012, Itzik Ben-Gan.
  • Odpowiedz
Jest w sqlite IFNULL dla wielu wartosci. Chce sprawdzic ktory z rekordow (wszystkie rekordy ktore wybralem) ma wartosc NULL i jesli ma to wpisac 'Not known'. Moge to zrobic niby wpisujac do kazdego rekordu osobno IFNULL ale pewnie da sie to zrobic za jednym zamachem. #sql #programowanie
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Który operator służy do wyświetlania części wspólnej dwóch tabel?
- INTERSECT
- JOIN
- oba

Wg mnie można oboma operatorami uzyskać część wspólną, ale chciałbym zapytać o wasze zdanie
#sql #mysql #bazydanych
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Nullek: bazy danych wywodza sie z teorii zbiorow. Intersect to czesci wspolne zbiorow, Join to laczenie zbiorow. Troche teorii nigdy nie zawadzi ;) Twoja odpowiedzia jest INTERSECT
  • Odpowiedz
Mirki, w jaki sposób zautomatyzować proces zmiany konfiguracji w bazie za pomocą Azure DevOps?

Załóżmy, że napisałem skrypt SQLowy, który robi jakieś aktualizacje w danej tabeli. Czy istnieje jakieś narzędzie, które po zmergowaniu automatycznie połączyłoby się z bazą i odpaliłoby skrypt?

Jeden skrypt = aktualizacja jednej tabeli
Jeden pull request = jeden lub więcej skryptów.
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#sql #oracle

Pracuje sobie na tych danych od oracle i mam takie zadanie od prowadzace
2. Pokaż nazwiska pracowników i informację o stażu pracy.
Osoby zatrudnione:
w 1990 roku z komentarzem-długoletni pracownik
  • 12
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

via Wykop Mobilny (Android)
  • 0
Wykluczyłem sobie selectem pewne dane dla zamówień. Chciałem dowiedzieć się kto ostatni pakował zamówienie więc połączyłem sobie dwie tablice. Niestety niektore zamowienia miały więcej niż jedną osobę pakujaca. Jak zostawić tylko wpis z najświeższą data pakowania? W tablicy od logow mam kolumnę z datreg gdzie jest godzina ostatniego pakowania

Próbowałem max(XXXX), ale nic z tego.

#sql
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@magucio: cross apply z logów do zamówień z order by data malejąco coś w stylu
FROM zamowienie
CROSS APPLY
(SELECT TOP 1 pakowacz from logipakowania where idzamoweinia = idzamowienia order by data desc)
  • Odpowiedz
mam gotowe klasy i context w projekcie do nowej bazy przy podejsciu code first, i przy uruchomieniu dostaje błąd

No database provider has been configured for this DbContext

Gdzie mam dostarczyć connectionStringa żeby podczas uruchomienia utworzyło mi nową baze danych wypełnioną encjami które sobie wpisałem w main?
apka w ef core
bo mi sie wydaje, czy można to było zrobić poleceniem w konsoli menadzera pakietów?
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach