Unsupported Screen Size: The viewport size is too small for the theme to render properly.

Wish: Edit Blob Field In External Editor

forums forums SQLyog SQLyog: Bugs / Feature Requests Wish: Edit Blob Field In External Editor

  • This topic is empty.
Viewing 9 reply threads
  • Author
    Posts
    • #10317
      DonQuichote
      Member

      Dear webyog,

      It would be nice if I could edit the contents of a BLOB field in my favourite text editor (or even image editor for images). Using an external editor gives me more functionality which I am already used to, and frankly I do not need or want all possible data format support in a database frontend.

      So it would be good if both programs would do what they are best at and do so together: My text editor can edit, highlight, and syntax check all kinds of formats, and the database frontend gets it in and out of the database.

    • #23922
      peterlaursen
      Participant

      we have discussed that idea before.  I think first time about 2 years ago!!

      It is not plain easy!  because when data are stored in a BLOB filed there is no file and no file extension, so there is no information about what program to use.  You are welcome to detail …

      We have several issues with the BLOB viewer and with binary data in general (BIT type, VARBINARY).  We have given priority to other issues till now.  I hope that we can pay attention to this during the summer.

    • #23923
      DonQuichote
      Member
      peterlaursen wrote on May 4 2007, 10:23 PM:
      It is not plain easy! because when data are stored in a BLOB filed there is no file and no file extension, so there is no information about what program to use. You are welcome to detail …

      I am aware of the absence of a file type. However, I can set the type (syntax highlighter) in my editor, even when the extension is missing or belongs to another file type.

      The way I imagine the feature, you could right click on a text or blob field, select “edit with…” from the popup menu and give the path to an executable or select a path that was used before. That way, you could edit the blob field with any type of editor in just a few clicks, and do the type recognition yourself. SQLyog does not know the file type, but the user usually does.

      It should be possible to monitor either file changes or the presence of the editor program. Checking for the presence of the editor itself has the drawback that the editor could be already open before the editing, and can handle multiple documents or even enforce only one instance to be present. Monitoring file change has the drawback of updating only upon the first save action, or waiting forever if nothing is changed.

      If you are familiar with the program WinSCP (see http://winscp.net/ ), you have a nice example of how external editors can be called. There is more to an editor setting then just the path. for instance, you can configure if an editor is a multiple-document one. You could add an option to state a default extension for the temporary file with which it is called.

    • #23924

      Hello DonQuichote,

      I see a blob field as a name space http://en.wikipedia.org/wiki/Namespace

      If you want to store files in it. You should put a structure around the files. There was a project ( http://www.codeproject.com/KB/files/nfsLibrary.aspx ) that ‘mounted’ a file system in 1 file = 1 blob field. Only the project has been removed. Maybe you can zip the files you want to store in a blob field. If you want to read it, unzip the blob field. A zip file can contain more than 1 files.

      Greetings Jan Marco

    • #23925
      peterlaursen
      Participant

      We cannot not change a single bit in a BLOB (and not zip it either) – for the simple reason that it is the server that stores data and not the client.  If we manipulate what is stored it will fail wiht other clients (like web applications).

      Did I mess something?

    • #23926
      Quote:
      We cannot not change a single bit in a BLOB (and not zip it either) – for the simple reason that it is the server that stores data and not the client.

      It is quite normal that the client retrieves records from database server and the client could manipulate (insert, updata, delete) records (in the database server) also.

      Quote:
      If we manipulate what is stored it will fail with other clients (like web applications).

      Databases engines are made for manipulation of data (records etc). If there are more than one client on a database, you can give some client less access to the database. Only read rights, etc. Or put an “application server” between users and database.

    • #23927
      peterlaursen
      Participant

      People who use SQLyog will have one or more applications (web applications, adminsitrative applications etc.).  There is no need to use a GUI client (except for learning situations) if there is no other application – because there would be no data then.  The application(s) will be what *users* see – mostly only *maintainer(s)* will see data in SQLyog.  For that reason SQLyog will have to let data be *as they are*.

      Even this Forums itself would stop working if SQLyog changed data as stored by the Forums system.

    • #23928

      Hello Peter,

      Quote:
      People who use SQLyog will have one or more applications (web applications, adminsitrative applications etc.). There is no need to use a GUI client (except for learning situations) if there is no other application – because there would be no data then. The application(s) will be what *users* see – mostly only *maintainer(s)* will see data in SQLyog. For that reason SQLyog will have to let data be *as they are*.

      Even this Forums itself would stop working if SQLyog changed data as stored by the Forums system.

      Peter, You have good feedback.—) How you see the roadmap for SQLYog.

      My point of view: Mayor companies don’t use MySQL for their core business applications. They use Oracle, DB2 (IBM) or MS-SQL instead. A transaction monitor (for example ‘Tuxedo’, see http://en.wikipedia.org/wiki/Tuxedo_(software) ) is used to solve your stated problem above, see http://en.wikipedia.org/wiki/Transaction_processing_system also

      I think most people will install MySQL to store personal information on their own Personal Computer (PC) and use a GUI like “SQLyog” if they can use is very user friendly.

      Only for design discussion purpose, I made a desired_screendump.bmp to give an example what I mean. See include screendump also.

      Peter, My be you have advise for me. Other solutions, Is it realistic or not?

      My building blocks:

      1) Put SQLyog in OpenOffice Calc; (I haven’t compiled Calc yet);

      2) Make pop up menu (right mouse click) dynamical. Call the Qutecom Voip routines;

      3) Make splash screen, when one call your peer like “Qutecom”;

      4) Import all routines in Chrome (web browser (source code)) framework . (I have compiled Chrome and seems to me, very good source code).

      Greetings Jan Marco

    • #23929
      peterlaursen
      Participant

      I still don't know what options the ip-phone system has for interfacing with other programs so it is hard to tell if it is realistic. Adding the context menu item based on some condition is not hard.

      But still you should not expect us to take any such initiative. We are providing standardized software – we are not providing customized solutions.

    • #23930

      Hello Peter,

      Quote:
      But still you should not expect us to take any such initiative. We are providing standardized software – we are not providing customized solutions.

      It depends on how you look to the matter what is standard software components or not. I belief a lot of applications uses the ´same´ infrastructure components (like stun, openssl, memory watcher(Google Chrome), etc).

      An example of how I see the “Wish: Edit Blob Field In External Editor”:

      Notepad ( http://notepad-plus.sourceforge.net/uk/site.htm or http://www.flos-freeware.ch/notepad2.html ) could (I think) be merged with SQLyog code if an user want to work in one client application. The first project I prefer, maybe there are better one’s. See the screen dump “notepad_plus_interaction.zip” as an example what I suggest. Load file out of the content blob field in table ‘file’. After altering the file, restore the file in the blob field ‘content’, when clicking on option “save”. I retrieve the files from file system. The extension field is blank or has a ‘.’ character in front. If I use “filesystem_x” as extension field value, I could use a file system in the blob field ‘content’, with source code like ( http://code.google.com/p/whefs/ , http://nodadev.wordpress.com/nds-projects/efs-library/ and http://icculus.org/physfs/ )

      Greetings Jan Marco

Viewing 9 reply threads
  • You must be logged in to reply to this topic.