![]() |
Datenbank: MS-SQL • Version: 12 • Zugriff über: noch offen
MS-SQL Logik
Liste der Anhänge anzeigen (Anzahl: 1)
Moin,
hier sind ein paar Fragen aufgetaucht. 1. uniques : CREATE TABLE dbo.ART11 ( ID int Unique Identity(1,1) NOT NULL, NR integer NOT NULL, BEZ varchar(50) NULL, PREIS decimal(15,2) NOT NULL, CONSTRAINT PKART11 PRIMARY KEY (ID) ) GO Was hat in diesem Zusammenhang das im Anhang zu bedeuten ? Ich meine unten das mit der langen Nr. Vergabe der IDs erledigt, habe das Identity übersehen. 8-) Allerding neue Frage : im Skript steht ja einmal int und einmal integer. Wo liegt der Unterschied ? 2. Vergabe von IDs Wie läuft das in MS-SQL ab ? 3. Wo bzw. wie sehe ich den Dateninhalt der Tabellen ? 4. Wie extrahiere ich ein Skript der kompletten Datenbank ? |
AW: MS-SQL Logik
Moin,
Identity Spalten sind per se unique, wie bei Firebird die Generatoren. Auch werden sie weitergezählt, wenn das SQL fehl schlägt. Als PK makiert und alles ist gut... Starten normalerweise ab eins und laufen dann hoch... Die Daten in der Tabelle kannst Du auswählen mit einer Abfrage im Abfrageeditor :) oder Du klickst mit der rechten Maustaste auf den Tabellennamen und kannst dann unter anderem "auswählen" oder "bearbeiten" auswählen. Die Beschränkung auf 1000/200 Zeilen kann man unter Optionen ändern, oder auf 0 stellen, ohne Beschränkung... Export: Den Datenbanknamen mit der rechten Maustaste anklicken, Skript auswählen und dann im Dialog bei Skriptoptionen Erweitert, dort gibt es den Eintrag "Datentypen, für die ein Skript erstellt wird" entweder Schema, Daten oder beides auswählen... Hoffe das hilft erst einmal weiter... VG Pixfreak |
AW: MS-SQL Logik
Liste der Anhänge anzeigen (Anzahl: 1)
Thx, langsam komme ich klar. Allerdings gelingt es mir nicht die KOMPLETTE DB in ein Script zu kriegen. Nur einzelne Tabellen etc. und ohne Daten. Rechte Maustaste auf DB-Name : siehe Anhang.
|
AW: MS-SQL Logik
Hallo Hansa,
sorry, da hab ich mich eben verschrieben... Wähle statt Skripts mal Tasks/Skripts generieren aus. Da kannst Du dann die DB als Skript erstellen lassen, allerdings standardmäßig nur mir den Metadaten. Wie in der ersten Antwort geschrieben im Wizzard unter Erweitert Schema und Daten auswählen. Ich hoffe es hilft, ansonsten ziehe ich mal ein paar Screenshots... VG Pixfreak |
AW: MS-SQL Logik
Zitat:
|
AW: MS-SQL Logik
- Rechtsklick auf die DB -> Tasks -> Generate Scripts
- Alle gewünschten Tabellen selektieren - Set Scripting Options auswählen --> Advanced - General -> Type of data to script - bei der Auswahl von Schema Only, Data Only, and Schema and Data das letzte auswählen. |
AW: MS-SQL Logik
Liste der Anhänge anzeigen (Anzahl: 2)
Hi,
und von Phoenix genannten Steps noch zwei Bilder von den "kritischen" Punkten...:-D 1. Auswahl durch Rechtsklick auf dem Datenbanknamen (Bild1) 2. Wie bereits geschrieben, einfach alles exportieren... 3. Unter Erweitert die Option Schema und Daten auswählen! (Bild2) 4. Ich würde "in neuem Abfragefenster speichern", dann ist das Skript direkt offen... Noch fragen, dann los... VG Pixfreak |
AW: MS-SQL Logik
Zm Screenshot 2: Die eigentlich wichtige Option für Schema und Daten ist die ÜBER der ausgeklappten Dropdown-Box :)
|
AW: MS-SQL Logik
Uff. Thx, jo geht jetzt. Auf dem zweiten Bild muss man aber eine Zeile rauf. Und da "nur Schema" umstellen auf z.B. "nur Daten". Bin schon an Delphi dran. Geht das mit ADO oder wie ? Bzw. welchen Provider/Treiber oder sonstwas muss man nehmen ? Und ich glaube der Connectionstring ist auch nicht so ganz ohne habe ich mal irgendwo gehört. 8-)
|
AW: MS-SQL Logik
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
(Mein Threadmodell muss ich in der Zuverlässigkeit noch verbessern) VG Pixfreak:oops::oops::oops: |
AW: MS-SQL Logik
Zitat:
VG Pixfreak |
AW: MS-SQL Logik
Ich habe jahrelang ADO und den jeweils aktuellsten native SQL Client verwendet.
Nie Sorgen gehabt. Jetzt baue ich diverse Projekte mit AnyDac. Der Grund ist aber nicht, dass die ADO Komponenten schlecht wären, sondern, dass ich die Projekte parallel auf Firebird und MSSQL deployen muss. Mit dem ConnectionString ist das eigentlich sehr leicht. In das Event OnWillConnect deiner ADO Connection:
Delphi-Quellcode:
Dann legst Du dir eine leere Textdatei mit der Fileextension .udl im Anwendungsverzeichnis an und klickst da doppelt drauf. Die Konfiguration ist dann selbsterklärend.
ConnectionString := 'FILE NAME = .\dblink.udl';
Vorteil ist, dass du den UDL beim Kunden leicht anpassen kannst und OnWillConnect immer greift, auch wenn die ADO Connection zur Entwurfszeit aktiv mit einer anderen DB verbunden war. |
AW: MS-SQL Logik
Zitat:
Zur Auswahl steht allerdings u.a.: SQLNCLI11. Könnte das nicht für SQL-Network-Client 11 stehen ? Das steht auch in MS-SQL 12 !! so in etwa irgendwo. |
AW: MS-SQL Logik
Der SQL-Server native Client 11 ist perfekt.
Zitat:
Der Konfigurationsdialog für den "universal DataLink" ist seit Windows 95 in jedem Windows dabei... Über Rechtsklick > Eigenschaften kommst Du auch nicht an die Provider- und Verbindungseinstellungen heran? |
AW: MS-SQL Logik
Zitat:
Die Datei muss wirklich leer sein (0 Bytes). Steht da irgend etwas drin, was nicht UDL ist, kommt o.g. Meldung. |
AW: MS-SQL Logik
[QUOTE=Hansa;1181602]
Zitat:
VG Pixfreak |
AW: MS-SQL Logik
Zitat:
Was ist denn da noch falsch ? |
AW: MS-SQL Logik
Zitat:
Ein Connectionstring sieht idealerweise so aus:
Code:
Das wäre im Fall dass Du Windows Authentication verwendest (als DB-User wird der Windows-User genommen, in dessen Context die Applikation läuft). Das ist der Trusted_Connection - Teil. Wenn Du anstelle dessen named user verwenden willst (diese Mixed-Mode authentication bei der installation muss da angestellt worden sein), dann muss da anstelle von Trusted_Connection=Yes entsprechend User ID=username;Password=DasPasswort
Provider=MSDASQL;Server=localhost;Database=Northwind;Trusted_Connection=Yes
Falls die Datenbank nicht in der Default-Instanz liegt, dann muss Server=RECHNERNAME\INSTANZNAME angegeben werden. Also z.B. localhost\SQLEXPRESS Andere Beispiele findest Du auch hier: ![]() |
AW: MS-SQL Logik
Zitat:
In der UDL Datei ist definiert, welcher Provider, welcher Server, welche Instanz welche Authentifizierung und wie die Verbindung erfolgt. Der "File Name" Verweis auf den universal Datalink hat nichts mit lokalen Datenbanken zu tun. Letztendlich ist es ja nur eine "Verknüpfung" zu einer definierten Datenquelle. Also UDL und den "klassischen ConnectionString" nicht mischen... Entweder legst du die DB-Config "statisch" in der Anwendung fest. (etwa so)
Code:
oder du gibst in deiner Anwendung an, in welcher UDL Datei die Datenbankverbindung definiert ist
Provider=MSDASQL;Server=localhost;Database=Northwind;Trusted_Connection=Yes
(etwa so)
Code:
ConnectionString := 'FILE NAME=test.udl';
|
AW: MS-SQL Logik
Ich nutzen ausschliesslich ADO.NET, da hab ich mit udl's nix am hut. Hansa hatte aber bei DefaultDatabase den Pfad zur MDF-Datei eingetragen, und das ist irgendwie.. suboptimal. :)
|
AW: MS-SQL Logik
Zitat:
das kann .Net mit dem SQL Server Compact irgendwie machen ... Aber bisher Null Erfahrung damit gesammelt ... |
AW: MS-SQL Logik
hansa nur ein hinweis, ich wollte dire gerade etwas senden:
Zitat:
|
AW: MS-SQL Logik
Hat hiermit jetzt nichts zu tun ! Das zum Thema neu gepostete guck ich mir morgen an.
Insgesamt 500 PNs sind mir allerdings tatsächlich viel zu wenig. Da ist aber Daniel gefordert. :mrgreen: 500 hört sich erst mal viel an, aber in meinem Fall (z.B. Organisation Bundestags-Besichtigung) da kommt schon viel zusammen. Man muss jeden anschreiben, dann kommt Antwort "habe Interesse". Dann kommt "muss eventuell absagen". Rückfragen usw. Der Bundestag schickt einen Leitfaden, was man darf und was nicht. Das muss weitergeleitet werden an alle Interessenten, von denen man gar keine reguläre email-Adressse hat. Ich glaube sogar, dass ich jedem Interessiertem meine normale email-Adresse per PN zugeschickt habe, weil ich die Personalausweisnr. weiterleiten musste und die PNs auch damals schon voll waren. 8-) |
AW: MS-SQL Logik
Importiere die PN in dein neues MS-SQL und schon hast Du genügend Daten zum spielen ;-)
(Ich weiß, eine selten dämliche Brücke, um zurück zum Thema zu kommen) |
AW: MS-SQL Logik
Zitat:
Delphi-Quellcode:
So steht das in der DFM. Und sieh an, in einem DBgrid sehe ich jetzt "Alfreds Futterkiste". :mrgreen: Aber, was hat das jetzt zu bedeuten, dass das komplett anders aussieht, als in dem Connection-String von Phoenix ?
object con1: TADOConnection
Connected = True ConnectionString = 'Provider=SQLNCLI11.1;Integrated Security=SSPI;Persist Security I' + 'nfo=False;User ID="";Initial Catalog="";Data Source="";Initial F' + 'ile Name="";Server SPN=""' DefaultDatabase = 'Northwind' Provider = 'SQLNCLI11.1' |
AW: MS-SQL Logik
Nungut.. der Provider ist austauschbar. Kommt halt drauf welche zur Verfügung stehen.
Eigentlich solltest Du alle Werte im Connectionstring die leer sind auch komplett weg lassen können. Wenn du IntegratedSecurity=SSPI verwendest (das sollte allerdings identisch zu Trusted_Connection=True bzw. Trusted_Connection=Yes sein, je nach Provider versteht der eine halt verschiedene Variationen mehr oder weniger), brauchst Du die User ID z.B. nicht. Database in meinem String ist Initial Catalog in Deinem und wird aber von dem DefaultDatabase Property direkt nach dem Connectionstring gleich wieder überschrieben. Von daher sollte das passen. |
AW: MS-SQL Logik
So siehts aus. Minimalistischer gehts nicht mehr:
Delphi-Quellcode:
con1.ConnectionString := 'Provider=SQLNCLI11.1;Integrated Security=SSPI;';
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:05 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz