🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.bazy-danych
11 messages
11 total messages Started by =?UTF-8?Q?Cezary Fri, 05 Feb 2021 19:28
SQL Server zrzut bazy
#188684
Author: =?UTF-8?Q?Cezary
Date: Fri, 05 Feb 2021 19:28
15 lines
542 bytes
Witam.

Sorry za lamerskie pytanie, ale potrzebuje zrobić zrzut bazy w formie
czytelnej dla człowieka, żeby znaleźć w której konkretnie tabeli sa
zapisywane wartości. Tak, żeby się dało użyć grep (pewnie jakiegoś
odpowiednika z windy) i znaleźć.
Widze możliwość eksportu do pliku, ale tam trzeba podać tabelę, a jakbym
wiedział którą, to już bym tego nie potrzebował robić, od razu bym
zrobił SELECT ;)

Pomożecie? Grozi mi spisywanie z ekranu ok 100 wartości co miesiąc.


--
Cezary Grądys
czarekgr@wa.onet.pl
Re: SQL Server zrzut bazy
#188685
Author: Adam
Date: Fri, 05 Feb 2021 22:33
100 lines
2425 bytes
W dniu 2021-02-05 o 19:28, Cezary Gr±dys pisze:
> Witam.
>
> Sorry za lamerskie pytanie, ale potrzebuje zrobiæ zrzut bazy w formie
> czytelnej dla cz³owieka, ¿eby znale¼æ w której konkretnie tabeli sa
> zapisywane warto¶ci. Tak, ¿eby siê da³o u¿yæ grep (pewnie jakiego¶
> odpowiednika z windy) i znale¼æ.
> Widze mo¿liwo¶æ eksportu do pliku, ale tam trzeba podaæ tabelê, a jakbym
> wiedzia³ któr±, to ju¿ bym tego nie potrzebowa³ robiæ, od razu bym
> zrobi³ SELECT ;)
>
> Pomo¿ecie? Grozi mi spisywanie z ekranu ok 100 warto¶ci co miesi±c.
>
>


Zrzut bazy?

Mo¿e wystarczy Ci skrypt, pokazuj±cy ilo¶æ rekordów w tabelach, a
pó¼niej bêdziesz porównywa³ liczniki bazy starszej z nowsz±.


/*
--------------------------------------------------------------------------------
  Script      : ListTableInBase.sql
  Author     : Dariusz 'DBSoft' Brejnak (c) 2010
  Created   : 2010-09-01

  Skrypt wy¶wietla listê tabel zawartych w aktualnej bazie danych.
  Za pomoc± procedura sp_spaceused
  zwracane s± informacje o liczbie wierszy, wielko¶ci plików bazy danych
   w KB  lub obiektów bazodanowych i liczbie pustych stron w
  poszczególnych plikach.

  wynik:
  servername    basename        name          rows    reserved  data
index_size    unsed
  MSSQLEXPRESS    AdventureWorks    Address          19614        4984
2224           2472       288
  MSSQLEXPRESS    AdventureWorks    AddressType          6          48
    8             40         0
  MSSQLEXPRESS    AdventureWorks    AWBuildVersion      1          16
    8              8         0
  ........
*/

use Twoja_Baza_SQL

CREATE TABLE #tmp
  (
  [name] varchar(50),
  [rows] int,
  [reserved] varchar (20),
  [data] varchar (20),
  [index_size]varchar(20),
  [unsed] varchar(20)
  )
CREATE TABLE #tmprows
  (
  [servername] varchar(50),
  [basename] varchar(50),
  [name] varchar(50),
  [rows] int,
  [reserved] varchar (20),
  [data] varchar (20),
  [index_size]varchar(20),
  [unsed] varchar(20)
  )

INSERT #tmp EXEC sp_MSforeachtable 'exec sp_spaceused ''?'''

INSERT #tmprows SELECT @@SERVERNAME,
  DB_NAME(),
  [name],
  [rows],
  replace(reserved,'KB',''),
  replace(data,'KB',''),
  replace(index_size,'KB',''),
  replace(unsed,'KB','')
  FROM #tmp

SELECT [servername],
  [basename],
  [name],
  [rows],
  [reserved],
  [data],
  [index_size],
  [unsed]
FROM #tmprows
ORDER BY [name]

DROP TABLE #tmp
DROP TABLE #tmprows



--
Pozdrawiam.

Adam
Re: SQL Server zrzut bazy
#188686
Author: =?UTF-8?Q?Cezary
Date: Sat, 06 Feb 2021 09:12
21 lines
595 bytes
W dniu 05.02.2021 o 22:33, Adam pisze:

>
> Zrzut bazy?
>
> Mo¿e wystarczy Ci skrypt, pokazuj±cy ilo¶æ rekordów w tabelach, a
> pó¼niej bêdziesz porównywa³ liczniki bazy starszej z nowsz±.
>
>
> /*

Dziêki, w poniedzia³ek postaram siê sprawdziæ, ale pewnie nie zadzia³a,
raczej granta na tworzenie tabel i INSERT nie mam.
Mam wytypowan± jedn± tabelê z wzglêdnie du¿± liczb± wierszyn nawet
wydaje siê, ¿e wiem która kolumna, ale na razie machn±³em rêk±, bo
wartosci liczbowe s± typu varchar ;)
Ale kierunek dobry, mo¿na wszelkie ma³e tabele odrzuciæ.


--
Cezary Gr±dys
czarekgr@wa.onet.pl
Re: SQL Server zrzut bazy
#188687
Author: Adam
Date: Sat, 06 Feb 2021 15:14
40 lines
1118 bytes
W dniu 2021-02-06 o 09:12, Cezary Gr±dys pisze:
> W dniu 05.02.2021 o 22:33, Adam pisze:
>
>>
>> Zrzut bazy?
>>
>> Mo¿e wystarczy Ci skrypt, pokazuj±cy ilo¶æ rekordów w tabelach, a
>> pó¼niej bêdziesz porównywa³ liczniki bazy starszej z nowsz±.
>>
>>
>> /*
>
> Dziêki, w poniedzia³ek postaram siê sprawdziæ, ale pewnie nie zadzia³a,
> raczej granta na tworzenie tabel i INSERT nie mam.

Mo¿esz jeszcze raz, ale po polsku b±d¼ angielsku?
Nie bardzo rozumiem, co masz na my¶li.

> Mam wytypowan± jedn± tabelê z wzglêdnie du¿± liczb± wierszyn nawet
> wydaje siê, ¿e wiem która kolumna, ale na razie machn±³em rêk±, bo
> wartosci liczbowe s± typu varchar ;)
> Ale kierunek dobry, mo¿na wszelkie ma³e tabele odrzuciæ.
>

Mo¿esz tabelê albo wynik zapytania SELECT wyrzuciæ do pliku csv b±d¼ xml:

bcp "SELECT ... from ... [where ...] [ORDER BY ...]" queryout
"c:\pliki\plik.csv|xml"

dla xml dodaj w zapytaniu:
for xml raw, root('JAKIS_STRING')

Oczywi¶cie w pytaniu mo¿es zawrzeæ jeszcze inne warunki, np JOIN.
Ewentualnie choæby kursorem jechaæ, korzystaæ z dodatkowej tabeli i
szukaæ zmian.


--
Pozdrawiam.

Adam
Re: SQL Server zrzut bazy
#188688
Author: =?UTF-8?Q?Cezary
Date: Sun, 07 Feb 2021 12:39
34 lines
1020 bytes
W dniu 06.02.2021 o 15:14, Adam pisze:

> Mo¿esz jeszcze raz, ale po polsku b±d¼ angielsku?
> Nie bardzo rozumiem, co masz na my¶li.
>

Granta mam chyba tylko na SELECT i prawdopodobnie nic innego.


>
> Mo¿esz tabelê albo wynik zapytania SELECT wyrzuciæ do pliku csv b±d¼ xml:
>
> bcp "SELECT ... from ... [where ...] [ORDER BY ...]" queryout
> "c:\pliki\plik.csv|xml"
>


Problemem jest, ze nie wiem, która to tabela, muszê to ustaliæ, wtedy
nie bêdê potrzebowa³ tworzyæ plików, tylko od razu napiszê zapytanie.
Nie wiem co daæ we FROM...

Na razie wytypujê tabele maj±ce powiedzmy powy¿ej kilku tysiêcy wierszy
(na pewno ma³o ich bêdzie) i te tabele pobadam.

Konkretnie chcê znale¼æ odczyty liczników pr±du i ciep³a. Nawet nie mam
pewno¶ci, czy s± one trzymane w bazie, ale raczej tak. Bo jak tego nie
znajdê, to bêde musia³ spisywaæ z ekranu, na 2 komputer ;) Typowy sposób
w firmie, w której teraz pracujê ;)
Gdyby to by³ postgres to pg_dump|grep za³atwi³y by problem.



--
Cezary Gr±dys
czarekgr@wa.onet.pl
Re: SQL Server zrzut bazy
#188689
Author: Adam
Date: Sun, 07 Feb 2021 15:40
44 lines
1199 bytes
W dniu 2021-02-07 o 12:39, Cezary Gr±dys pisze:
> W dniu 06.02.2021 o 15:14, Adam pisze:
>
>> Mo¿esz jeszcze raz, ale po polsku b±d¼ angielsku?
>> Nie bardzo rozumiem, co masz na my¶li.
>>
>
> Granta mam chyba tylko na SELECT i prawdopodobnie nic innego.
>

Zdefiniuj pojêcie "grant".

>
>>
>> Mo¿esz tabelê albo wynik zapytania SELECT wyrzuciæ do pliku csv b±d¼ xml:
>>
>> bcp "SELECT ... from ... [where ...] [ORDER BY ...]" queryout
>> "c:\pliki\plik.csv|xml"
>>
>
>
> Problemem jest, ze nie wiem, która to tabela, muszê to ustaliæ, wtedy

Na znalezienie tabeli dosta³e¶ rozwi±zanie w pierwszym po¶cie.

> nie bêdê potrzebowa³ tworzyæ plików, tylko od razu napiszê zapytanie.
> Nie wiem co daæ we FROM...
>
> Na razie wytypujê tabele maj±ce powiedzmy powy¿ej kilku tysiêcy wierszy
> (na pewno ma³o ich bêdzie) i te tabele pobadam.
>
> Konkretnie chcê znale¼æ odczyty liczników pr±du i ciep³a. Nawet nie mam
> pewno¶ci, czy s± one trzymane w bazie, ale raczej tak. Bo jak tego nie
> znajdê, to bêde musia³ spisywaæ z ekranu, na 2 komputer ;) Typowy sposób
> w firmie, w której teraz pracujê ;)
> Gdyby to by³ postgres to pg_dump|grep za³atwi³y by problem.
>
>
>


--
Pozdrawiam.

Adam
Re: SQL Server zrzut bazy
#188690
Author: =?UTF-8?Q?Cezary
Date: Sun, 07 Feb 2021 17:24
14 lines
272 bytes
W dniu 07.02.2021 o 15:40, Adam pisze:
> Zdefiniuj pojêcie "grant".


No co tu definiowaæ? Komenda do nadawania uprawnieñ.

https://www.postgresql.org/docs/13/sql-grant.html

Mo¿e niezrecznie u¿yte, ale ka¿dy chyba wie o co chodzi.



--
Cezary Gr±dys
czarekgr@wa.onet.pl
Re: SQL Server zrzut bazy
#188691
Author: Adam
Date: Sun, 07 Feb 2021 18:26
21 lines
475 bytes
W dniu 2021-02-07 o 17:24, Cezary Gr±dys pisze:
> W dniu 07.02.2021 o 15:40, Adam pisze:
>> Zdefiniuj pojêcie "grant".
>
>
> No co tu definiowaæ? Komenda do nadawania uprawnieñ.
>
> https://www.postgresql.org/docs/13/sql-grant.html
>
> Mo¿e niezrecznie u¿yte, ale ka¿dy chyba wie o co chodzi.
>

Sorry, nie zna³em.
To mo¿e nastêpnym razem zacznij od tego, o jaki SQL Ci chodzi, bo nie
wszystko jest zgodne z ANSI.
Ja pisa³em w kontek¶cie MS-SQL.


--
Pozdrawiam.

Adam
Re: SQL Server zrzut bazy
#188692
Author: DarekPn
Date: Mon, 08 Feb 2021 20:12
25 lines
654 bytes
W dniu 07.02.2021 o 18:26, Adam pisze:
> W dniu 2021-02-07 o 17:24, Cezary Gr±dys pisze:
>> W dniu 07.02.2021 o 15:40, Adam pisze:
>>> Zdefiniuj pojêcie "grant".
>>
>>
>> No co tu definiowaæ? Komenda do nadawania uprawnieñ.
>>
>> https://www.postgresql.org/docs/13/sql-grant.html
>>
>> Mo¿e niezrecznie u¿yte, ale ka¿dy chyba wie o co chodzi.
>>
>
> Sorry, nie zna³em.
> To mo¿e nastêpnym razem zacznij od tego, o jaki SQL Ci chodzi, bo nie
> wszystko jest zgodne z ANSI.
> Ja pisa³em w kontek¶cie MS-SQL.
>
>

Dobre ;)

--
Ta wiadomo¶æ zosta³a sprawdzona na obecno¶æ wirusów przez oprogramowanie antywirusowe Avast.
https://www.avast.com/antivirus
Re: SQL Server zrzut bazy
#188693
Author: Adam
Date: Tue, 09 Feb 2021 12:58
49 lines
1242 bytes
W dniu 2021-02-08 o 20:12, DarekPn pisze:
> W dniu 07.02.2021 o 18:26, Adam pisze:
>> W dniu 2021-02-07 o 17:24, Cezary Gr±dys pisze:
>>> W dniu 07.02.2021 o 15:40, Adam pisze:
>>>> Zdefiniuj pojêcie "grant".
>>>
>>>
>>> No co tu definiowaæ? Komenda do nadawania uprawnieñ.
>>>
>>> https://www.postgresql.org/docs/13/sql-grant.html
>>>
>>> Mo¿e niezrecznie u¿yte, ale ka¿dy chyba wie o co chodzi.
>>>
>>
>> Sorry, nie zna³em.
>> To mo¿e nastêpnym razem zacznij od tego, o jaki SQL Ci chodzi, bo nie
>> wszystko jest zgodne z ANSI.
>> Ja pisa³em w kontek¶cie MS-SQL.
>>
>>
>
> Dobre ;)
>

Wiesz, ró¿ne ciekawostki wychodz±. Nawet w kontek¶cie ró¿nych wersji
tego samego silnika, jak chocia¿by AdHoc w MS-SQL, które mo¿na sprawdziæ np:

select objtype,
count(*) as number_of_plans,
sum(cast(size_in_bytes as bigint))/1024/1024 as size_in_MBs,
avg(usecounts) as avg_use_count
from sys.dm_exec_cached_plans
group by objtype

Natomiast polecenie
DBCC FREESYSTEMCACHE('SQL Plans')
dzia³a OIDP dopiero od wersji ms-sql 2008.

Te¿ mam ciekawe zapytania ze sk³adni±:

select ... where ... and 1=1 and ...

i bez tego 1=1 nie dzia³a. Nie wiem, dlaczego.
A nie znam innych wersji SQL, wiêc niechc±cy  mogê co¶ ¼le powiedzieæ.


--
Pozdrawiam.

Adam
Re: SQL Server zrzut bazy
#188694
Author: DarekPn
Date: Tue, 09 Feb 2021 20:14
55 lines
1550 bytes
W dniu 09.02.2021 o 12:58, Adam pisze:
> W dniu 2021-02-08 o 20:12, DarekPn pisze:
>> W dniu 07.02.2021 o 18:26, Adam pisze:
>>> W dniu 2021-02-07 o 17:24, Cezary Gr±dys pisze:
>>>> W dniu 07.02.2021 o 15:40, Adam pisze:
>>>>> Zdefiniuj pojêcie "grant".
>>>>
>>>>
>>>> No co tu definiowaæ? Komenda do nadawania uprawnieñ.
>>>>
>>>> https://www.postgresql.org/docs/13/sql-grant.html
>>>>
>>>> Mo¿e niezrecznie u¿yte, ale ka¿dy chyba wie o co chodzi.
>>>>
>>>
>>> Sorry, nie zna³em.
>>> To mo¿e nastêpnym razem zacznij od tego, o jaki SQL Ci chodzi, bo nie
>>> wszystko jest zgodne z ANSI.
>>> Ja pisa³em w kontek¶cie MS-SQL.
>>>
>>>
>>
>> Dobre ;)
>>
>
> Wiesz, ró¿ne ciekawostki wychodz±. Nawet w kontek¶cie ró¿nych wersji
> tego samego silnika, jak chocia¿by AdHoc w MS-SQL, które mo¿na sprawdziæ
> np:
>
> select objtype,
> count(*) as number_of_plans,
> sum(cast(size_in_bytes as bigint))/1024/1024 as size_in_MBs,
> avg(usecounts) as avg_use_count
> from sys.dm_exec_cached_plans
> group by objtype
>
> Natomiast polecenie
> DBCC FREESYSTEMCACHE('SQL Plans')
> dzia³a OIDP dopiero od wersji ms-sql 2008.
>
> Te¿ mam ciekawe zapytania ze sk³adni±:
>
> select ... where ... and 1=1 and ...
>
> i bez tego 1=1 nie dzia³a. Nie wiem, dlaczego.
> A nie znam innych wersji SQL, wiêc niechc±cy  mogê co¶ ¼le powiedzieæ.
>
>

W sumie moja uwaga dotyczy³a polecenia "grant". Nie wiedzia³em, ¿e to
taka egzotyka...

--
Ta wiadomo¶æ zosta³a sprawdzona na obecno¶æ wirusów przez oprogramowanie antywirusowe Avast.
https://www.avast.com/antivirus
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads