Har nu suttit i en vecka och gjort administreringssidor för den databas jag råkar använda på varje site. Jag använder phpMyAdmin då jag har behov av det. Men den är ju gjord till Mysql, så den kanske inte hjälper dig. MySQL används här med och även MSSQL tillsammans med deras adminverktyg. Men om man vill ha en webhanterad administration, som fallet är om man har en nyhetssite eller motsvarande så kvarstår problemet. > Hur kan man göra för att ta reda på om hur en databas är uppbyggd? Tjenare Charlie!! :) Fränt å träffa på dig här :) Tjaa!!! Hmm... Tjenare Charlie! Men tjaa SNils!!Lätt databasadministrering sökes.
Kruxet är ju väl känt?
Nästan identiska sidor oberoende av site men med små skillnader vad gäller sökväg till databasen, om man använder Access. Eller olika connectionstrings om man använder DSN.
-Finns det ingen som har hittat på nåt allmänt sätt att göra detta på?
D.v.s. kolla upp databastabellerna å ta reda på vilka fält som finns å vilken typ de är. Jag vet ingen som gjort det men fler måste ha samma problem som jag. Hur har ni löst det?
Tacksam för svar.
/CharlieSv: Lätt databasadministrering sökes.
Men annars är det ju inte så svårt att skriva en egen, förutsatt då att Access fattar kommandona SHOW TABLES; och DESCRIBE <tabell>;Sv: Lätt databasadministrering sökes.
Hur kan man göra för att ta reda på om hur en databas är uppbyggd?
(JAG vet ju...)
Detta för att kunna göra nån slags allmänna algoritmer för att bygga upp sidor som man kan administrera sin databas med.
Det är ju trot allt ett begränsat antal uppgifter som är aktuella i allmänhet:
Lägga till nya poster
Ta bort befintliga poster
Ändra befintliga poster
samt
Visa alla poster
Fortfarande undrande...
(...eller måste jag sätta mig att distribuera programvara för att administrera databaserna?)Sv: Lätt databasadministrering sökes.
SHOW TABLES; och DESCRIBE <tabellnamn>;Sv: Lätt databasadministrering sökes.
Har du kollat in Microsofts ADOX objekt? Med det kan du ställa till det mesta i databasen :)
Jag har dock bara använt det till MSSQL. Om det fungerar med MySQL beror ju på providern de gjort.... så det vågar jag inte säga.
Plitade ihop ett litet exempel där jag bara listar alla vanliga tabeller i pubs databasen och varje tabells kolumner, och det är inga problem att ta reda på typer för kolumnerna heller, kruxet där är ju att det finns så många typer, men det räcker ju att kolla mot dem man vet med sig att man använder :)
<SCRIPT LANGUAGE=vbscript RUNAT=Server>
dim sCN, sCatalog, t, c, sNumTables, sNumColumns
set sCN = Server.CreateObject("ADODB.Connection")
set sCatalog = Server.CreateObject("ADOX.Catalog")
sCN.Open "Provider=SQLOLEDB.1;Initial Catalog=pubs;Data Source=(local)", "sa", ""
set sCatalog.ActiveConnection = sCN
sNumTables = sCatalog.Tables.Count - 1
for t = 0 to sNumTables
if sCatalog.Tables(t).Type = "TABLE" then
Response.Write "<p><table border=""1""><tr>" & _
"<td><b>" & sCatalog. Tables(t).Name & "</b></td></tr>"
sNumColumns = sCatalog.Tables(t).Columns.Count -1
for c = 0 to sNumColumns
Response.Write "<tr><td>" & sCatalog.Tables(t).Columns(c).Name & "</td></tr>"
next
Response.Write "</table></p>"
end if
next
sCN.Close
set sCatalog = nothing
set sCN = nothing
</SCRIPT>
Hoppas det var till nytta!
/LaniSv: Lätt databasadministrering sökes.
Hur bra var inte det där scriptet!
Hade ingen aning om de där rutinerna.
Skitbra. Nu kan jag göra allmänna databasadminsidor.
Gå in å kolla på www.undanbedes.nu/curry
det är den siten som ska databasstyras b.la.
/CharlieSv: Lätt databasadministrering sökes.
Testade att lägga till följande:
sCatalog.Tables(t).Columns(c).Type
detta resulterar i att man får reda på fälttypen, men i sifferform.
Nu ere ju inget problem att härleda tillbaks till min tabell vad det är för typ, men nyfiken som jag är så undrar jag ju om det finns nån förteckning på vad siffrorna är för datatyper egentligen...
/Charlie, igen.Sv: Lätt databasadministrering sökes.
Coolt o träffa dig här :).
Har faktiskt setat o lekt lite med ADOX förut och i samband med det så gjorde jag en funktion för att hålla reda på datatyperna. Återigen så är det MSSQL som gäller för min del men jag hoppas att det kan vara till nytta iaf. Håll tillgodo:
<%
Public Function DType(DTypeID)
Select Case DTypeID
Case 20
DType = "BigInt"
Case 128
DType = "Binary"
Case 11
DType = "Boolean"
Case 129
DType = "Char"
Case 6
DType = "Currency"
Case 135
DType = "DateTime"
Case 5
DType = "Float"
Case 72
DType = "UniqueId"
Case 3
DType = "Integer"
Case 205
DType = "Image"
Case 201
DType = "Text"
Case 203
DType = "NText"
Case 131
DType = "Decimal"
Case 4
DType = "Real"
Case 2
DType = "SmallInt"
Case 17
DType = "TinyInt"
Case 204
DType = "VarBinary"
Case 200
DType = "VarChar"
Case 12
DType = "SQL_Variant"
Case 202
DType = "NVarChar"
Case 130
DType = "NChar"
End Select
End Function
%>
Hittade en konverteringstabell på http://www.able-consulting.com/ADODataTypeEnum.htmSv: Lätt databasadministrering sökes.
Fixade en egen typ av function som gjorde samma sak.
Men tack ändå!
Klurigt att alla gamla ek3:or blir M$ programmerare.
Jaja, så kan det gå. :-)