From: <jul...@us...> - 2010-09-17 15:44:38
|
Revision: 5187 http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5187&view=rev Author: julian-maughan Date: 2010-09-17 15:44:32 +0000 (Fri, 17 Sep 2010) Log Message: ----------- Improvement allowing Sybase SQL Anywhere/ASA dialect keywords to be ascertained using database metadata (ref. NH-2332). Thanks to Mark Junker. Modified Paths: -------------- trunk/nhibernate/src/NHibernate/Dialect/Schema/SybaseAnywhereMetaData.cs Modified: trunk/nhibernate/src/NHibernate/Dialect/Schema/SybaseAnywhereMetaData.cs =================================================================== --- trunk/nhibernate/src/NHibernate/Dialect/Schema/SybaseAnywhereMetaData.cs 2010-09-16 15:21:57 UTC (rev 5186) +++ trunk/nhibernate/src/NHibernate/Dialect/Schema/SybaseAnywhereMetaData.cs 2010-09-17 15:44:32 UTC (rev 5187) @@ -2,6 +2,8 @@ using System.Data; using System.Data.Common; +using Iesi.Collections.Generic; + namespace NHibernate.Dialect.Schema { // Metadata for connections using the iAnywhere.Data.SQLAnywhere ADO.NET provider @@ -14,6 +16,17 @@ return new SybaseAnywhereTableMetaData(rs, this, extras); } + public override ISet<string> GetReservedWords() + { + var result = new HashedSet<string>(); + DataTable dtReservedWords = Connection.GetSchema(DbMetaDataCollectionNames.ReservedWords); + foreach (DataRow row in dtReservedWords.Rows) + { + result.Add(row["reserved_word"].ToString()); + } + return result; + } + public override DataTable GetTables(string catalog, string schemaPattern, string tableNamePattern, string[] types) { var restrictions = new[] {schemaPattern, tableNamePattern, null}; @@ -36,7 +49,7 @@ } public override DataTable GetColumns(string catalog, string schemaPattern, string tableNamePattern, - string columnNamePattern) + string columnNamePattern) { var restrictions = new[] {schemaPattern, tableNamePattern, null}; DataTable objTbl = Connection.GetSchema("Columns", restrictions); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |