MySQL Lists are EOL. Please join:

List:Commits« Previous MessageNext Message »
From:Reggie Burnett Date:February 26 2010 9:18pm
Subject:bzr commit into connector-net-6.0 branch (reggie.burnett:796) Bug#50171
View as plain text  
#At file:///D:/bzr-connector-net/6.0/ based on revid:reggie.burnett@stripped

  796 Reggie Burnett	2010-02-26
      - fixed bug where binary or blob columns would prevent columns after that from appearing in the
        query builder (bug #50171)

    modified:
      CHANGES
      MySql.Data/Provider/Source/SchemaProvider.cs
      MySql.Data/Provider/Source/Types/MySqlBinary.cs
      MySql.Data/Provider/Source/Types/MySqlBit.cs
      MySql.Data/Provider/Source/Types/MySqlByte.cs
      MySql.Data/Provider/Source/Types/MySqlDateTime.cs
      MySql.Data/Provider/Source/Types/MySqlDecimal.cs
      MySql.Data/Provider/Source/Types/MySqlDouble.cs
      MySql.Data/Provider/Source/Types/MySqlGuid.cs
      MySql.Data/Provider/Source/Types/MySqlInt16.cs
      MySql.Data/Provider/Source/Types/MySqlInt32.cs
      MySql.Data/Provider/Source/Types/MySqlInt64.cs
      MySql.Data/Provider/Source/Types/MySqlSingle.cs
      MySql.Data/Provider/Source/Types/MySqlString.cs
      MySql.Data/Provider/Source/Types/MySqlTime.cs
      MySql.Data/Provider/Source/Types/MySqlUByte.cs
      MySql.Data/Provider/Source/Types/MySqlUInt16.cs
      MySql.Data/Provider/Source/Types/MySqlUInt32.cs
      MySql.Data/Provider/Source/Types/MySqlUInt64.cs
=== modified file 'CHANGES'
=== modified file 'CHANGES'
--- a/CHANGES	2010-02-19 15:43:40 +0000
+++ b/CHANGES	2010-02-26 21:18:30 +0000
@@ -19,6 +19,8 @@
   command text was reset (bug #50444)
 - fixed bug where using a currently non-batchable command in a batch would throw an exception
   (bug #50123)
+- fixed bug where binary or blob columns would prevent columns after that from appearing in the
+  query builder (bug #50171)
 
 Version 6.0.5
 - ensure that MySqlPacket always has a valid encoding. This prevents null reference exceptions in ReadString()

=== modified file 'MySql.Data/Provider/Source/SchemaProvider.cs'
--- a/MySql.Data/Provider/Source/SchemaProvider.cs	2009-11-10 22:01:16 +0000
+++ b/MySql.Data/Provider/Source/SchemaProvider.cs	2010-02-26 21:18:30 +0000
@@ -204,6 +204,7 @@
                     row["IS_NULLABLE"] = reader.GetString(3);
                     row["DATA_TYPE"] = reader.GetString(1);
                     row["CHARACTER_MAXIMUM_LENGTH"] = DBNull.Value;
+                    row["CHARACTER_OCTET_LENGTH"] = DBNull.Value;
                     row["NUMERIC_PRECISION"] = DBNull.Value;
                     row["NUMERIC_SCALE"] = DBNull.Value;
                     row["CHARACTER_SET_NAME"] = reader.GetValue(2);
@@ -705,7 +706,7 @@
             DataRow row = dt.NewRow();
             row["CompositeIdentifierSeparatorPattern"] = "\\.";
             row["DataSourceProductName"] = "MySQL";
-			row["DataSourceProductVersion"] = connection.ServerVersion;
+            row["DataSourceProductVersion"] = connection.ServerVersion;
             row["DataSourceProductVersionNormalized"] = ver;
             row["GroupByBehavior"] = GroupByBehavior.Unrelated;
             row["IdentifierPattern"] =
@@ -750,7 +751,7 @@
             dt.Columns.Add(new DataColumn("MaximumScale", typeof (short)));
             dt.Columns.Add(new DataColumn("MinimumScale", typeof (short)));
             dt.Columns.Add(new DataColumn("IsConcurrencyType", typeof (bool)));
-            dt.Columns.Add(new DataColumn("IsLiteralsSupported", typeof (bool)));
+            dt.Columns.Add(new DataColumn("IsLiteralSupported", typeof (bool)));
             dt.Columns.Add(new DataColumn("LiteralPrefix", typeof (string)));
             dt.Columns.Add(new DataColumn("LiteralSuffix", typeof (string)));
             dt.Columns.Add(new DataColumn("NativeDataType", typeof (string)));

=== modified file 'MySql.Data/Provider/Source/Types/MySqlBinary.cs'
--- a/MySql.Data/Provider/Source/Types/MySqlBinary.cs	2009-04-21 18:02:13 +0000
+++ b/MySql.Data/Provider/Source/Types/MySqlBinary.cs	2010-02-26 21:18:30 +0000
@@ -183,9 +183,12 @@
 
 		public static void SetDSInfo(DataTable dsTable)
 		{
-			string[] types = new string[] { "BLOB", "TINYBLOB", "MEDIUMBLOB", "LONGBLOB" };
+			string[] types = new string[] { "BLOB", "TINYBLOB", "MEDIUMBLOB", "LONGBLOB", "BINARY", "VARBINARY" };
 			MySqlDbType[] dbtype = new MySqlDbType[] { MySqlDbType.Blob, 
-                MySqlDbType.TinyBlob, MySqlDbType.MediumBlob, MySqlDbType.LongBlob };
+                MySqlDbType.TinyBlob, MySqlDbType.MediumBlob, MySqlDbType.LongBlob, MySqlDbType.Binary, MySqlDbType.VarBinary };
+            long[] sizes = new long[] { 65535L, 255L, 16777215L, 4294967295L, 255L, 65535L };
+            string[] format = new string[] { null, null, null, null, "binary({0})", "varbinary({0})" };
+            string[] parms = new string[] { null, null, null, null, "length", "length" };
 
 			// we use name indexing because this method will only be called
 			// when GetSchema is called for the DataSourceInformation 
@@ -195,27 +198,27 @@
 				DataRow row = dsTable.NewRow();
 				row["TypeName"] = types[x];
 				row["ProviderDbType"] = dbtype[x];
-				row["ColumnSize"] = 0;
-				row["CreateFormat"] = types[x];
-				row["CreateParameters"] = null;
+				row["ColumnSize"] = sizes[x];
+				row["CreateFormat"] = format[x];
+                row["CreateParameters"] = parms[x];
 				row["DataType"] = "System.Byte[]";
 				row["IsAutoincrementable"] = false;
 				row["IsBestMatch"] = true;
 				row["IsCaseSensitive"] = false;
-				row["IsFixedLength"] = false;
-				row["IsFixedPrecisionScale"] = true;
-				row["IsLong"] = true;
+                row["IsFixedLength"] = x < 4 ? false : true;
+                row["IsFixedPrecisionScale"] = false;
+                row["IsLong"] = sizes[x] > 255;
 				row["IsNullable"] = true;
-				row["IsSearchable"] = true;
-				row["IsSearchableWithLike"] = true;
-				row["IsUnsigned"] = false;
-				row["MaximumScale"] = 0;
-				row["MinimumScale"] = 0;
-				row["IsConcurrencyType"] = DBNull.Value;
-				row["IsLiteralsSupported"] = false;
-				row["LiteralPrefix"] = null;
-				row["LiteralSuffix"] = null;
-				row["NativeDataType"] = null;
+				row["IsSearchable"] = false;  
+				row["IsSearchableWithLike"] = false;
+                row["IsUnsigned"] = DBNull.Value;
+                row["MaximumScale"] = DBNull.Value;
+                row["MinimumScale"] = DBNull.Value;
+                row["IsConcurrencyType"] = DBNull.Value;
+				row["IsLiteralSupported"] = false;
+				row["LiteralPrefix"] = "0x";
+                row["LiteralSuffix"] = DBNull.Value;
+                row["NativeDataType"] = DBNull.Value;
 				dsTable.Rows.Add(row);
 			}
 		}

=== modified file 'MySql.Data/Provider/Source/Types/MySqlBit.cs'
--- a/MySql.Data/Provider/Source/Types/MySqlBit.cs	2009-04-21 18:02:13 +0000
+++ b/MySql.Data/Provider/Source/Types/MySqlBit.cs	2010-02-26 21:18:30 +0000
@@ -112,7 +112,7 @@
 			row["ProviderDbType"] = MySqlDbType.Bit;
 			row["ColumnSize"] = 64;
 			row["CreateFormat"] = "BIT";
-			row["CreateParameters"] = null;
+            row["CreateParameters"] = DBNull.Value; ;
             row["DataType"] = typeof(UInt64).ToString();
 			row["IsAutoincrementable"] = false;
 			row["IsBestMatch"] = true;
@@ -127,10 +127,10 @@
 			row["MaximumScale"] = 0;
 			row["MinimumScale"] = 0;
 			row["IsConcurrencyType"] = DBNull.Value;
-			row["IsLiteralsSupported"] = false;
-			row["LiteralPrefix"] = null;
-			row["LiteralSuffix"] = null;
-			row["NativeDataType"] = null;
+			row["IsLiteralSupported"] = false;
+            row["LiteralPrefix"] = DBNull.Value;
+            row["LiteralSuffix"] = DBNull.Value;
+            row["NativeDataType"] = DBNull.Value;
 			dsTable.Rows.Add(row);
 		}
 	}

=== modified file 'MySql.Data/Provider/Source/Types/MySqlByte.cs'
--- a/MySql.Data/Provider/Source/Types/MySqlByte.cs	2009-04-21 18:02:13 +0000
+++ b/MySql.Data/Provider/Source/Types/MySqlByte.cs	2010-02-26 21:18:30 +0000
@@ -161,7 +161,7 @@
 			row["MaximumScale"] = 0;
 			row["MinimumScale"] = 0;
 			row["IsConcurrencyType"] = DBNull.Value;
-			row["IsLiteralsSupported"] = false;
+			row["IsLiteralSupported"] = false;
 			row["LiteralPrefix"] = null;
 			row["LiteralSuffix"] = null;
 			row["NativeDataType"] = null;

=== modified file 'MySql.Data/Provider/Source/Types/MySqlDateTime.cs'
--- a/MySql.Data/Provider/Source/Types/MySqlDateTime.cs	2009-09-01 03:54:56 +0000
+++ b/MySql.Data/Provider/Source/Types/MySqlDateTime.cs	2010-02-26 21:18:30 +0000
@@ -512,7 +512,7 @@
 				row["MaximumScale"] = 0;
 				row["MinimumScale"] = 0;
 				row["IsConcurrencyType"] = DBNull.Value;
-				row["IsLiteralsSupported"] = false;
+				row["IsLiteralSupported"] = false;
 				row["LiteralPrefix"] = null;
 				row["LiteralSuffix"] = null;
 				row["NativeDataType"] = null;

=== modified file 'MySql.Data/Provider/Source/Types/MySqlDecimal.cs'
--- a/MySql.Data/Provider/Source/Types/MySqlDecimal.cs	2009-11-10 22:01:16 +0000
+++ b/MySql.Data/Provider/Source/Types/MySqlDecimal.cs	2010-02-26 21:18:30 +0000
@@ -163,7 +163,7 @@
 			row["MaximumScale"] = 0;
 			row["MinimumScale"] = 0;
 			row["IsConcurrencyType"] = DBNull.Value;
-			row["IsLiteralsSupported"] = false;
+			row["IsLiteralSupported"] = false;
 			row["LiteralPrefix"] = null;
 			row["LiteralSuffix"] = null;
 			row["NativeDataType"] = null;

=== modified file 'MySql.Data/Provider/Source/Types/MySqlDouble.cs'
--- a/MySql.Data/Provider/Source/Types/MySqlDouble.cs	2009-04-21 18:02:13 +0000
+++ b/MySql.Data/Provider/Source/Types/MySqlDouble.cs	2010-02-26 21:18:30 +0000
@@ -137,7 +137,7 @@
 			row["MaximumScale"] = 0;
 			row["MinimumScale"] = 0;
 			row["IsConcurrencyType"] = DBNull.Value;
-			row["IsLiteralsSupported"] = false;
+			row["IsLiteralSupported"] = false;
 			row["LiteralPrefix"] = null;
 			row["LiteralSuffix"] = null;
 			row["NativeDataType"] = null;

=== modified file 'MySql.Data/Provider/Source/Types/MySqlGuid.cs'
--- a/MySql.Data/Provider/Source/Types/MySqlGuid.cs	2009-05-21 17:16:16 +0000
+++ b/MySql.Data/Provider/Source/Types/MySqlGuid.cs	2010-02-26 21:18:30 +0000
@@ -192,7 +192,7 @@
 			row["MaximumScale"] = 0;
 			row["MinimumScale"] = 0;
 			row["IsConcurrencyType"] = DBNull.Value;
-			row["IsLiteralsSupported"] = false;
+			row["IsLiteralSupported"] = false;
 			row["LiteralPrefix"] = null;
 			row["LiteralSuffix"] = null;
 			row["NativeDataType"] = null;

=== modified file 'MySql.Data/Provider/Source/Types/MySqlInt16.cs'
--- a/MySql.Data/Provider/Source/Types/MySqlInt16.cs	2009-04-21 18:02:13 +0000
+++ b/MySql.Data/Provider/Source/Types/MySqlInt16.cs	2010-02-26 21:18:30 +0000
@@ -130,7 +130,7 @@
 			row["MaximumScale"] = 0;
 			row["MinimumScale"] = 0;
 			row["IsConcurrencyType"] = DBNull.Value;
-			row["IsLiteralsSupported"] = false;
+			row["IsLiteralSupported"] = false;
 			row["LiteralPrefix"] = null;
 			row["LiteralSuffix"] = null;
 			row["NativeDataType"] = null;

=== modified file 'MySql.Data/Provider/Source/Types/MySqlInt32.cs'
--- a/MySql.Data/Provider/Source/Types/MySqlInt32.cs	2009-04-21 18:02:13 +0000
+++ b/MySql.Data/Provider/Source/Types/MySqlInt32.cs	2010-02-26 21:18:30 +0000
@@ -149,7 +149,7 @@
 				row["MaximumScale"] = 0;
 				row["MinimumScale"] = 0;
 				row["IsConcurrencyType"] = DBNull.Value;
-				row["IsLiteralsSupported"] = false;
+				row["IsLiteralSupported"] = false;
 				row["LiteralPrefix"] = null;
 				row["LiteralSuffix"] = null;
 				row["NativeDataType"] = null;

=== modified file 'MySql.Data/Provider/Source/Types/MySqlInt64.cs'
--- a/MySql.Data/Provider/Source/Types/MySqlInt64.cs	2009-04-21 18:02:13 +0000
+++ b/MySql.Data/Provider/Source/Types/MySqlInt64.cs	2010-02-26 21:18:30 +0000
@@ -130,7 +130,7 @@
 			row["MaximumScale"] = 0;
 			row["MinimumScale"] = 0;
 			row["IsConcurrencyType"] = DBNull.Value;
-			row["IsLiteralsSupported"] = false;
+			row["IsLiteralSupported"] = false;
 			row["LiteralPrefix"] = null;
 			row["LiteralSuffix"] = null;
 			row["NativeDataType"] = null;

=== modified file 'MySql.Data/Provider/Source/Types/MySqlSingle.cs'
--- a/MySql.Data/Provider/Source/Types/MySqlSingle.cs	2009-04-21 18:02:13 +0000
+++ b/MySql.Data/Provider/Source/Types/MySqlSingle.cs	2010-02-26 21:18:30 +0000
@@ -136,7 +136,7 @@
 			row["MaximumScale"] = 0;
 			row["MinimumScale"] = 0;
 			row["IsConcurrencyType"] = DBNull.Value;
-			row["IsLiteralsSupported"] = false;
+			row["IsLiteralSupported"] = false;
 			row["LiteralPrefix"] = null;
 			row["LiteralSuffix"] = null;
 			row["NativeDataType"] = null;

=== modified file 'MySql.Data/Provider/Source/Types/MySqlString.cs'
--- a/MySql.Data/Provider/Source/Types/MySqlString.cs	2009-05-15 13:15:05 +0000
+++ b/MySql.Data/Provider/Source/Types/MySqlString.cs	2010-02-26 21:18:30 +0000
@@ -154,7 +154,7 @@
 				row["MaximumScale"] = 0;
 				row["MinimumScale"] = 0;
 				row["IsConcurrencyType"] = DBNull.Value;
-				row["IsLiteralsSupported"] = false;
+				row["IsLiteralSupported"] = false;
 				row["LiteralPrefix"] = null;
 				row["LiteralSuffix"] = null;
 				row["NativeDataType"] = null;

=== modified file 'MySql.Data/Provider/Source/Types/MySqlTime.cs'
--- a/MySql.Data/Provider/Source/Types/MySqlTime.cs	2009-04-21 18:02:13 +0000
+++ b/MySql.Data/Provider/Source/Types/MySqlTime.cs	2010-02-26 21:18:30 +0000
@@ -173,7 +173,7 @@
 			row["MaximumScale"] = 0;
 			row["MinimumScale"] = 0;
 			row["IsConcurrencyType"] = DBNull.Value;
-			row["IsLiteralsSupported"] = false;
+			row["IsLiteralSupported"] = false;
 			row["LiteralPrefix"] = null;
 			row["LiteralSuffix"] = null;
 			row["NativeDataType"] = null;

=== modified file 'MySql.Data/Provider/Source/Types/MySqlUByte.cs'
--- a/MySql.Data/Provider/Source/Types/MySqlUByte.cs	2009-04-21 18:02:13 +0000
+++ b/MySql.Data/Provider/Source/Types/MySqlUByte.cs	2010-02-26 21:18:30 +0000
@@ -130,7 +130,7 @@
 			row["MaximumScale"] = 0;
 			row["MinimumScale"] = 0;
 			row["IsConcurrencyType"] = DBNull.Value;
-			row["IsLiteralsSupported"] = false;
+			row["IsLiteralSupported"] = false;
 			row["LiteralPrefix"] = null;
 			row["LiteralSuffix"] = null;
 			row["NativeDataType"] = null;

=== modified file 'MySql.Data/Provider/Source/Types/MySqlUInt16.cs'
--- a/MySql.Data/Provider/Source/Types/MySqlUInt16.cs	2009-04-21 18:02:13 +0000
+++ b/MySql.Data/Provider/Source/Types/MySqlUInt16.cs	2010-02-26 21:18:30 +0000
@@ -130,7 +130,7 @@
 			row["MaximumScale"] = 0;
 			row["MinimumScale"] = 0;
 			row["IsConcurrencyType"] = DBNull.Value;
-			row["IsLiteralsSupported"] = false;
+			row["IsLiteralSupported"] = false;
 			row["LiteralPrefix"] = null;
 			row["LiteralSuffix"] = null;
 			row["NativeDataType"] = null;

=== modified file 'MySql.Data/Provider/Source/Types/MySqlUInt32.cs'
--- a/MySql.Data/Provider/Source/Types/MySqlUInt32.cs	2009-04-21 18:02:13 +0000
+++ b/MySql.Data/Provider/Source/Types/MySqlUInt32.cs	2010-02-26 21:18:30 +0000
@@ -148,7 +148,7 @@
 				row["MaximumScale"] = 0;
 				row["MinimumScale"] = 0;
 				row["IsConcurrencyType"] = DBNull.Value;
-				row["IsLiteralsSupported"] = false;
+				row["IsLiteralSupported"] = false;
 				row["LiteralPrefix"] = null;
 				row["LiteralSuffix"] = null;
 				row["NativeDataType"] = null;

=== modified file 'MySql.Data/Provider/Source/Types/MySqlUInt64.cs'
--- a/MySql.Data/Provider/Source/Types/MySqlUInt64.cs	2010-01-08 23:03:04 +0000
+++ b/MySql.Data/Provider/Source/Types/MySqlUInt64.cs	2010-02-26 21:18:30 +0000
@@ -130,7 +130,7 @@
 			row["MaximumScale"] = 0;
 			row["MinimumScale"] = 0;
 			row["IsConcurrencyType"] = DBNull.Value;
-			row["IsLiteralsSupported"] = false;
+			row["IsLiteralSupported"] = false;
 			row["LiteralPrefix"] = null;
 			row["LiteralSuffix"] = null;
 			row["NativeDataType"] = null;


Attachment: [text/bzr-bundle] bzr/reggie.burnett@sun.com-20100226211830-lpcelfeuilae6go3.bundle
Thread
bzr commit into connector-net-6.0 branch (reggie.burnett:796) Bug#50171Reggie Burnett26 Feb