Aktuelle Zeit: 10.12.2018 10:28

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]




Ein neues Thema erstellen Auf das Thema antworten  [ 17 Beiträge ]  Gehe zu Seite 1, 2  Nächste
Autor Nachricht
 Betreff des Beitrags: PB.Ex MSSQL (Windows)
BeitragVerfasst: 09.03.2018 23:29 
Offline
Moderator
Benutzeravatar

Registriert: 05.10.2006 18:55
Wohnort: Rupture Farms
Hallo,

mit dieser Bibliothek ist es möglich, ohne ODBC auf MSSQL-Datenbanken zuzugreifen und SQL-Abfragen (z.B. Select, Insert Into, Update, Drop Table, ...) auszuführen.

Funktionen:
  • ExecuteSQLQuery()
    • Syntax:
      Code:
      Result = ExecuteSQLQuery(ConnectionString$, SQL$, Timeout, @Output, @ErrorOutput)

    • Beschreibung: Führt eine SQL-Abfrage aus.
    • Parameter:
      1. ConnectionString$: Verbindungsdaten für den Server und für die Datenbank.
      2. SQL$: SQL-Code zum Ausführen einer Abfrage.
      3. Timeout: Zeit in Sekunden, wie lange maximal auf den Vorgang gewartet werden soll. Wenn 0 angegeben wurde, dann wird so lange gewartet, bis der Vorgang fertig ist.
      4. @Output: Das Ergebnis der Abfrage wird im XML-Format in die String-Variable gespeichert.
      5. @ErrorOutput: Falls ein Fehler auftritt, wird die Fehlermeldung in die String-Variable gespeichert.
    • Rückgabewert:
      • 0: Der Vorgang war erfolgreich.
    • Beispielcode:
      Code:
      EnableExplicit

      Define PBEx_MSSQL

      CompilerIf #PB_Compiler_Processor = #PB_Processor_x86
        PBEx_MSSQL = OpenLibrary(#PB_Any, "PB.Ex_MSSQL_x86.dll")
      CompilerElseIf #PB_Compiler_Processor = #PB_Processor_x64
        PBEx_MSSQL = OpenLibrary(#PB_Any, "PB.Ex_MSSQL_x64.dll")
      CompilerEndIf

      If PBEx_MSSQL
        Prototype ExecuteSQLQuery(ConnectionString.p-Unicode, SQL.p-Unicode, Timeout, Output, ErrorOutput)
        Define ExecuteSQLQuery.ExecuteSQLQuery = GetFunction(PBEx_MSSQL, "ExecuteSQLQuery")
       
        Define Output$ = Space(1000000)
        Define ErrorOutput$ = Space(1024)
       
        If ExecuteSQLQuery("Server=YourServer;Database=YourDatabase;User Id=YourUsername;Password=YourPassword;", "SELECT * FROM MyTable", 0, @Output$, @ErrorOutput$) = 0
          ParseXML(1, Output$)
          FormatXML(1, #PB_XML_WindowsNewline | #PB_XML_ReFormat | #PB_XML_ReIndent)
          Debug ComposeXML(1)
        Else
          Debug "Error: " + ErrorOutput$
        EndIf
       
        CloseLibrary(PBEx_MSSQL)
      EndIf


Systemvoraussetzungen:
  • Windows XP oder höher
  • .NET Framework 3.5 oder höher
  • Unicode-Aktivierung (standardmäßig ab PB 5.50)
Da das benötigte .NET Framework ab Windows 7 standardmäßig vorinstalliert ist und auf XP und Vista installiert werden kann, sollte das kein Problem sein, diese Version zu verwenden.
Es ist keine Assembly-Registrierung mit regasm.exe mit Administratorrechten notwendig wie bei COMatePLUS.

Lizenz: Diese DLL-Datei ist kostenlos und darf ohne Namensnennung und ohne Link zur Homepage sowohl privat als auch kommerziell verwendet werden.

Download: http://www.rsbasic.de/downloads/downloa ... _MSSQL.zip
Ich würde mich über Feedbacks, Verbesserungsvorschläge, Fehlermeldungen oder Wünsche sehr freuen. Danke :)

_________________
BildBildBildBildBildBild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PB.Ex MSSQL (Windows)
BeitragVerfasst: 10.03.2018 16:29 
Offline
Benutzeravatar

Registriert: 18.09.2004 20:53
Wohnort: Gelsenkirchen / NRW
Ist die DLL Etwa in .net ??? Wundert mich schon die ganze Zeit das man diese in PB verwenden kann :-| hat da jemand nähere infos für mich ?


( Sorry für den Offtopic :-D )

_________________
Mein Blog | CDN für Jquery & UI


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PB.Ex MSSQL (Windows)
BeitragVerfasst: 10.03.2018 17:29 
Offline
Moderator
Benutzeravatar

Registriert: 05.10.2006 18:55
Wohnort: Rupture Farms
Meine DLL habe ich in C# mit .NET geschrieben, ja.

_________________
BildBildBildBildBildBild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PB.Ex MSSQL (Windows)
BeitragVerfasst: 11.03.2018 09:48 
Offline
Benutzeravatar

Registriert: 29.08.2004 08:48
RSBasic hat geschrieben:
Meine DLL habe ich in C# mit .NET geschrieben, ja.

jetzt wirds interessant.
Normalweise kann man mit c# ja keine 'standard DLLs' erstellen die man direkt
aus PB heraus aufrufen könnte.

Was hast du anders gemacht das die .NET assemblies aufgerufen werden können ?

Kennst du das hier:
http://www.purebasic.fr/english/viewtop ... 13&t=70308

oder hast du das womöglich weitergeführt mit Erfolg ?

Ich bin immerhin seit über 16 Jahren in der .NET Welt zuhause.........

_________________
Rings hat geschrieben:
ziert sich nich beim zitieren


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PB.Ex MSSQL (Windows)
BeitragVerfasst: 12.03.2018 00:30 
Offline
Benutzeravatar

Registriert: 18.09.2004 20:53
Wohnort: Gelsenkirchen / NRW
Interessiert mich auch mega.... das würde alle meine Projekte die ich für Kunden betreibe zurück zu Purebasic bringen :-) Da ich die Kernkomponenten in c# Schreiben könnte.

Gibt es Tutorials oder Beispiele wie man in c#DLLs für Purebasic realisiert :bounce: :bounce: :bounce: :bounce: ?

_________________
Mein Blog | CDN für Jquery & UI


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PB.Ex MSSQL (Windows)
BeitragVerfasst: 12.03.2018 10:08 
Offline
Moderator
Benutzeravatar

Registriert: 05.10.2006 18:55
Wohnort: Rupture Farms
Ich habe hier im Forum immer öfters gelesen, dass es angeblich nicht möglich sei, bis ich mal selber ausprobiert habe. Zuerst wollte ich einen Dreipunkt erzeugen (PB -> C++-DLL -> C#-DLL), aber dann stellte ich fest, dass es gar nicht notwendig ist. Man kann auch direkt in C# eine .NET-DLL erstellen, die man in PB nutzen kann.
Das Zauberwort lautet DLLExport. (Managed Code > Unmanaged Code)
Das wars schon. Warum ist noch niemand darauf gekommen?

Mit .NET hat man deutlich mehr Möglichkeiten und mein Ziel meiner PB.Ex-Bibliotheken ist es, Funktionen, die man wahrscheinlich in PB nie haben wird, bereitzustellen, damit man diese auch in PB nutzen kann. PB kann leider so viele Sachen nicht, die eigentlich im Jahr 2018 Standard sein sollte, wie z.B. SFTP, WMI o.ä.
Dann kann niemand (Nicht-PB-User) mehr sagen, dass PB nicht mit der Funktionalität einer anderen Sprache mithalten kann. :D

Meine DLLs werden zwar gedownloadet (Interesse besteht), aber ob es funktioniert oder ob es dem User gefällt, bekomme ich allerdings nicht. :D Ich würde mich über Feedbacks sehr freuen. Auch gern über Wünsche über zukünftige Funktionen.

_________________
BildBildBildBildBildBild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PB.Ex MSSQL (Windows)
BeitragVerfasst: 12.03.2018 12:27 
Offline
Benutzeravatar

Registriert: 29.08.2004 08:48
Danke für deine Informationen.

_________________
Rings hat geschrieben:
ziert sich nich beim zitieren


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PB.Ex MSSQL (Windows)
BeitragVerfasst: 12.03.2018 16:51 
Offline
Benutzeravatar

Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9
Hi Ray,

erstmal vielen Dank für Deine DLL! :allright:

Bin heute erst dazu gekommen, zu testen.

Das Ergebnis ist allerdings falsch geschachtelt. Ich bekomme z.B. sowas hier:

Code:
<?xml version="1.0" encoding="UTF-16"?>

<Records>
  <Record>
    [Daten]
    <Record>
      <Record>
        [Daten]
        <Record>
          <Record>
            [Daten]
            <Record/>
          </Record>
        </Record>
      </Record>
    </Record>
  </Record>
</Records>


Grüße ... Peter

_________________
ƃᴉɹǝᴉʍɥɔs ʇsᴉ ɥɔɐɟuᴉǝ


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PB.Ex MSSQL (Windows)
BeitragVerfasst: 12.03.2018 18:15 
Offline
Benutzeravatar

Registriert: 25.09.2016 01:42
RSBasic hat geschrieben:
...Ich würde mich über Feedbacks sehr freuen. Auch gern über Wünsche über zukünftige Funktionen.


Wäre es möglich eine *.lib beizulegen um das einbinden zu verbessern/vereinfachen?
(Ich meine keine statischen *.lib 's !!!)

Code:
Import "PB.Ex_MSSQL_x64.lib"
  ExecuteSQLQuery(ConnectionString.s, SQL.s,Timeout.i,*Output,*ErrorOutput)
EndImport

Import "PB.Ex_Speech_x64.dll"
  TextToSpeaker(Text.s,Voice.s,Speed.i,Volume.i,Asynchronous.i,*ErrorOutput)
  TextToAudioFile(Text.s,Voice.s,Speed.i,Volume.i,SaveFilePath.s,*ErrorOutput)
  SpeechRecognition(WordArray.i,WordArraySize.i,*ErrorOutput)
  WaitSpeechRecognition(*RecognizedWord)
EndImport


Ist so schöner und komfortabler :)

Testen konnte ich leider keine der Bibliotheken (hab dafür keine Anwendung).
Sehr freundlich von dir die Bibliotheken bereitzustellen - danke :allright:


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PB.Ex MSSQL (Windows)
BeitragVerfasst: 12.03.2018 18:50 
Offline
Benutzeravatar

Registriert: 01.04.2007 20:18
Mijikai hat geschrieben:
RSBasic hat geschrieben:
...Ich würde mich über Feedbacks sehr freuen. Auch gern über Wünsche über zukünftige Funktionen.


Wäre es möglich eine *.lib beizulegen um das einbinden zu verbessern/vereinfachen?
(Ich meine keine statischen *.lib 's !!!)

Code:
Import "PB.Ex_MSSQL_x64.lib"
  ExecuteSQLQuery(ConnectionString.s, SQL.s,Timeout.i,*Output,*ErrorOutput)
EndImport

Import "PB.Ex_Speech_x64.dll"
  TextToSpeaker(Text.s,Voice.s,Speed.i,Volume.i,Asynchronous.i,*ErrorOutput)
  TextToAudioFile(Text.s,Voice.s,Speed.i,Volume.i,SaveFilePath.s,*ErrorOutput)
  SpeechRecognition(WordArray.i,WordArraySize.i,*ErrorOutput)
  WaitSpeechRecognition(*RecognizedWord)
EndImport


Ist so schöner und komfortabler :)

Testen konnte ich leider keine der Bibliotheken (hab dafür keine Anwendung).
Sehr freundlich von dir die Bibliotheken bereitzustellen - danke :allright:


Ja, die .lib Dateien zum importieren würde ich auch begrüssen.

_________________
PureBasic 5.46 LTS / 5.62 (Windows x86/x64) | Windows10 Pro x64 | Z370 Extreme4 | i7 8770k | 32GB RAM | iChill GeForce GTX 980 X4 Ultra | HAF XF Evo​​


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 17 Beiträge ]  Gehe zu Seite 1, 2  Nächste

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 6 Gäste


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.

Suche nach:
Gehe zu:  

 


Powered by phpBB © 2008 phpBB Group | Deutsche Übersetzung durch phpBB.de
subSilver+ theme by Canver Software, sponsor Sanal Modifiye