Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Problem mit multiplen INSERTS in MS-SQL Datenbank

Frage Entwicklung Datenbanken

Mitglied: diwaffm

diwaffm (Level 2) - Jetzt verbinden

01.11.2011 um 14:41 Uhr, 3502 Aufrufe, 2 Kommentare

Beim Versuch Daten per VB-Skript in eine MS-SQL Datenbank treten Fehler auf - ebenfalls beim manuellen Insert via SQL Server Management Konsole

hi Leute,

ich habe ein Skript, mit dem seit mehreren Jahren Daten aus einer lokalen Access-Tabelle auf einen MS-SQL Server geladen werden.
Probleme gab es damit bisher eigentlich keine - und wenn, dann lagen Sie an den Daten, wenn z.B. ein Anführungszeichen in einem Textfeld stand.

Diese Fehlerquellen habe ich inzwischen beseitigt.

Nun macht das Skript aber aktuell wieder Probleme:
Der IIS meldet "Falsche Syntax in der Nähe von 'Lauf'.
/Folder/dateiname.asp, line 141

In Zeile 141 steht
[code]
objRSSQL.open strSQL, objConSQL
[/code]

In der SQL-Anweisung (Inhalt von strSQL) gibt es aber weder ein Feld, das 'Lauf' heißt. Im einzufügenden Inhalt, könnte das aber durchaus vorkommen.
Deshalb habe ich mir die Werte von strSQL durch das Skript auflisten lassen und in einen Editor kopiert.
"Lauf" kommt in 408 INSERTs 190x vor.

Nun habe ich die INSERTs kopiert und in das SQL-Fenster der SQL-Management-Konsole kopiert. Nach bestätigung der Fehlermeldung "Analyse von Abfragetext nicht möglich" werden die Inserts aber abgearbeitet.
Bis nach einiger Zeit die Melding kommt "Fehlermeldung: Zeile 255: Falsche Syntax in der Nähe von 'Lauf'"

Nun steht in Zeile 255 nirgens das Wort "Lauf". Lediglich "lauf" als Wortbestandteil kommt vor.
Und wenn ich Zeile 255 einzeln ins SQL-Fenster kopiere, wird der Insert korrekt ausgeführt.

Kopiere ich anderer Zeilen einzeln, so werden diese auch korrekt ausgeführt.
Kopiere ich mehrere Zeilen, so werden einige korrekt ausgeführt, andere aber nicht. Wobei sich diese dann wieder importieren lassen, wenn ich sie einzeln ausführe oder in anderer Kombination.
So funktioneren z.B. die Zeilen 250 bis 259 ohne Problem - auch im "Paket".

So langsam weiß ich nicht mehr, wo ich noch suchen soll...

Any Ideas

Danke

Dirk
Mitglied: MadMax
02.11.2011 um 12:46 Uhr
Hallo Dirk,

die fehlerhafte Zeile hast Du genau identifiziert nehme ich an (durch doppelklick auf die Fehlermeldung im Management Studio). Wenn die Daten nicht zu geheim sind, könntest Du diese Zeile und noch zwei, drei drumrum vielleicht mal hier zeigen, das vereinfacht die Sache vielleicht.

Ohne die Daten gesehen zu haben, könnte ich mir vorstellen, daß da irgendwo ein Hochkomma rumsteht, das da stört.

Gruß, Mad Max
Bitte warten ..
Mitglied: diwaffm
02.11.2011 um 12:54 Uhr
Ich habe in der Zwischenzeit ein einfaches Fehlermanagement in das Skript eingebaut:

01.
		ON ERROR RESUME NEXT 
02.
		objRSSQL.open strSQL, objConSQL 
03.
		nFehler=ERR.Number 
04.
		If nFehler = 0 THEN 
05.
                  response.write "Datensatz gespeichert" 
06.
                ELSE 
07.
                  response.write "Fehler beim Speichern<br>"&strSQL 
08.
                END IF
So habe ich mir die Zeilen ausgeben lassen, bei denen es zu einem Fehler kam.
Witzigerweise stimmten deren Zeilennummern nicht mit den im Management Studio angegebenen überein.

Fehlerursache waren, wie Du vermutest, 2 Hochkomma.
Diese lasse ich nun vor dem Speichern in HTML-Enteties übersetzen - und schon funktioniert es...

Merci

dirk
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

(1)

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

Ähnliche Inhalte
Festplatten, SSD, Raid
Vergleich zweier SSD-Typen im Raid-10 für den Anwendungsfall SQL-Datenbank (8)

Frage von DerWoWusste zum Thema Festplatten, SSD, Raid ...

Datenbanken
MS-SQL-Server + T-SQL+Batch (4)

Frage von kallewirsch zum Thema Datenbanken ...

Heiß diskutierte Inhalte
DSL, VDSL
DSL-Signal bewerten (13)

Frage von SarekHL zum Thema DSL, VDSL ...

Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (9)

Frage von JayyyH zum Thema Switche und Hubs ...

Backup
Clients als Server missbrauchen? (9)

Frage von 1410640014 zum Thema Backup ...

Windows Server
Mailserver auf Windows Server 2012 (9)

Frage von StefanT81 zum Thema Windows Server ...