William's Blog
In this part of the series we will look at the new CURSOR support in NexusDB.
Cursors in SQL allow the developer/user to iterate row by row through SQL result sets.
ExampleHere's a small example of cursors in action:
DROP TABLE if exists table1; DROP TABLE if exists table2; CREATE TABLE table1 (f1 INT, f2 varchar(10)); CREATE TABLE table2 (f1 INT, f2 varchar(10)); INSERT INTO table1 values (1,'r1'), (2,'r2'), (3,'r3'); DECLARE myvar1 INT; DECLARE myvar2 varchar(10); DECLARE acursor CURSOR FOR SELECT f1, f2 from table1;In this 4th installment of the series (if you haven't read the earlier parts you can do so here) I'm showing all you "SQL heads" something very exciting. We call the feature "SQL extension scripting" and it allows you to dynamically create, load and use functions for use in normal NexusDB SQL.
As usual, let's start with an
ExampleFirst we create a script file called sqlExtensionTest.nxscript:
function RegisterSQLFunctions: string; begin RegisteredSQLFunctions.AddObject('scrEcho', TnxSQLFunctionInfo.Create(Well, as you can see we've a new website since a few weeks now. But it's not just a shiny new look but a complete new system that servers all content dynamically. After trying several systems we opted for a modern open source Content Management System (CMS) called Drupal.
Dynamic contentThis is the 3rd part in the series. If you haven't read the earlier parts you can do so here.
This post introduces the new Dynamic SQL feature in NexusDB V3
What is Dynamic SQLWelcome to the second post in the series. If you have not read the first one you can do so here.
Introducing the Nexus WebServerI've been lucky enough to get my hands on a BETA version of Enterprise Manager for the upcoming V3 release (EMV3). Here are my first impressions.
Starting it up, it looks very much like, if not identical to, V2. Those comfortable with EMV2 will have no problem adjusting to EMV3. Surprisingly, it found my V2 nxServer aliases but couldn't connect to them because of obvious version differences. I created a folder and used the internal server to set up an alias pointing to it before delving into it's SQL and restructuring functionality.
This is the first post of a series that will introduce you to new features of the upcoming NexusDB V3. Each of the series (starting with the second post) will be accompanied by peek-preview binaries that you can use to experiment with the new feature.
Server Side Pascal ScriptingIt didn't take long for Hannes to follow through on his threat to give me a blog section. Less than 24 hours in fact. Jack Bauer would be screwed.
So, a little introduction...
Hi. My name is William. I'm a Computer Scientist born and raised here in Newcastle (Australia). My programming emphasis since then has been on database-driven applications but I'm endeavouring to expand on that. Perhaps into games - one of my many passions.
This post is going to introduce all the individual parts that make up NexusRemoting. It is not going to go into excessive detail on any single part, but instead show the overall design and introduce the terminology that will be used in future posts.
We had a support request on our chat this morning and I though I'd share that as it's of general interest.
It went like this:
[Customer] A costumer has a problem with his database. Unfortunately his newest backup is from (long time ago). He send me the table file. If I open it with EM I get the message:[Customer] Error 8962 was triggered during the operation (Corrupt file - other than header.)
[Customer] Packing and restructure does not help