Please be aware that the SAP SQL Anywhere Forum will be shut down on August 29th, 2024 when all it's content will be migrated to the SAP Community.


How can I setup the the dbsrv12 process at startup with the option for the reserved keyword = 'LIMIT', which is by default disabled in SQL Anywhere 12. In an Interactive SQL session I can set it with SET OPTION PUBLIC.reserved_keywords = 'LIMIT', but I need it to set it persistant for a given dbsrv12 process or database. An additional question is how to do this setup when the dbsrv12 process starts up database (files) created with version 11 or 10 of SQL Anywhere. Do they have to be at least UPGRADEd or do they even have to be rebuilt for full functionality?

The article from Sybase describing the (new) situation is here:

Best regards, Robert

PS: I had quite a hard time to figure out what's going on when I changed from SQL Anywhere 11 to 12, as the application shows a weird behaviour in suppressing records when used with ORDER BY and LIMIT.

asked 20 Apr '11, 15:43

robert's gravatar image

accept rate: 0%

edited 21 Apr '11, 08:39

Volker%20Barth's gravatar image

Volker Barth

From my understanding Set Option should set the option permanent for the database. You could try this through the user interface of Sybase central if you have the feeling that it is not working wih dbisql. reserved_keywords is a database option so you will need to set it per database (not per engine)

permanent link

answered 21 Apr '11, 03:16

Martin's gravatar image

accept rate: 14%

As you said I found that in Servoy Central under Options, the LIMIT option can be set permanently for a given database.

(21 Apr '11, 06:59) robert
Replies hidden

In ISQL, it should also be set permantently as long as you don't use the "set temporary" form. Checking against the system view SYSOPTION will confirm that.

(21 Apr '11, 08:18) Volker Barth

In order to automatically set this (or other options) as default for newly created databases, you may add this (or adapt the existing value) in the saopts.sql file in the scripts subdirectory of your SQL Anywhere installation.

(Note, I have not used this approach myself so this is a mere guess. But a similar way exists to set authentication information for OEM databases.)

EDIT: saopts.sql is used with v10 and before. v11 and above seem to use the script optdeflt.sql in the according directory. Note: I am not sure whether these scripts are overwritten when applying MRs or EBFs. Handle with care:)

permanent link

answered 21 Apr '11, 08:26

Volker%20Barth's gravatar image

Volker Barth
accept rate: 34%

edited 29 Apr '11, 11:16

this are not provided on all instalations! in my anywhere there its no "saopts.sql" file..

(18 Jul '17, 16:47) mckaygerhard
Replies hidden

As stated, for v11 and above the file is called "optdeflt.sql". Can't tell for your installations, naturally, but it's there by default in all my installations in the Scripts subdir of SQL Anywhere 12, 16 and 17.

(19 Jul '17, 02:56) Volker Barth
Comment Text Removed

To make it default, depends of the version and engine:!topic/venenuxsarisari/J9VfoUaV_XY

permanent link

answered 06 Jan '17, 08:43

mckaygerhard's gravatar image

accept rate: 12%

Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here



Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text]( "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:


question asked: 20 Apr '11, 15:43

question was seen: 4,972 times

last updated: 19 Jul '17, 05:15