Visualizzazione dei risultati da 1 a 6 su 6

Discussione: bulk insert permission

  1. #1

    bulk insert permission

    salve a tutti

    ho creato una stored procedure con un bulk insert

    codice:
    set quoted_identifier off
    declare @posizione_file varchar(100)
    declare @str varchar(500)
    select @posizione_file = ' "' + posizionefile + ' "' from bulkdiscli
    print @posizione_file
    set @str="bulk insert tempdiscli
    from " + @posizione_file + " 
    with ( formatfile = 'x:\discli.fmt', batchsize = 10000 )"
    exec (@str)
    insert offertedettaglio (rifofferta, paragrafo, articolo, qta)
    SELECT dbo.bulkdiscli.indiceoff, dbo.tempdiscli.gruppo, 
        dbo.tempdiscli.codice, dbo.tempdiscli.qta
    FROM dbo.bulkdiscli, dbo.tempdiscli
    delete from tempdiscli
    delete from bulkdiscli
    quando la eseguo io (è richiamata da una pagina asp) nessun problema, ma invece q1uando l'esegue l'utente da questo errore

    Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
    [Microsoft][ODBC SQL Server Driver][SQL Server] "\\Sbssacea\x\sacea\Gruppi\TCC\Marco.Z\OAC\GO\242. OAC "
    /INTRANET/Commerc/crm/supervisore/bombelli/offerte4.asp, line 12


    la linea 12 della pagina offerte4.asp è l'execute della stored procedure che ho riportato sopra

    ho controllato tutte le tabelle e le query che vengono influenzate dalla mia stored procedure, e le permission sono tutte corrette (cioè l'utente ha permessi select update, delete ecc) però c'è da dire che io sono l'admin del dominio e del sql server.. quindi presumo sia un problema di permission... ho controllato anche le permission del file formato ('x:\discli.fmt') qualcuno sa dirmi come mai mi da quell'errore?

    grazie

  2. #2
    Utente di HTML.it L'avatar di Gioba66
    Registrato dal
    Jun 2002
    Messaggi
    2,189
    Only members of the sysadmin and bulkadmin fixed server roles can execute BULK INSERT.
    Tutti vogliono parlare, nessuno sa ascoltare.

  3. #3
    grazie gioba, tra l'altro io uso sql 7.0 e quindi la figura di bulkadmin non esiste neanche e sarei quindi costretto a dare all'utente permessi di sysadmin.

    che voi sappiate non c'è modo per aggirare questa cosa, magari specificando nella stored procedure l'utente che esegue il bulk insert, o un altro metodo per ottenere lo stesso risultato?

    si può ad esempio utilizzare la bcb utility?

  4. #4
    Utente di HTML.it L'avatar di Gioba66
    Registrato dal
    Jun 2002
    Messaggi
    2,189
    io userei i dts
    dai un'occhiata qui
    http://www.sqldts.com/default.aspx?102
    Tutti vogliono parlare, nessuno sa ascoltare.

  5. #5
    grazie per il consiglio

    sarei grato anche se potessi chiarirmi questo mio dubbio:

    io associo le dts a esportazioni / importazioni che faccio solo una volta o che cmq pianifico a orari e giorni precisi. (questo perchè le creo col wizard attraverso l'enterprise manager)
    La mia necessità è che l'importazione del file di testo debba essere fatta in seguito a un input preciso dell'utente (nel senso non c'è un ora precisa in cui va importato il file; c'è un programma che genera questo tipo di file che poi l'utente va a selezionare e quindi importare).
    Inoltre il nome e la posizione del file sono variabili. l'unica costante è quindi il formato.

    Con il bulk insert riuscivo a fare tutto ciò, le dts mi permetteranno di fare altrettanto?

    grazie mille

  6. #6
    Utente di HTML.it L'avatar di Gioba66
    Registrato dal
    Jun 2002
    Messaggi
    2,189
    sì, lo puoi fare senza problemi.
    Tutti vogliono parlare, nessuno sa ascoltare.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.