02. juni 2003 - 11:18Der er
13 kommentarer og 2 løsninger
Afvikle VB script
Hej, jeg kan se i Enterprise Manageren at det er muligt at afvikle et VB script på SQL serveren, f.eks. hver uge osv under jobs... MEN, jeg er en del i tvivl om hvordan man helt gør med koden.
Jeg har nu oprettet mig som en operator og SQL Agent serveren kører og kan oprette jobs, men hvordan snakker med med SQL serveren i koden. Jeg har det som ASP kode, men den går vist ikke helt?
Eksempel:
Dim DSN Set Con = Server.CreateObject("ADODB.Connection") DSN = "DRIVER=SQL Server; SERVER=servernavn; UID=sa; PWD=test; DATABASE=test;" Con.Open DSN
Call Test()
Sub Test
Navnet = "Legepladsen"
SQL = "INSERT INTO TestTabel (Navn) VALUES('" & Navnet & "')" Con.Execute(SQL)
Jeg vil anbefale du tester dit script i Query analyzeren som det 1. og ser om det virker - husk xp_cmdshell ligger i master databasen, så når du anvender SP'em så skal du skrive master.dbo.xp_cmdshell 'bla., bla.'
Ligger DB'en hos en udbyder kan der være noget permissionsbøvl - det kan der oxo være hvis du selv hoster SQL'en....
hmm, ved ikke - i Query analyzeren kan man jo ikke som i VB have en masse connection strings osv med, men når man vælger et VB script kan den godt parse det uden problemer og SQL sætningen kan køres i Query analyzeren. Altså kan den godt køre den INSERT.
Når du laver en xp_cmdshell så startes der en 'kommando-prompt', helt udenfor SQL Server; dvs. du har ingenting med dig (udover at du i environment kan læse hvem xp_cmdshell kører som). Dvs. alle dine connection strings virker stadig. 'The job failed' kommer nok fra SQL Server Agent, og det tyder lidt på rettigheds-problemer som slash er inde på. Hvilken bruger kører du scriptet som? Der er forskel på om det er i Query Analyzer eller som job. Og hvem du 'bliver' afhænger af, hvilket OS du kører. Se remarks i xp_cmdshell i books online.
Det med rettigheder må jeg lige grave i for det synes jeg kager lidt rundt, kan ikke engang finde ud af at oprette en ny og tildele, så brokker den sig over det allerede findes selv om der kun er "sa" tilbage :)
zapzap, du vil ikke have lidt point for din hjælp også?
Håber de er fint fordelt, nu skal jeg slås med de rettigheder :D
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.