Hej.
Går det i MS Sql Server att ge en tabell ett extra namn, typ ett alias. Det jag vill är följande:
En tabell, tex "Ordrar" ska få ett alias "Orders" så att båda dessa sql:er skulle funka:
delete from Ordrar where id = 1;
delete from Orders where id = 2;
Man kan ju göra en View, men det skulle endast gå att läsa från denna, inte köra insert/update/delete.
Hej igen. Här kommer förklaringen till varför jag vill ha det som jag vill ha det!
Jag har ett program som arbetar mot en databas. En ny version av programmet ska utvecklas, och det ska arbeta mot samma databas. Samtidigt som det nya programmet ska utvecklas ska även databasen styras upp, tabeller ska få nya bättre namn. Det jag vill är att båda programmen ska fungera utan att ändra i koden i det gamla programmet.
Det gamla programmet ska köra sin gamla fråga: delete from Ordrar where id = 1;
Det nya programmet ska köra sin fråga mot nya tabellnamnet: delete from Orders where id = 1;
Man skulle kunna göra en helt ny databas till nya programmet, och sen konvertera datan i gamla databasen mot nya, men det är i detta fallet inte en möjlighet, både nya och gamla programmet måste arbeta mot exakt samma databas.
Vyer skulle fungera halv kan man säga. Alla select-satser i gamla programmet skulle funka, men insert/update/delete skulle behöva ändras, vilket är något som jag vill undvika om det är möjligt.
Du har en tabell som heter ordrar. Du skapar en ny tabell som heter orders, flyttar data från den gamla tabellen, tar bort den gamla tabell och skapar en vy med samma namn definierad med samma kolumner som den gamla tabellen. Sen kan du göra insert/update/delete på din vy. Om du har skillnader i datatyper eller liknande så kan du hantera det i en instead of trigger definierad på vyn.
Känner igen det där problemet med att man vill förbättra namnen på en databas som är i drift. Snygg lösning med vyer. Finns det nåt liknande sätt att göra med MySQL, tror inte det stödjer vyer än så länge?
Att man kunde köra /insert/update/delete på vyer hade jag faktiskt inte en aning om. Tillsammans med Instead of-triggers så löser det mitt problem.
Tack!
136 ms totalt · 3 externa anrop · v20260731065814-full.55e59744