Haluan hakea merkkijonoa tietokannassa olevien sarakkeiden nimistä.
Työskentelen kunnossapitoprojektissa ja joissakin käsittelemissäni tietokannoissa on yli 150 taulukkoa, joten etsin nopeaa tapaa tehdä tämä.
Mitä suositteletko?
Kommentit
- vastaava kysymys kysytään SO
- hyvä artikkeli. Kiitos paljon. Käytin myös TM Field Finderia ja se ' on todella tehokas SQL Schema -haun ja myös tietojen suhteen.
- Liittyvät: Tietokantamallisi tutkiminen SQL: n avulla
Vastaus
Seuraavan kyselyn avulla voit luetteloida kaikki sarakkeet tai hakusarakkeet tietokannan taulukoista.
USE AdventureWorks GO SELECT t.name AS table_name, SCHEMA_NAME(schema_id) AS schema_name, c.name AS column_name FROM sys.tables AS t INNER JOIN sys.columns c ON t.OBJECT_ID = c.OBJECT_ID WHERE c.name LIKE "%EmployeeID%" ORDER BY schema_name, table_name;
Voit käyttää information_schema -näkymiä kaikkien objektien luettelointiin SQL Server 2005- tai 2008 -tietokannoissa.
SELECT * FROM information_schema.tables SELECT * FROM information_schema.columns
http://blog.sqlauthority.com/2008/08/06/sql-server-query-to-find-column-from-all-tables-of-database/
Vastaa
Siellä on myös SQL Search – ilmainen työkalu, joka integroituu SQL Server Management Studioon.
kommentit
- SQL-haku on hyvä työkalu, mutta pidä mielessä, että tulosikkuna on mielivaltaisesti rajoitettu mielestäni 250 tulokseen. Viime kerralla, kun käytin tätä työkalua, Punaisella portilla ei ollut tapaa poistaa tätä rajoitusta. Tästä huolimatta se on edelleen erittäin hyödyllinen työkalu, ja suosittelen sitä kaikille SQL Server DBA: lle tai kehittäjille. Myös hinta on oikea!
Vastaa
Myöhäinen mutta toivottavasti hyödyllinen, koska molemmat työkalut ovat ilmaisia.
ApexSQL-haku – tämän työkalun hyvä asia on se, että se voi myös etsiä tietoja, näyttää riippuvuuksia esineiden välillä ja liittää muita hyödyllisiä asioita.
SSMS-työkalupakki – ilmainen kaikille versioille paitsi SQL 2012. Paljon hienoja vaihtoehtoja, jotka eivät liity vain hakuun, kuten katkelmat, erilaiset mukautukset ja paljon muuta.
Vastaa
Tätä kaikki vanhan ajan SQL-DBA: t käyttävät.
EXEC sp_help "your table name";
Jos vain yhdellä rivillä, sinun ei tarvitse edes kirjoittaa EXEC. Tee vain
sp_help "your table name"