Building a database with Kexi
Probing Data with Queries
In addition to persisting data, a database derives information via a query. As mentioned at the outset, it's typical to write queries in SQL, but that's not particularly natural for the ordinary user. Kexi, again like Access, provides a graphical interface in which you can construct queries.
Now I'll show you how to build a query that will summarize all of the scores that have been recorded. To produce the summary, the student's name is drawn from the students table, the assignment details are drawn from the assignments table, and the score is extracted from the grades table. The ID fields scattered throughout the three tables match the corresponding records to one another.
To create the query, choose Insert | Query. In the panel that opens at center, choose a table name from the drop-down menu, and click Add. Do the same for the other two tables until all three are shown in the middle pane.
Next, click on the id field in the assignments table and drag the field to the activity_id field in the grades table. This correlates the fields. Do the same to correlate the id field in the students table with the student_id of the grades table. Your view should now resemble that in Figure 5.
The next step is to choose the fields you want to display. If you double-click on first_name, last_name, assignment, and score, these fields drop into the Query Columns list at the bottom. Figure 6 shows the center panel after adding the four fields.
If you switch to Data View, you should see something like Figure 7. It displays the results of the query.
By assigning values to the Criteria field of a query column, you can limit results just to those in which you are interested. Also, you can sort results by setting the Sorting field. With a combination of tables, correlations, and query columns, you can tailor reports to your specific needs. By the way, if you prefer to write SQL code by hand, the query editor also offers a Text View in which you can author and validate your code.
Forms and More
Kexi also offers a form editor in which you can create data entry interfaces. Other tools import and export data and import database schemas. The current version of Kexi has some quirks, but the Kexi team promises a novel interface in v2.0, in addition to a report designer to produce professional-looking output. According to Kexi developer Jaroslaw Staniek, the forthcoming version of Kexi will connect to more databases – including SQL Server, Oracle, Sybase, and dBase – and feature integration with the entire KOffice 2 suite. For instance, Staniek foresees ODF document generation, without programming, and data sharing across the desktop.
Stay tuned. A future column will revisit Kexi 2 once the software is in widespread beta testing.
Buy this article as PDF
Founder of ownCloud launches the Nextcloud project.
Will The Machine change the way future programmers think about memory?
The new Torus distributed storage system is available under an open source license on GitHub
Juries decides Google’s use of Java APIs Was Fair Use
But if you are not using the latest Linux kernel, your system is insecure.
Home routers will give room for custom firmware but still comply with FCC rules
Frank Karlitschek will continue to lead the open source ownCloud project
“Xenial Xerus” comes with a new packages format and several improvements for the enterprise.
Linux users can now download and install the Windows code editor
New initiative will address security and interoperability concerns around container technology.