Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [SQL](1 row(s) affected)
Forum PHP.pl > Forum > Przedszkole
thepanone
Mam plik Query bazy danych jakiegoś sklepu. W szkole uruchomienie, podgląd diagramów tej bazy odbywa się bez przeszkód. U mnie w domu, na tej samej wersji SQL SERVER po odpaleniu pliku query i kliknięciu execute w sekcji Messages wyświetla mi się jeden pod drugim w nieskończoność (no w skończoność jednak ) komunikat:

(1 row(s) affected)


Podobnie z Object Explorer tej bazy. Folder Database Diagrams tej bazy jest pusty. W szkole pusty nie jest.


Nie wiem czy ma to związek z tym tematem, ale gdy próbuję zobaczyć diagramy innych baz danych, jak Nortwind z msdn, to po rozszerzeniu(rodziny folderów) tej bazy w Object Explorer kliknięcie w folder Database Diagrams wywołuje alert o takiej treści:
//database diagram suppport cannot be installed becouse this database does not have a valid owner. To continue, first use the Files page of the database Properties dialog box or the ALTER AUTOHORIZONTAL statement to set the database owner to a valid login, then add the database diagram support objects.
//
W sieci znalazłem wytłumaczenie/rozwiązanie powyższego alertu, który każe wykonać następujące kroki:
I//n SQL Server Management Studio do the following:
1. Right Click on your database, choose properties
2. Goto the Options Page
3. In the Dropdown at right labeled "Compatibility Level" choose "SQL Server 2005(90)"
4. Goto the Files Page
5. Enter "sa" in the owner textbox.
6. Hit OK//
Nie wiem co autor ma na myśli pisząc 'Goto the Files Page', czyli od pkt czwartego.
mmmmmmm
Po lewej stronie masz "Select a page" i poniżej (pewnie druga opcja) jest "Files". Po wybraniu tego po prawej pojawi ci się m.in.Owner. Musisz tam wpisać lub wybrać istniejącego użytkownika bazy danych. Nie wiem, jakim cudem dostał ci się tam nieistniejący... Pewnie z backupu odtwarzałeś...
thepanone
cholera jasna, może coś wcześniej namieszałem z toolbarem bo nie widzę nigdzie select a page, ani po lewej, ani po prawej. Z czym to Select a Page się wiąże?




Dostałem z innego źródła inną poradę, której również nie rozumiem. Proszę mi ją przetłumaczyć

"Kod do wykonania trzeba podświetlać. Dodatkowo, po wejściu do SQL Servera żeby zacząć przetwarzanie trzeba wydać polecenie: USE Northwind;"

(Nie wiem czy to ma znaczenie a dodam, że plik query ma nazwę Northwind_LAB. Ale czy Nortwind z powyższej porady ma związek z nazwa query czy z doczepionymi samplami Nortwind nie wiem)
W jakim celu kod należy podświetlać? Do wykonania czego? Gdzie należy wykonać polecenie USE Nortwind? Dopisać do skryptu?

Chętnie poświęce parę godzin na naukę podstaw, ale wydaje mi się, że odpowiedzi na moje problemy nie nie znajdują się w podręcznikach SQL.
mmmmmmm
Use Nortwind trzeba dopisać na początku skryptu. Lub uruchomić Query Editor w kontekście tej bazy.
Podświetlać trzeba bo Query Editor wykonuje (F5 lub CTRL-E) zaznaczony tekst. Jeśli się nie zaznaczy, to wykonuje cały.
A wspomniany wcześniej przeze mnie "Select a page" znajduje się w okienku "Properties" (bo pisałeś, że od pkt 4 masz problem)
thepanone
Po pierwsze dzięki za odpowiedzi.

Ok, robię co następuje:

1. otwieram Management Studio i łącze się na swój Server name
2. Rozszerzam Datebases w Object Explorer, rozszerzam Bazę danych o nazwie Northwind, (czyli sample z msdn, którą kiedyś dodałem przez Attach) i Database Diagram jest pusty. Wcześniej zmieniłem w Properties, Select a Page, Compatibility level na SQL Server 2000 i Owner na sa (chociaż domyślnie ustawiony był na moją nazwę z server name). Wygląda to na tym etapie tak





3. Teraz odpalam plik Query z bazą danych o nazwie Northwind_LAB (jest to Query na którym mam zrobić zadania ze szkoły)




4. Wpisuję USE Northwind na początku skryptu i klikam Execute i oto efekt



5. zmieniam więc nazwę bazy danych z samplami msdn o nazwie Northwind na Northwind z msdn i jeszcze raz robie Execute mojego Query Northwind_LAB. I tym razem wywala mi błąd, że Northwind not exist, a wcześniej marudził że Northwind name already exist





refresh na Databasesi żadna nowa baza danych o nazwie Northwind nie pojawia się











PS. Nie mam zamiaru prosić o zrobienie zadań ale może wypisanie ich pomoże skrócić załatwienie problemu:

Zad. 1
Odczytaj z tabeli Produkty nazwy towarów (kolumna Nazwa produktu) oraz
powiększone
o 20% ich ceny katalogowe (oblicz je na podstawie danych z kolumny Cena
katalogowa.
Zad. 2
Oblicz, ile dni upłynęło pomiędzy złożeniem a wysłaniem zrealizowanych zamowień
(rożnice między wartościami kolumn Data zamówienia i Data wysłania tabeli
Zamówienia).


Wiec może nie potrzebuję widzieć całego diagramu a konkretne tabele? Wiem, pewnie zadaje durne pytania.
mmmmmmm
1. Jeśli tworzysz bazę danych (a robisz to poleceniem CREATE DATABASE), to znaczy się że jej nie ma. Jeśli jest, to musisz ją wywalić, bo wtedy cały skrypt idzie w ...
Tworzysz bazę będąc na którejś bazie systemowej (model, master, bądź tempdb)
Jeśli wpiszesz PRZED utworzeniem bazy "USE ..." to oznacza, że masz "przenieść się" na tę bazę i w jej kontekście pracować... Ale skoro masz ją utworzyć, to logiczne jest, że jej nie ma. Więc "USE ..." przed utworzeniem bazy jest bezsensowne. Ba, powoduje błąd. Pewnie gdzieś po ALTER DATABASE ... masz "Use ..."
To tyle w kwestii tworzenia bazy danych.
2. Co do diagramó zaś, to nie są dzę, abyś je miał zapisane w tym pliku. Możesz mieć zapisane tworzenie PK i FK - na tej podstawie SSMS może wygenerować diagram. Ale nie jest on do szczęścia potrzebny.
3. Nie musisz mieć diagramu, aby napisać poniższe zapytania. CO więcej - nawet bazy nie musisz mieć, tak masz wszystko łądnie w tych zadaniach podane.
thepanone
jasne
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.