|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Sep 2006
Messaggi: 35
|
CLR stored procedure SQLServer 2005
Salve,
mi sono avvicinato da poco alle stored procedure clr. Una volta averle implementate, non riesco a mandarle in esecuzione. In pratica il processo di debug di visual studio mi genera il seguente messaggio: L'esecuzione del codice utente in .NET Framework è disabilitata. Abilitare l'opzione di configurazione "clr enabled". Per ovviare al problema ho eseguito le seguenti istruzioni da SqlServer Management Studio: EXEC sp_configure 'clr enabled', 1; RECONFIGURE WITH OVERRIDE; GO Purtroppo, non riesco ugualmente ad eseguirle. Come potrei fare? |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jan 2000
Città: Provincia di Parma
Messaggi: 724
|
Innanzitutto, dai un'occhiata a queste linee generali:
http://msdn2.microsoft.com/en-us/library/ms345136.aspx Una volta compilato il tuo assembly (e abilitata la CLR Integration come hai già fatto), dovrai referenziarlo all'interno del database: USE tuodb CREATE ASSEMBLY nomeassembly FROM 'tuoassembly.dll' WITH PERMISSION_SET=SAFE Fatto questo puoi creare una stored procedure che referenzia il metodo/i metodi nel tuo assembly: CREATE PROCEDURE usp_nomeproc AS EXTERNAL NAME FQDNNomeMetodo deve FQDN è il nome completo del metodo (namespaces compresi) Puoi ora eseguire la stored procedure come una qualsiasi altra: EXEC usp_nomeproc
__________________
My Pc: Case Enermax Chakra - PSU Corsair HX520 - Gigabyte P35-DS3R - Core2 Duo E6550 - 6 Gb RAM Geil PC800 - 2x WD Caviar SE 320Gb (Raid1) - Xfx GeForce 8600Gt - Master Pioneer DVR111D - Samsung SM T220 - S.O. Windows 7 Ultimate x64 SP1 My blog: http://blogs.ugidotnet.org/alby |
|
|
|
|
|
#3 |
|
Member
Iscritto dal: Sep 2006
Messaggi: 35
|
In pratica le operazioni che mi dici di fare prima di madare in esecuzione la stored procedure le faccio tutte tramite vs2005 con pochi click e alla fine producono lo stesso risultato. Fino qua ci sono. Il problema è che la storedprocedure la riesco a mandare in esecuzione solo da SqlServer Management Studio con il seguente comando:
EXECUTE nomestoredprocedure. Io ho bisogno di mandarla in esecuzione da una pagina web, quindi di chiamare questa stored procedure dal .cs di una pagina web. E' questo quello che non riesco a fare. Spero di essere stato chiaro. Saluti Aldo. |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Jan 2000
Città: Provincia di Parma
Messaggi: 724
|
Per mandarla in esecuzione dal tuo programma C# dovrebbe bastare un normale SqlCommand
Codice:
SqlConnection conn = new SqlConnection("<connectionstring>");
SqlCommand cmd = new SqlCommand("usp_nomeproc", connection);
cmd.ExecuteNonQuery();
cmd.Dispose();
connection.Dispose();
__________________
My Pc: Case Enermax Chakra - PSU Corsair HX520 - Gigabyte P35-DS3R - Core2 Duo E6550 - 6 Gb RAM Geil PC800 - 2x WD Caviar SE 320Gb (Raid1) - Xfx GeForce 8600Gt - Master Pioneer DVR111D - Samsung SM T220 - S.O. Windows 7 Ultimate x64 SP1 My blog: http://blogs.ugidotnet.org/alby |
|
|
|
|
|
#5 |
|
Member
Iscritto dal: Sep 2006
Messaggi: 35
|
Ho risolto. In pratica ho semplicemente modificato la stringa di connessione al database. Ho eliminato l'attach inserendo l'initial catalog con l'SSPI come integration security. Il problema riguardava i permessi. In pratica in questo modo ho il pieno controllo del db, invece che utilizzare un'istanza utente generica.
Ciao e grazie lo stesso per l'aiuto. |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 23:02.



















