Ich möchte in einer DB einen korrupten Datensatz zu testzwecken importieren - nur leider haben bisher alle Versuche fehlgeschlagen.
Also folgendes Szenario:
Ich möchte einen bestehenden Datensatz mehr oder minder duplizieren.
Jedoch soll im duplizierten DS das Feld mit dem Uniqueidentifier leer sein. Und hierbei komme ich nicht drüber.
Vorerst habe ich die originale Tabelle mal exportiert bzw. kopiert und umbenannt. Und pfrimle jetzt daran herum bei einem Datensatz ein uniqueidentifier-feld auf leer zu setzen (kein wert drinn).
Und das will (berechtigerweise) nicht gelingen.Dennoch bräuchte ich so einen DS um einen Fehler zu reproduzieren.
Also folgendes Szenario:
Ich möchte einen bestehenden Datensatz mehr oder minder
duplizieren.
Jedoch soll im duplizierten DS das Feld mit dem
Uniqueidentifier leer sein. Und hierbei komme ich nicht
drüber.
also, wenn eine Unique-Constraint für die entsprechende Spalte in der Tabelle existiert, ist es generell nicht möglich, diesen Wert einfach zu löschen (die Spalte ist dann ja NOT NULLable).
Und das will (berechtigerweise) nicht gelingen.Dennoch
bräuchte ich so einen DS um einen Fehler zu reproduzieren.
Was für einen Fehler möchtest Du denn genau reproduzieren?
also erstmal vielen Dank für deine rasche Antwort !!!
Kunde hat es irgendwie geschafft bei der Geräte Anlage (via WEbAppl.) einen Doppelten Datensatzeintrag zu reproduzieren. Wie er das gemacht weiss Kunde natürlich nicht.
Fakt ist:
Es gibt 2 Datensätze, bei denen sensitive ID-Felder (aber kein Primärschlüssel oder UI-Felder) vollkommen gleich sind, Bezeichnung und andere DAten auch (ist aber nicht wichtig).
Es gibt im Grunde 3 IDs - eine ObjectId, eine UniqueID und eine VOB_ID und um diese VOB_ID geht es, denn dieses Feld hat den Datentyp ‚uniqueidentifier‘ und ist ein Primärschlüssel und ist systemweit unique.
Ich möchte nun diesen Fall reproduzieren, Indem ich einen Datensatz meiner DB dupliziere und eben a) das Feld VOB_ID leer ist und ein weiteres Feld (objectid) sollte den gleichen Eintrag wie ein bestehendes haben.
Ich möchte folgenden Datensatz kreiren:
UniqueID ObjectID Name Descr VOB_ID
12345678 5467811 xyz blabla
Die Schwierigkeit hierbei ist, daß auch ein Ändern der Beziehungen(Primärschlüssel weg) und Nullable angehackt keine Wirkung haben, da andere Tabellen diese Optionen nicht haben (Fehlermeldung: in Table xxx sind keine null-werte erlaubt o.ä.)
Im Grunde möchte ich alle Prüfungen der Tabelle und der Felder umgehen um irgendetwas reinschreiben zu können.
Versucht bisher habe ich schon, Tabelle exportieren, Eigenschaften ändern, Feld löschen. DS exportieren und re-importieren, sql-statements - funzen sowieso nicht u.v.m
wer toll wenn du ne idee hättest - oder jemand anderer - egal.
Im Grunde möchte ich alle Prüfungen der Tabelle und der Felder
umgehen um irgendetwas reinschreiben zu können.
Um welches Datenbanksystem handelt es sich denn? Bei MS SQL gibt es die NOCHECK Option, welche das ungeprüfte Einfügen erlaubt, bei DB2 wäre dies auch möglich (würde jedoch den Tablespace in einen CHECK-PENDING Status versetzen).
Weißt Du, in welcher Art und Weise der Kunde diesen Eintrag erzeugt hat? (INSERT oder LOAD)
Im Grunde möchte ich alle Prüfungen der Tabelle und der Felder
umgehen um irgendetwas reinschreiben zu können.
Um welches Datenbanksystem handelt es sich denn? Bei MS SQL
gibt es die NOCHECK Option, welche das ungeprüfte Einfügen
erlaubt
ja MS-SQL
Weißt Du, in welcher Art und Weise der Kunde diesen Eintrag
erzeugt hat? (INSERT oder LOAD)
also zu 99% war es ein insert stmt, die restlichen 1% beziehen sich darauf, daß weder der Kunde noch ich weiss wann und/oder bei welchem Vorgang das passiert ist.
Aber ich bin mir ziemlich sicher, daß es über das Webportal angelegt wurde und damit wurde insert benutzt.