Newsgroup: it.lavoro.informatica
Titolo: [OT] Stored Procedure

Scusate l'OT ma sto cercando di qua e di là ma non trovo nulla di utile in
giro:
posso ad una stored procedure passare come parametro il server, database,
utente e password al quale connettersi e far agire la Stored Procedure su
quel database?
Praticamente ho una Stored Procedure sul database Computer1.A. Viene
chiamata da un programma (non nostro) che le passa tutti i dati riferiti al
database Computer2.B; questa Stored Procedure deve scrivere dei dati sulle
tabelle di Computer2.B.
Non posso scrivere dentro alla Stored Procedure il database poichè può
cambiare da installazione ad installazione...
Grazie,
Alessandro
-- 
Alex {per email metti '[IOPOSSO]' nell'oggetto}
"D'ogni cosa la parte ritiene in sé la natura del tutto. "
(Leonardo Da Vinci)

 quel database?
su sqlserver hai la possibilità di giocare con i linked server, ma
sarebbe utile capire se i server devono essere linkati dinamicamente o se
sono sepre gli stessi 2/3/4/100
ciao

 o se sono sepre gli stessi 2/3/4/100
Direi che la situazione è quella che ti ho detto, credo proprio così cioè
con 2 soli pc
con due soli database...
quindi si può fare?


 Alessandro
Andrea

 Correggi e riposta :D
:-P
<<Non posso scrivere nel codice della Stored Procedure il nome del database
fisso poichè cambierà da installazione a installazione>>


 fisso poichè cambierà da installazione a installazione>>
-.-
Non mi riferivo a questo, mi riferivo ad informazioni di poco
conto come ad esempio il motore DB utilizzato, versione,
piattaforma, linguaggio di supporto, versione di quest'ultimo,
ecc, insomma dettagli insignificanti, sai... :D
Andrea

versione di quest'ultimo,
Boh!
Non basta dire: SQL-SERVER 2000?


 Non basta dire: SQL-SERVER 2000?
Direi proprio di no :D
Andrea

 utile in giro:
Ecco come ho fatto sa può essere utile ad altri:
Ecco qui come ho fatto, direi che funge: (al posto della riga INSERT metti
quello che vuoi direi...)
CREATE PROCEDURE CreaMovimentiDiMagazzino
  @server nvarchar(50),
  @DatabaseName nvarchar(50),
  @user nvarchar(50),
  @password  nvarchar(50)
AS
set nocount, ansi_nulls, Ansi_Warnings  on
declare @Name varchar(36)
declare @Exec varchar(1000)
set @name=convert(varchar(36),newid())
exec sp_addlinkedserver @server=@Name,
@srvproduct='',@provider='SQLOLEDB', @datasrc=@server
exec sp_addlinkedsrvlogin @Name, 'false', NULL, @user, @password
set @Exec='INSERT INTO [' + @Name +'].' + @DatabaseName +
'.dbo.MN_MovimentiMagazzino (IdMovimento,CauMov) VALUES (999,"Ale")'
exec sp_droplinkedsrvlogin @Name, NULL
exec sp_dropserver @Name
GO


 '.dbo.MN_MovimentiMagazzino (IdMovimento,CauMov) VALUES (999,"Ale")'
MagoNET!!!!!!!!!!! 
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaaaaagggggggggggggghhhhhhhhhhhhhhhhhhhhhhhhhhh!
-- 
johnplayer
email
it

Direi proprio di no :D
Oddio, adesso mi spiazzi. Peché, vorresti dire che il T-SQL non è
dipendente dalla versione di DBMS (aderenza allo standard ANSI a
parte)? Cioè, so che fra DBMS di differenti versioni può cambiare, ma
fra SqlServer 2000 e SqlServer2000spX?
--
Ciao!
Luca Menegotto

 Luca Menegotto
Andrea

 quindi si può fare?
guarda sp_add_linked_server (o qualcosa del genere, vado amemoria)
leggi la guida e dovresti risolvere il problema


AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaaaaagggggggggggggghhhhhhhhhhhhhhhhhhh
hhhhhhhh!
Com'è che lo conosci?


 
Ho a che fare da 4 anni con le tabelle di magoxp e con i woorm e presto 
inizierò anche con MagoNet.
-- 
johnplayer
email
it

 presto inizierò anche con MagoNet.
Siamo sulla stessa barca!
Noi siamo centro di sviluppo e adesso c'è da fare il porting dei verticali
da MagoXP a MagoNET...
un bagno di sangue...
