SPiNMedlem sedan mars 20005 832 inlägg Hej!
Finns det något sätt att lista alla tabeller i en databas? Antingen med en SQL-sats eller ASP...
I PHP skriver man juh simpelt mysql_list_tables("databas") och lite till för utskriften...
Någon som vet något bra sätt?
------------------
SPiN, bjorne.w@telia.com
@ndersMedlem sedan juni 200026 914 inlägg japp, kör den lagrade proceduren sp_tables så får du fram alla objekt du kan fråga på, tillsammans med dess typer. alltså, tabeller, procedurer och vyer.
mvh,
------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>
SPiNMedlem sedan mars 20005 832 inlägg Okey, gr8... Men jag förstår inte riktigt hur du menar.
Inte SQLquery = "sp_tables" och in i ett recordset väl? Eller?
------------------
SPiN, bjorne.w@telia.com
@ndersMedlem sedan juni 200026 914 inlägg jojomen!
alternativt exec sp_tables.
------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>
SPiNMedlem sedan mars 20005 832 inlägg Okey, fan va schysst :)
Men jag får det juh tyvärr inte att funkar...
Checka koden nedan, jag vet inte riktigt hur jag ska få ut alla tabeller!
<%
set objC = Server.CreateObject("ADODB.Connection")
objC.Open "Driver={SQL Server};SERVER=min_host;UID=användare;PWD=lösenord;DATABASE=min_databas"
sSQL = "exec sp_tables"
set objRS = objC.Execute(sSQL)
For Each field in objRS.Fields
Response.Write field & "<br>"
Next
objRS.Close
set objRS = Nothing
objC.Close
set objC = Nothing
%>
------------------
SPiN, bjorne.w@telia.com
[Redigerat av SPiN den 19 jan 2001]
SPiNMedlem sedan mars 20005 832 inlägg Ehhm.. Kanske om man lägger in en loop tänkte jag, och så lätt var det :e
Så nu får jag det att funka, tackar :)
Men jag får ut mer information än jag vill iofs, först databas, tabelltyp, tabellnamn och typ. Finns det nåt lätt sätt att ta ut bara tabellnamnet, eller måste jag splitta strängen jag får ut?
------------------
SPiN, bjorne.w@telia.com
@ndersMedlem sedan juni 200026 914 inlägg du kan väl slänga in en if-sats i ditt asp-script?
if objRs(3) = "TABLE" then response.write objRs(2) & "<br>"
mvh,
------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>
@ndersMedlem sedan juni 200026 914 inlägg förresten, det är inte tabelltyp du får ut, utan ägare till objektet. denna är oftast dbo, database owner.
om du vill kolla tabeller i en annan databas är det bara att du kombinerar din fråga ovan med en use-fråga:
sSQL = "USE dbDatabas" & vbCrLf & "exec sp_tables"
mvh,
------------------
<A HREF="http://cartman.nu" TARGET=_blank>
if i'm not back in five minutes, just wait longer.</A>
SPiNMedlem sedan mars 20005 832 inlägg Toppen!!!
Hur menar du med objrs(3)?
Jag splittade upp strängen jag fick i en array för varje loop, och om array(3) = "TABLE" skulle den skriva ut array(2) som var tabellnamnet. Men med objrs(3) och objrs(2), funkar det likadant? Alltså som arrays eller?
Tack så jättemycket för hjälpen ivf!
------------------
SPiN, bjorne.w@telia.com