public void SqlServerCustomVarCharMaxOverflowParameterSizeAsDataParameter([IncludeDataSources(TestProvName.AllSqlServer2005Plus)] string context) { using (var db = new DataConnection(context, new MappingSchema())) { SetupCustomTypes(db.MappingSchema, true); using (var table = db.CreateLocalTable <AllTypesCustomMaxLength>()) { var value = new string('z', 10000); table.Insert(() => new AllTypesCustomMaxLength() { VarChar = new VarChar() { Value = value } }); var records = table.ToList(); var p = new VarChar() { Value = value }; var sql = table.Where(t => t.VarChar == p).ToString() !; Assert.AreEqual(1, records.Count); Assert.IsNotNull(records[0].VarChar); Assert.AreEqual(value, records[0].VarChar !.Value); Assert.That(sql.Contains(" VarChar(10000) -- AnsiString")); } } }
public void SqlServerCustomVarCharKnownOverflowParameterSizeAsDataParameter([IncludeDataSources(TestProvName.AllSqlServer)] string context) { using (var db = new DataConnection(context, new MappingSchema())) { SetupCustomTypes(db.MappingSchema, true); var p = new VarChar() { Value = "abcdeabcdeabcdeabcde1" }; var sql = db.GetTable <AllTypesCustomWithLength>().Where(t => t.VarcharDataType == p).ToString(); Console.WriteLine(sql); Assert.That(sql, Contains.Substring("(8000)")); } }
public void SqlServerCustomVarChar8000ParameterSize([IncludeDataSources(TestProvName.AllSqlServer)] string context) { using (var db = new DataConnection(context, new MappingSchema())) { SetupCustomTypes(db.MappingSchema); var p = new VarChar() { Value = "abc" }; var sql = db.GetTable <AllTypesCustom>().Where(t => t.VarcharDataType == p).ToString(); Console.WriteLine(sql); Assert.That(sql, Contains.Substring(" VarChar -- AnsiString")); } }
public void Visit(VarChar node) { VisitChildren(node); }
public string Visit(VarChar node) { return("ldc.i4 " + ((int)node.AnchorToken.Lexeme[0]).ToString()); }