Jag kör mot en SQL 2000 databas och undrar hur man från ett recordset kan byta namn på en specifik tabell i databasen, typ: ALTER TABLE gammaltNamn RENAME nyttNamn; Det är det nog! man borde skulla göra något sånthär: Det finns inget sql-statement för detta, så man måste använda proceduren sp_rename Tack för hjälpen alla! Jag har löst det få följande sätt:Byta namn på tabell i SQL
<code>
<%
Set rsChangeTableName = Server.CreateObject("ADODB.RecordSet")
sSQL = "??? TABLE MittGamlaTabellNamn ??? MittNyaTabellNamn"
rsChangeTableName.Open, sSQL, objDbConn, 3, 3
%>
</code>
Har provat med RENAME, ALTER utan att lyckas.Sv: Byta namn på tabell i SQL
Vet dock inte om det är Mysqlspecifikt.Sv: Byta namn på tabell i SQL
"Syntax error in ALTER TABLE statement."
Fler förslag?
:-)Sv: Byta namn på tabell i SQL
<code>
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=Databasfil.mdb"
Connect.Execute("ALTER TABLE gammaltNamn RENAME nyttNamn")
</code>
är inte helt säker, men teoretiskt sätt tycker jag att det bore vara ungefär på det viset i alla fall...Sv: Byta namn på tabell i SQL
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/acdata/ac_8_con_03_9rar.asp
Varför kan du inte använda ett verktyg som enterprise manager för detta?Sv: Byta namn på tabell i SQL
<code>
<%
Set rsCopyTable = ...
sSQL = "SELECT * INTO MinNyaTabell FROM MinGamlaTabell"
rsCopyTable.Open sSQL, Conn, 3, 3
Set rsDropTable = ...
sSQL = "DROP TABLE MinGamlaTabell"
rsDropTable.Open, sSQL, Conn, 3, 3
%>
</code>
Alltså, när jag kopierar all data från en tabell till en som ej existerar så skapas den automatiskt, bra va? Sedan raderar jag den gamla.