197d62497SBram Moolenaar" Vim syntax file 297d62497SBram Moolenaar" Language: SQL, SAP HANA In Memory Database 397d62497SBram Moolenaar" Maintainer: David Fishburn <dfishburn dot vim at gmail dot com> 497d62497SBram Moolenaar" Last Change: 2012 Oct 23 597d62497SBram Moolenaar" Version: SP4 b (Q2 2012) 697d62497SBram Moolenaar" Homepage: http://www.vim.org/scripts/script.php?script_id=4275 797d62497SBram Moolenaar 897d62497SBram Moolenaar" Description: Updated to SAP HANA SP4 997d62497SBram Moolenaar" 10*89bcfda6SBram Moolenaar" quit when a syntax file was already loaded 11*89bcfda6SBram Moolenaarif exists("b:current_syntax") 1297d62497SBram Moolenaar finish 1397d62497SBram Moolenaarendif 1497d62497SBram Moolenaar 1597d62497SBram Moolenaarsyn case ignore 1697d62497SBram Moolenaar 1797d62497SBram Moolenaar" The SQL reserved words, defined as keywords. 1897d62497SBram Moolenaar" These were pulled from the following SQL reference: 1997d62497SBram Moolenaar" http://help.sap.com/hana/hana_sql_en.pdf 2097d62497SBram Moolenaar" An easy approach is to copy all text from the PDF 2197d62497SBram Moolenaar" into a Vim buffer. The keywords are in UPPER case, 2297d62497SBram Moolenaar" so you can run the following commands to be left with 2397d62497SBram Moolenaar" mainly the UPPER case words: 2497d62497SBram Moolenaar" 1. Delete all words that do not begin with a Capital 2597d62497SBram Moolenaar" %s/\(\<[^A-Z]\w*\>\)//g 2697d62497SBram Moolenaar" 2. Remove all words where the 2nd letter is not a Capital 2797d62497SBram Moolenaar" %s/\(\<[A-Z][^A-Z]\w*\>\)//g 2897d62497SBram Moolenaar" 3. Remove all non-word (or space) characters 2997d62497SBram Moolenaar" %s/[^0-9A-Za-z_ ]*//g 3097d62497SBram Moolenaar" 4. Remove some known words 3197d62497SBram Moolenaar" %s/\<\(SAP\|HANA\|OK\|AG\|IBM\|DB2\|AIX\|POWER\d\+\|UNIX\)\>//g 3297d62497SBram Moolenaar" 5. Remove blank lines and trailing spaces 3397d62497SBram Moolenaar" %s/\s\+$//g 3497d62497SBram Moolenaar" %s/^\s\+//g 3597d62497SBram Moolenaar" %s/^$\n//g 3697d62497SBram Moolenaar" 6. Convert spaces to newlines remove single character 3797d62497SBram Moolenaar" %s/[ ]\+/\r/g 3897d62497SBram Moolenaar" %g/^\w$/d 3997d62497SBram Moolenaar" 7. Sort and remove duplicates 4097d62497SBram Moolenaar" :sort 4197d62497SBram Moolenaar" :Uniq 4297d62497SBram Moolenaar" 8. Use the WhatsMissing plugin against the sqlhana.vim file. 4397d62497SBram Moolenaar" 9. Generated a file of all UPPER cased words which should not 4497d62497SBram Moolenaar" be in the syntax file. These items should be removed 4597d62497SBram Moolenaar" from the list in step 7. You can use WhatsNotMissing 4697d62497SBram Moolenaar" between step 7 and this new file to weed out the words 4797d62497SBram Moolenaar" we know are not syntax related. 4897d62497SBram Moolenaar" 10. Use the WhatsMissingRemoveMatches to remove the words 4997d62497SBram Moolenaar" from step 9. 5097d62497SBram Moolenaar 5197d62497SBram Moolenaarsyn keyword sqlSpecial false null true 5297d62497SBram Moolenaar 5397d62497SBram Moolenaar" Supported Functions for Date/Time types 5497d62497SBram Moolenaarsyn keyword sqlFunction ADD_DAYS ADD_MONTHS ADD_SECONDS ADD_YEARS COALESCE 5597d62497SBram Moolenaarsyn keyword sqlFunction CURRENT_DATE CURRENT_TIME CURRENT_TIMESTAMP CURRENT_UTCDATE 5697d62497SBram Moolenaarsyn keyword sqlFunction CURRENT_UTCTIME CURRENT_UTCTIMESTAMP 5797d62497SBram Moolenaarsyn keyword sqlFunction DAYNAME DAYOFMONTH DAYOFYEAR DAYS_BETWEEN EXTRACT 5897d62497SBram Moolenaarsyn keyword sqlFunction GREATEST HOUR IFNULL ISOWEEK LAST_DAY LEAST LOCALTOUTC 5997d62497SBram Moolenaarsyn keyword sqlFunction MINUTE MONTH MONTHNAME NEXT_DAY NOW QUARTER SECOND 6097d62497SBram Moolenaarsyn keyword sqlFunction SECONDS_BETWEEN UTCTOLOCAL WEEK WEEKDAY YEAR 6197d62497SBram Moolenaar 6297d62497SBram Moolenaarsyn keyword sqlFunction TO_CHAR TO_DATE TO_DATS TO_NCHAR TO_TIME TO_TIMESTAMP UTCTOLOCAL 6397d62497SBram Moolenaar 6497d62497SBram Moolenaar" Aggregate 6597d62497SBram Moolenaarsyn keyword sqlFunction COUNT MIN MAX SUM AVG STDDEV VAR 6697d62497SBram Moolenaar 6797d62497SBram Moolenaar" Datatype conversion 6897d62497SBram Moolenaarsyn keyword sqlFunction CAST TO_ALPHANUM TO_BIGINT TO_BINARY TO_BLOB TO_CHAR TO_CLOB 6997d62497SBram Moolenaarsyn keyword sqlFunction TO_DATE TO_DATS TO_DECIMAL TO_DOUBLE TO_INT TO_INTEGER TO_NCHAR 7097d62497SBram Moolenaarsyn keyword sqlFunction TO_NCLOB TO_NVARCHAR TO_REAL TO_SECONDDATE TO_SMALLDECIMAL 7197d62497SBram Moolenaarsyn keyword sqlFunction TO_SMALLINT TO_TIME TO_TIMESTAMP TO_TINYINT TO_VARCHAR TO_VARBINARY 7297d62497SBram Moolenaar 7397d62497SBram Moolenaar" Number functions 7497d62497SBram Moolenaarsyn keyword sqlFunction ABS ACOS ASIN ATAN ATAN2 BINTOHEX BITAND CEIL COS COSH COT 7597d62497SBram Moolenaarsyn keyword sqlFunction EXP FLOOR GREATEST HEXTOBIN LEAST LN LOG MOD POWER ROUND 7697d62497SBram Moolenaarsyn keyword sqlFunction SIGN SIN SINH SQRT TAN TANH UMINUS 7797d62497SBram Moolenaar 7897d62497SBram Moolenaar" String functions 7997d62497SBram Moolenaarsyn keyword sqlFunction ASCII CHAR CONCAT LCASE LENGTH LOCATE LOWER LPAD LTRIM 8097d62497SBram Moolenaarsyn keyword sqlFunction NCHAR REPLACE RPAD RTRIM SUBSTR_AFTER SUBSTR_BEFORE 8197d62497SBram Moolenaarsyn keyword sqlFunction SUBSTRING TRIM UCASE UNICODE UPPER 8297d62497SBram Moolenaar 8397d62497SBram Moolenaar" Miscellaneous functions 8497d62497SBram Moolenaarsyn keyword sqlFunction COALESCE CURRENT_CONNECTION CURRENT_SCHEMA CURRENT_USER 8597d62497SBram Moolenaarsyn keyword sqlFunction GROUPING_ID IFNULL MAP NULLIF SESSION_CONTEXT SESSION_USER SYSUUIDSQL 8697d62497SBram Moolenaarsyn keyword sqlFunction GET_NUM_SERVERS 8797d62497SBram Moolenaar 8897d62497SBram Moolenaar 8997d62497SBram Moolenaar" sp_ procedures 9097d62497SBram Moolenaar" syn keyword sqlFunction sp_addalias 9197d62497SBram Moolenaar 9297d62497SBram Moolenaar 9397d62497SBram Moolenaar" Reserved keywords 9497d62497SBram Moolenaarsyn keyword sqlkeyword ALL AS AT BEFORE 9597d62497SBram Moolenaarsyn keyword sqlkeyword BEGIN BOTH BY 9697d62497SBram Moolenaarsyn keyword sqlkeyword CONDITION 9797d62497SBram Moolenaarsyn keyword sqlkeyword CURRVAL CURSOR DECLARE 9897d62497SBram Moolenaarsyn keyword sqlkeyword DISTINCT DO ELSE ELSEIF ELSIF 9997d62497SBram Moolenaarsyn keyword sqlkeyword END EXCEPTION EXEC 10097d62497SBram Moolenaarsyn keyword sqlkeyword FOR FROM GROUP 10197d62497SBram Moolenaarsyn keyword sqlkeyword HAVING IN 10297d62497SBram Moolenaarsyn keyword sqlkeyword INOUT INTO IS 10397d62497SBram Moolenaarsyn keyword sqlkeyword LEADING 10497d62497SBram Moolenaarsyn keyword sqlkeyword LOOP MINUS NATURAL NEXTVAL 10597d62497SBram Moolenaarsyn keyword sqlkeyword OF ON ORDER OUT 10697d62497SBram Moolenaarsyn keyword sqlkeyword PRIOR RETURN RETURNS REVERSE 10797d62497SBram Moolenaarsyn keyword sqlkeyword ROWID SELECT 10897d62497SBram Moolenaarsyn keyword sqlkeyword SQL START STOP SYSDATE 10997d62497SBram Moolenaarsyn keyword sqlkeyword SYSTIME SYSTIMESTAMP SYSUUID 11097d62497SBram Moolenaarsyn keyword sqlkeyword TRAILING USING UTCDATE 11197d62497SBram Moolenaarsyn keyword sqlkeyword UTCTIME UTCTIMESTAMP VALUES 11297d62497SBram Moolenaarsyn keyword sqlkeyword WHILE 11397d62497SBram Moolenaarsyn keyword sqlkeyword ANY SOME EXISTS ESCAPE 11497d62497SBram Moolenaar 11597d62497SBram Moolenaar" IF keywords 11697d62497SBram Moolenaarsyn keyword sqlkeyword IF 11797d62497SBram Moolenaar 11897d62497SBram Moolenaar" CASE keywords 11997d62497SBram Moolenaarsyn keyword sqlKeyword WHEN THEN 12097d62497SBram Moolenaar 12197d62497SBram Moolenaar" Syntax rules common to TEXT and SHORTTEXT keywords 12297d62497SBram Moolenaarsyn keyword sqlKeyword LANGUAGE DETECTION LINGUISTIC 12397d62497SBram Moolenaarsyn keyword sqlkeyword MIME TYPE 12497d62497SBram Moolenaarsyn keyword sqlkeyword EXACT WEIGHT FUZZY FUZZINESSTHRESHOLD SEARCH 12597d62497SBram Moolenaarsyn keyword sqlkeyword PHRASE INDEX RATIO REBUILD 12697d62497SBram Moolenaarsyn keyword sqlkeyword CONFIGURATION 12797d62497SBram Moolenaarsyn keyword sqlkeyword SEARCH ONLY 12897d62497SBram Moolenaarsyn keyword sqlkeyword FAST PREPROCESS 12997d62497SBram Moolenaarsyn keyword sqlkeyword SYNC SYNCHRONOUS ASYNC ASYNCHRONOUS FLUSH QUEUE 13097d62497SBram Moolenaarsyn keyword sqlkeyword EVERY AFTER MINUTES DOCUMENTS SUSPEND 13197d62497SBram Moolenaar 13297d62497SBram Moolenaar" Statement keywords (i.e. after ALTER or CREATE) 13397d62497SBram Moolenaarsyn keyword sqlkeyword AUDIT POLICY 13497d62497SBram Moolenaarsyn keyword sqlkeyword FULLTEXT 13597d62497SBram Moolenaarsyn keyword sqlkeyword SEQUENCE RESTART 13697d62497SBram Moolenaarsyn keyword sqlkeyword TABLE 13797d62497SBram Moolenaarsyn keyword sqlkeyword PROCEDURE STATISTICS 13897d62497SBram Moolenaarsyn keyword sqlkeyword SCHEMA 13997d62497SBram Moolenaarsyn keyword sqlkeyword SYNONYM 14097d62497SBram Moolenaarsyn keyword sqlkeyword VIEW 14197d62497SBram Moolenaarsyn keyword sqlkeyword COLUMN 14297d62497SBram Moolenaarsyn keyword sqlkeyword SYSTEM LICENSE 14397d62497SBram Moolenaarsyn keyword sqlkeyword SESSION 14497d62497SBram Moolenaarsyn keyword sqlkeyword CANCEL WORK 14597d62497SBram Moolenaarsyn keyword sqlkeyword PLAN CACHE 14697d62497SBram Moolenaarsyn keyword sqlkeyword LOGGING NOLOGGING RETENTION 14797d62497SBram Moolenaarsyn keyword sqlkeyword RECONFIGURE SERVICE 14897d62497SBram Moolenaarsyn keyword sqlkeyword RESET MONITORING 14997d62497SBram Moolenaarsyn keyword sqlkeyword SAVE DURATION PERFTRACE FUNCTION_PROFILER 15097d62497SBram Moolenaarsyn keyword sqlkeyword SAVEPOINT 15197d62497SBram Moolenaarsyn keyword sqlkeyword USER 15297d62497SBram Moolenaarsyn keyword sqlkeyword ROLE 15397d62497SBram Moolenaarsyn keyword sqlkeyword ASC DESC 15497d62497SBram Moolenaarsyn keyword sqlkeyword OWNED 15597d62497SBram Moolenaarsyn keyword sqlkeyword DEPENDENCIES SCRAMBLE 15697d62497SBram Moolenaar 15797d62497SBram Moolenaar" Create sequence 15897d62497SBram Moolenaarsyn keyword sqlkeyword INCREMENT MAXVALUE MINVALUE CYCLE 15997d62497SBram Moolenaar 16097d62497SBram Moolenaar" Create table 16197d62497SBram Moolenaarsyn keyword sqlkeyword HISTORY GLOBAL LOCAL TEMPORARY 16297d62497SBram Moolenaar 16397d62497SBram Moolenaar" Create trigger 16497d62497SBram Moolenaarsyn keyword sqlkeyword TRIGGER REFERENCING EACH DEFAULT 16597d62497SBram Moolenaarsyn keyword sqlkeyword SIGNAL RESIGNAL MESSAGE_TEXT OLD NEW 16697d62497SBram Moolenaarsyn keyword sqlkeyword EXIT HANDLER SQL_ERROR_CODE 16797d62497SBram Moolenaarsyn keyword sqlkeyword TARGET CONDITION SIGNAL 16897d62497SBram Moolenaar 16997d62497SBram Moolenaar" Alter table 17097d62497SBram Moolenaarsyn keyword sqlkeyword ADD DROP MODIFY GENERATED ALWAYS 17197d62497SBram Moolenaarsyn keyword sqlkeyword UNIQUE BTREE CPBTREE PRIMARY KEY 17297d62497SBram Moolenaarsyn keyword sqlkeyword CONSTRAINT PRELOAD NONE 17397d62497SBram Moolenaarsyn keyword sqlkeyword ROW THREADS BATCH 17497d62497SBram Moolenaarsyn keyword sqlkeyword MOVE PARTITION TO LOCATION PHYSICAL OTHERS 17597d62497SBram Moolenaarsyn keyword sqlkeyword ROUNDROBIN PARTITIONS HASH RANGE VALUE 17697d62497SBram Moolenaarsyn keyword sqlkeyword PERSISTENT DELTA AUTO AUTOMERGE 17797d62497SBram Moolenaar 17897d62497SBram Moolenaar" Create audit policy 17997d62497SBram Moolenaarsyn keyword sqlkeyword AUDITING SUCCESSFUL UNSUCCESSFUL 18097d62497SBram Moolenaarsyn keyword sqlkeyword PRIVILEGE STRUCTURED CHANGE LEVEL 18197d62497SBram Moolenaarsyn keyword sqlkeyword EMERGENCY ALERT CRITICAL WARNING INFO 18297d62497SBram Moolenaar 18397d62497SBram Moolenaar" Privileges 18497d62497SBram Moolenaarsyn keyword sqlkeyword DEBUG EXECUTE 18597d62497SBram Moolenaar 18697d62497SBram Moolenaar" Schema 18797d62497SBram Moolenaarsyn keyword sqlkeyword CASCADE RESTRICT PARAMETERS SCAN 18897d62497SBram Moolenaar 18997d62497SBram Moolenaar" Traces 19097d62497SBram Moolenaarsyn keyword sqlkeyword CLIENT CRASHDUMP EMERGENCYDUMP 19197d62497SBram Moolenaarsyn keyword sqlkeyword INDEXSERVER NAMESERVER DAEMON 19297d62497SBram Moolenaarsyn keyword sqlkeyword CLEAR REMOVE TRACES 19397d62497SBram Moolenaar 19497d62497SBram Moolenaar" Reclaim 19597d62497SBram Moolenaarsyn keyword sqlkeyword RECLAIM DATA VOLUME VERSION SPACE DEFRAGMENT SPARSIFY 19697d62497SBram Moolenaar 19797d62497SBram Moolenaar" Join 19897d62497SBram Moolenaarsyn keyword sqlkeyword INNER OUTER LEFT RIGHT FULL CROSS JOIN 19997d62497SBram Moolenaarsyn keyword sqlkeyword GROUPING SETS ROLLUP CUBE 20097d62497SBram Moolenaarsyn keyword sqlkeyword BEST LIMIT OFFSET 20197d62497SBram Moolenaarsyn keyword sqlkeyword WITH SUBTOTAL BALANCE TOTAL 20297d62497SBram Moolenaarsyn keyword sqlkeyword TEXT_FILTER FILL UP SORT MATCHES TOP 20397d62497SBram Moolenaarsyn keyword sqlkeyword RESULT OVERVIEW PREFIX MULTIPLE RESULTSETS 20497d62497SBram Moolenaar 20597d62497SBram Moolenaar" Lock 20697d62497SBram Moolenaarsyn keyword sqlkeyword EXCLUSIVE MODE NOWAIT 20797d62497SBram Moolenaar 20897d62497SBram Moolenaar" Transaction 20997d62497SBram Moolenaarsyn keyword sqlkeyword TRANSACTION ISOLATION READ COMMITTED 21097d62497SBram Moolenaarsyn keyword sqlkeyword REPEATABLE SERIALIZABLE WRITE 21197d62497SBram Moolenaar 21297d62497SBram Moolenaar" Saml 21397d62497SBram Moolenaarsyn keyword sqlkeyword SAML ASSERTION PROVIDER SUBJECT ISSUER 21497d62497SBram Moolenaar 21597d62497SBram Moolenaar" User 21697d62497SBram Moolenaarsyn keyword sqlkeyword PASSWORD IDENTIFIED EXTERNALLY ATTEMPTS ATTEMPTS 21797d62497SBram Moolenaarsyn keyword sqlkeyword ENABLE DISABLE OFF LIFETIME FORCE DEACTIVATE 21897d62497SBram Moolenaarsyn keyword sqlkeyword ACTIVATE IDENTITY KERBEROS 21997d62497SBram Moolenaar 22097d62497SBram Moolenaar" Grant 22197d62497SBram Moolenaarsyn keyword sqlkeyword ADMIN BACKUP CATALOG SCENARIO INIFILE MONITOR 22297d62497SBram Moolenaarsyn keyword sqlkeyword OPTIMIZER OPTION 22397d62497SBram Moolenaarsyn keyword sqlkeyword RESOURCE STRUCTUREDPRIVILEGE TRACE 22497d62497SBram Moolenaar 22597d62497SBram Moolenaar" Import 22697d62497SBram Moolenaarsyn keyword sqlkeyword CSV FILE CONTROL NO CHECK SKIP FIRST LIST 22797d62497SBram Moolenaarsyn keyword sqlkeyword RECORD DELIMITED FIELD OPTIONALLY ENCLOSED FORMAT 22897d62497SBram Moolenaar 22997d62497SBram Moolenaar" Roles 23097d62497SBram Moolenaarsyn keyword sqlkeyword PUBLIC CONTENT_ADMIN MODELING MONITORING 23197d62497SBram Moolenaar 23297d62497SBram Moolenaar" Miscellaneous 23397d62497SBram Moolenaarsyn keyword sqlkeyword APPLICATION BINARY IMMEDIATE COREFILE SECURITY DEFINER 23497d62497SBram Moolenaarsyn keyword sqlkeyword DUMMY INVOKER MATERIALIZED MESSEGE_TEXT PARAMETER PARAMETERS 23597d62497SBram Moolenaarsyn keyword sqlkeyword PART 23697d62497SBram Moolenaarsyn keyword sqlkeyword CONSTANT SQLEXCEPTION SQLWARNING 23797d62497SBram Moolenaar 23897d62497SBram Moolenaarsyn keyword sqlOperator WHERE BETWEEN LIKE NULL CONTAINS 23997d62497SBram Moolenaarsyn keyword sqlOperator AND OR NOT CASE 24097d62497SBram Moolenaarsyn keyword sqlOperator UNION INTERSECT EXCEPT 24197d62497SBram Moolenaar 24297d62497SBram Moolenaarsyn keyword sqlStatement ALTER CALL CALLS CREATE DROP RENAME TRUNCATE 24397d62497SBram Moolenaarsyn keyword sqlStatement DELETE INSERT UPDATE EXPLAIN 24497d62497SBram Moolenaarsyn keyword sqlStatement MERGE REPLACE UPSERT SELECT 24597d62497SBram Moolenaarsyn keyword sqlStatement SET UNSET LOAD UNLOAD 24697d62497SBram Moolenaarsyn keyword sqlStatement CONNECT DISCONNECT COMMIT LOCK ROLLBACK 24797d62497SBram Moolenaarsyn keyword sqlStatement GRANT REVOKE 24897d62497SBram Moolenaarsyn keyword sqlStatement EXPORT IMPORT 24997d62497SBram Moolenaar 25097d62497SBram Moolenaar 25197d62497SBram Moolenaarsyn keyword sqlType DATE TIME SECONDDATE TIMESTAMP TINYINT SMALLINT 25297d62497SBram Moolenaarsyn keyword sqlType INT INTEGER BIGINT SMALLDECIMAL DECIMAL 25397d62497SBram Moolenaarsyn keyword sqlType REAL DOUBLE FLOAT 25497d62497SBram Moolenaarsyn keyword sqlType VARCHAR NVARCHAR ALPHANUM SHORTTEXT VARBINARY 25597d62497SBram Moolenaarsyn keyword sqlType BLOB CLOB NCLOB TEXT DAYDATE 25697d62497SBram Moolenaar 25797d62497SBram Moolenaarsyn keyword sqlOption Webservice_namespace_host 25897d62497SBram Moolenaar 25997d62497SBram Moolenaar" Strings and characters: 26097d62497SBram Moolenaarsyn region sqlString start=+"+ end=+"+ contains=@Spell 26197d62497SBram Moolenaarsyn region sqlString start=+'+ end=+'+ contains=@Spell 26297d62497SBram Moolenaar 26397d62497SBram Moolenaar" Numbers: 26497d62497SBram Moolenaarsyn match sqlNumber "-\=\<\d*\.\=[0-9_]\>" 26597d62497SBram Moolenaar 26697d62497SBram Moolenaar" Comments: 26797d62497SBram Moolenaarsyn region sqlDashComment start=/--/ end=/$/ contains=@Spell 26897d62497SBram Moolenaarsyn region sqlSlashComment start=/\/\// end=/$/ contains=@Spell 26997d62497SBram Moolenaarsyn region sqlMultiComment start="/\*" end="\*/" contains=sqlMultiComment,@Spell 27097d62497SBram Moolenaarsyn cluster sqlComment contains=sqlDashComment,sqlSlashComment,sqlMultiComment,@Spell 27197d62497SBram Moolenaarsyn sync ccomment sqlComment 27297d62497SBram Moolenaarsyn sync ccomment sqlDashComment 27397d62497SBram Moolenaarsyn sync ccomment sqlSlashComment 27497d62497SBram Moolenaar 27597d62497SBram Moolenaarhi def link sqlDashComment Comment 27697d62497SBram Moolenaarhi def link sqlSlashComment Comment 27797d62497SBram Moolenaarhi def link sqlMultiComment Comment 27897d62497SBram Moolenaarhi def link sqlNumber Number 27997d62497SBram Moolenaarhi def link sqlOperator Operator 28097d62497SBram Moolenaarhi def link sqlSpecial Special 28197d62497SBram Moolenaarhi def link sqlKeyword Keyword 28297d62497SBram Moolenaarhi def link sqlStatement Statement 28397d62497SBram Moolenaarhi def link sqlString String 28497d62497SBram Moolenaarhi def link sqlType Type 28597d62497SBram Moolenaarhi def link sqlFunction Function 28697d62497SBram Moolenaarhi def link sqlOption PreProc 28797d62497SBram Moolenaar 28897d62497SBram Moolenaarlet b:current_syntax = "sqlhana" 28997d62497SBram Moolenaar 29097d62497SBram Moolenaar" vim:sw=4: 291