public void OrderByMultiColumn() 
		{
			Dialect.Dialect dialect = new Dialect.MsSql2000Dialect();

			string orderBy = "col1 asc, col2 desc, col3";
			string expectedOrderBy = "$PlaceHolder.col1 asc, $PlaceHolder.col2 desc, $PlaceHolder.col3";

			Assert.AreEqual( expectedOrderBy, Template.RenderOrderByStringTemplate( orderBy, dialect ) );
		}
		public void SchemaNameQuoted()
		{
			Table tbl = new Table();
			tbl.Schema = "`schema`";
			tbl.Name = "name";

			Dialect.Dialect dialect = new Dialect.MsSql2000Dialect();

			Assert.AreEqual( "[schema].name", tbl.GetQualifiedName( dialect ) );
		}
		public void ReplaceWithDialectQuote() 
		{
			Dialect.Dialect dialect = new Dialect.MsSql2000Dialect();
			string whereFragment = "column_name = 'string value' and `backtick` = 1";

			string expectedFragment = "$PlaceHolder.column_name = 'string value' and $PlaceHolder.[backtick] = 1";

			Assert.AreEqual( expectedFragment, Template.RenderWhereStringTemplate(whereFragment, dialect) );

		}
		public void NoLeadingUnderscores()
		{
			Alias alias = new Alias( "suffix" );
			Dialect.Dialect dialect = new Dialect.MsSql2000Dialect();
			
			Assert.IsFalse( 
				alias.ToAliasString( "__someIdentifier", dialect )
				.StartsWith( "_" ) );

			Assert.IsFalse( 
				alias.ToUnquotedAliasString( "__someIdentifier", dialect )
				.StartsWith( "_" ) );
		}
		public void TableNameNotQuoted() 
		{
			Table tbl = new Table();
			tbl.Name = "notkeyword";

			Dialect.Dialect dialect = new Dialect.MsSql2000Dialect();

			Assert.AreEqual( "notkeyword", tbl.GetQuotedName( dialect ) );

			Assert.AreEqual( "dbo.notkeyword", tbl.GetQualifiedName( dialect, "dbo" ) );

			Assert.AreEqual( "notkeyword", tbl.GetQualifiedName( dialect, null ) );

			tbl.Schema = "sch";

			Assert.AreEqual( "sch.notkeyword", tbl.GetQualifiedName( dialect ) );
		}