webForumDet fria alternativet

Snabb hjälp! SQL Server.

9 svar · 473 visningar · startad av trexter

trexterMedlem sedan mars 20021 889 inlägg
#1

Nej, inte delete-problem. ;)

Jag har flyttat över ett system till skarp miljö på riktig SQL-server. Där skapade jag en ny tabell TillTillverkare men får felmeddelandet nedan när jag försöker komma åt den:

Microsoft OLE DB Provider for ODBC Drivers error '80040e37' 
[Microsoft][ODBC SQL Server Driver][SQL Server]Invalid object name 'TillTillverkare'.

Är det någon inställning man måste göra för tabellen som krävs, som redan är gjord för de andra tabellerna som fanns där från början?

:)

LaspMedlem sedan juli 200012 980 inlägg
#2

Kolla åtkomsträttighet på den tabellen resp de andra du har.

trexterMedlem sedan mars 20021 889 inlägg
#3

Jag får fortfarande

Microsoft OLE DB Provider for ODBC Drivers error '80040e37' 
[Microsoft][ODBC SQL Server Driver][SQL Server]Invalid object name 'TillTillverkare'.

Jag har gått in på inställningar och tillåtit hela alltet, select, insert osv.

Fortfarande är det så att det går bra att komma åt de gamla tabellerna.

@ndersMedlem sedan juni 200032 969 inlägg
#4

... och du är säker på att du ansluter till rätt databas?
Dvs har du kommit ihåg att ändra din connectionstring i koden?

SjodahlMedlem sedan maj 20033 218 inlägg
trexterMedlem sedan mars 20021 889 inlägg
#6

nix, någat annat fel i connectionsträngen, men det löste sig.
:)

Dock en annan sak. I det oskarpa systemet så fungerar

strSQL = "insert into ArendeStatus (ArendeStatus_Arende, ArendeStatus_Status, ArendeStatusDatum) VALUES ("&Request.QueryString("ArendeID")&", 4, '"&Now()&"')"

men i det skarpa sparas en etta i stället för en fyra.
Måste jag tillåta "public" att göra inserts också för att få det att fungera - eller är det något annat??

:)

SjodahlMedlem sedan maj 20033 218 inlägg
#7

Inte så hemma på databaser men jag antar att fältet "ArendeStatus_Status" är av typen "int" inte "text/varchar",

Om det inte är av typen int, och du skickar in 4, så känner den väl inte igen det eller ngt och sätter default värdet som kanske är 1 ;)

(mycket vild chansing ;))

Snart kommer @nders med rätt svar :h

trexterMedlem sedan mars 20021 889 inlägg
#8

En fundering.
De tidigare tabellerna (som redan fanns) "accessades" via stored
procedures. Rättigheterna på dessa tabellerna är endast select.
Kanske jag måste ändra där?

Men å andra sidan är det kosntigt för att på ett annat ställe i koden lyckas jag göra en insert med

strSQL = "insert into ArendeStatus (ArendeStatus_Arende, ArendeStatus_Status, ArendeStatusDatum) VALUES ("&intArendeID&", 3, '"&Now()&"')"

Så den verkar alltså acceptera en 3 men inte en 4. :q

Vad blir resultatet om man försöker göra en insert - om det är förbjudet av sql server - hoppar den bara över eller ger ett felmeddelande?

trexterMedlem sedan mars 20021 889 inlägg
#9

Okej. Uppdatering:

Nu, helt plötsligt, går det inte att göra några updates eller inserts längre. (Dock verkade det gå till TillTillverkare som rättigheter till update, inserts osv.) Men jag får inget felmeddelande.

- Får man inget felmeddelande om man inte har rättighterna på som krävs?

Om det beror på rättighetstjaffs ser jag att det finns två lösningar.

1. Skriva om ALL SQL-kod till SP.
2. Höjer "publics" rättigheter till att få göra update, insert och delete.

Kommer dessa fungera? Innebär tvåan en säkerhetsrisk?
Eller finns det någon annan lösning?

:)

trexterMedlem sedan mars 20021 889 inlägg
#10

ingen?

129 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)