Editing Easy DB Help File

Jump to navigation Jump to search

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.

Latest revision Your text
Line 1: Line 1:
This is the Help "file" for the Python Application whose main page is: *'''[http://www.opencircuits.com/Python_Easy_DataBase_Project Python Easy DataBase Project - OpenCircuits ]'''.  You can also get a lot of information about how the program works by looking at the GUI and its explanation:  '''[[Easy DB GUI Images]]'''.
+
This is the Help "file" for the Python Application whose main page is: *'''[http://www.opencircuits.com/Python_Easy_DataBase_Project Python Easy DataBase Project - OpenCircuits ]'''
 +
 +
 
 +
Help file for Easy DataBase application ( Documentation for Ver7 ).  You can also get a lot of information about how the program works by looking at the GUI and its explanation:  '''[[Easy DB GUI Images]]'''.
  
  
Line 8: Line 11:
 
* Saves data to a sql lite database that you can use any way you wish.
 
* Saves data to a sql lite database that you can use any way you wish.
 
* Highly configurable.
 
* Highly configurable.
* Some of the terminology used here is covered in '''[[Basic Database Terminology]]'''
 
  
 
= Download and Install =  
 
= Download and Install =  
Line 67: Line 69:
  
 
=  How to Use the Parameter File =  
 
=  How to Use the Parameter File =  
* For general information see: [[Configuration Files For Python]].
+
See: [[Configuration Files For Python]]
* For detailed information read the file parameters.py.
 
 
 
 
 
 
You need a text editor suitable for .py files to manage the parameter file ( parameters.py )
 
You need a text editor suitable for .py files to manage the parameter file ( parameters.py )
This includes many text editors.  I particularity like:
+
This includes most text editors.  I particularity like:
  
 
*notepad++
 
*notepad++
Line 133: Line 132:
 
      
 
      
 
Save the file with a new name so it will not get overwritten the next time <Make Generic Input> is run.
 
Save the file with a new name so it will not get overwritten the next time <Make Generic Input> is run.
 +
  
 
Now we will edit the file for your new set of data.
 
Now we will edit the file for your new set of data.
Line 152: Line 152:
  
  
 +
     
 +
 
Now for the input file <Browse...> to the file you just made.
 
Now for the input file <Browse...> to the file you just made.
 
         you can use the <Edit File> button to look at the file again if you wish.
 
         you can use the <Edit File> button to look at the file again if you wish.
Line 167: Line 169:
 
         Select the table from the drop down ( dogs ) Then press <Select All>
 
         Select the table from the drop down ( dogs ) Then press <Select All>
 
         Your text editor should open with the output.
 
         Your text editor should open with the output.
 
== Report/Output Data ==
 
 
= In Depth =
 
This revisits some material already covered but in more depth.  Perhaps in a, or many, separate pages but  here for now.
 
 
== Table Creation ==
 
 
=== Table and Column Name Rules ===
 
 
Much the same rules apply to both table and column names:
 
 
* Use lower case.
 
* No spaces in names, do not start with a number, generally avoid non alphebetic characterss ( except _ )
 
 
* Names do not contain spaces tabs or weird characters
 
 
* the "_" character may be used in place of a space to make a name that would otherwise be two_words.
 
* Certain words are used by the sql language and are reserved for that, you cannot use them for table or column
 
names, some will be caught by the system ( more will be added as we trip across them ).  They include: like, where, select delete.....
 
 
==== if you do not follow the guidelines then ====
 
           
 
* the system may change your name to meet the guidelines ( excess spaces removed, spaces changed to underscore, case shifted to lower case.... ,
 
* you may get a helpful error message
 
*you may get odd unexpected results perhaps with an unhelpful error message or none at all.
 
 
    it takes a common form for lines in the systems files. These are of the
 
 
 
 
 
 
== Output/Reporting ==
 
Generally there are three aspects to output:
 
 
*What table and what columns from that table are used.
 
*What data is selected.
 
*What is the order of the data.
 
*What format is used for the data.
 
 
These are covered below.
 
 
=== Table and Columns ===
 
 
=== Selection Criteria ===
 
 
=== Sort Order ===
 
 
 
 
 
 
 
=== Output Formats ===
 
When running a query ( you could call it a report ) there are a variety of formats to choose between ( not including which columns.... which is part of Output Content ).  When you run a query the system tries to open the resulting file ( output is always to file, if you need printed output print the file ) in the approiapate viewer, often your text editor.
 
 
This list of formats may expand as I think of new options but as of now:
 
 
===== Table =====
 
 
Table is an ASCII sort of spreadsheet, each record is on a single line, | characters separate the columns.  Here is an example for the dogs scenario:
 
<pre>
 
#---------- file output from EasyDB Ver9:  2019_12_01.01
 
# sql =  SELECT ROWID, breed, dog_name, typical_weight FROM dogs  ORDER BY ROWID ASC
 
# select built from =
 
purpose:export
 
use_table: dogs
 
ROWID | breed | dog_n | typic
 
------------------------
 
1    | Poodl | Spike | 25 
 
2    | Wolf  | Mike  | 80 
 
3    | Sprin | Penny | 33 
 
4    | Mut  | Woof  | 200 
 
:======== eof footer ============
 
</pre>
 
 
This is a nice concise form of output as long as the output does not get wider than your printer or screen.  If you really want the data in a spreadsheet then use CSV output which is
 
easy to import into most spreadsheets.
 
 
==== Input ====
 
Input format makes the output look just like a cleaned up version of the input that would be necessary to input the data.  One major difference is that the purpose is listed as export.  This stops you from using it as input by mistake, you have to change the purpose to insert.
 
 
<pre>
 
#---------- file output from EasyDB Ver9:  2019_12_01.01
 
# sql =  SELECT ROWID, breed, dog_name, typical_weight FROM dogs  ORDER BY ROWID ASC
 
purpose:export
 
use_table: dogs
 
:====================
 
ROWID:1
 
breed:Poodle
 
dog_name:Spike
 
typical_weight:25
 
:====================
 
ROWID:2
 
breed:Wolf
 
dog_name:Mike
 
typical_weight:80
 
:====================
 
ROWID:3
 
breed:Springer
 
dog_name:Penny
 
typical_weight:33
 
:====================
 
ROWID:4
 
breed:Mut
 
dog_name:Woof
 
typical_weight:200
 
:==================== eof footer ============
 
</pre>
 
 
==== PyLog ====
 
Here all the output is sent to the Python log file.  The data will be mixed in with other logged information.
 
 
 
<pre>
 
2019-12-02 20:36:05,467 - App - DEBUG - sql =    SELECT ROWID, breed, dog_name, typical_weight FROM dogs  ORDER BY ROWID ASC
 
2019-12-02 20:36:05,468 - App - DEBUG - write_header()  self.col_names  ['ROWID', 'breed', 'dog_name', 'typical_weight']
 
2019-12-02 20:36:05,468 - App - Notice - #---------- SelectLogWriter output from EasyDB Ver9:  2019_12_01.01
 
self.table_info.sql =  SELECT ROWID, breed, dog_name, typical_weight FROM dogs  ORDER BY ROWID ASC
 
use_table:dogs
 
2019-12-02 20:36:05,469 - App - Notice - ============--------RowObject--------=====================
 
RowObject __str__()
 
edit_dict: {'ROWID': [1, None], 'breed': ['Poodle', None], 'dog_name': ['Spike', None], 'typical_weight': ['25', None]}
 
2019-12-02 20:36:05,469 - App - Notice - ============--------RowObject--------=====================
 
RowObject __str__()
 
edit_dict: {'ROWID': [2, None], 'breed': ['Wolf', None], 'dog_name': ['Mike', None], 'typical_weight': ['80', None]}
 
2019-12-02 20:36:05,469 - App - Notice - ============--------RowObject--------=====================
 
RowObject __str__()
 
edit_dict: {'ROWID': [3, None], 'breed': ['Springer', None], 'dog_name': ['Penny', None], 'typical_weight': ['33', None]}
 
2019-12-02 20:36:05,469 - App - Notice - ============--------RowObject--------=====================
 
RowObject __str__()
 
edit_dict: {'ROWID': [4, None], 'breed': ['Mut', None], 'dog_name': ['Woof', None], 'typical_weight': ['200', None]}
 
2019-12-02 20:36:05,469 - App - Notice - None
 
2019-12-02 20:36:05,469 - App - DEBUG - change_table_name =>>dogs<<
 
2019-12-02 20:36:05,473 - App - DEBUG - change_last_output_file_name easy_db.py_log
 
2019-12-02 20:36:05,487 - App - DEBUG - <<<<< Select complete <<<<<
 
</pre>
 
 
==== CSV ====
 
<pre>
 
ROWID breed dog_name typical_weight
 
1 Poodle Spike 25
 
2 Wolf Mike 80
 
3 Springer Penny 33
 
4 Mut Woof 200
 
 
</pre>
 
 
==== SQL ====
 
 
==== HTML ====
 
 
An HTML version of a table, much nicer to view than the ASCII version.
 
 
== Output Content ==
 
=== What Content ===
 
=== What Sort Order ===
 
  
 
= The GUI =
 
= The GUI =

Please note that all contributions to OpenCircuits may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see OpenCircuits:Copyrights for details). Do not submit copyrighted work without permission!

Cancel Editing help (opens in new window)