List:Commits« Previous MessageNext Message »
From:rburnett Date:April 8 2009 8:36pm
Subject:Connector/NET commit: r1558 - in trunk: . MySql.Data/Provider/Source MySql.Data/Tests/Source
View as plain text  
Modified:
   trunk/CHANGES
   trunk/MySql.Data/Provider/Source/SchemaProvider.cs
   trunk/MySql.Data/Tests/Source/GetSchemaTests.cs
Log:
- made integer column types returned with table and column collections use the same data type
  when referencing MySql 4.1 servers and MySql 5.0+ servers (bug #44123)


Modified: trunk/CHANGES
===================================================================
--- trunk/CHANGES	2009-04-08 19:10:20 UTC (rev 1557)
+++ trunk/CHANGES	2009-04-08 20:36:25 UTC (rev 1558)
@@ -1,6 +1,8 @@
 Version 6.0.3
 - fixed broken connection prompting
 - fixed installer that was no longer referencing the right folders for Visual Studio assemblies [bug #44141]
+- made integer column types returned with table and column collections use the same data type
+  when referencing MySql 4.1 servers and MySql 5.0+ servers (bug #44123)
 
 Version 6.0.2
 - fixed registration problem with Visual studio (bug #44064)

Modified: trunk/MySql.Data/Provider/Source/SchemaProvider.cs
===================================================================
--- trunk/MySql.Data/Provider/Source/SchemaProvider.cs	2009-04-08 19:10:20 UTC (rev 1557)
+++ trunk/MySql.Data/Provider/Source/SchemaProvider.cs	2009-04-08 20:36:25 UTC (rev 1558)
@@ -104,20 +104,20 @@
             dt.Columns.Add("TABLE_NAME", typeof (string));
             dt.Columns.Add("TABLE_TYPE", typeof (string));
             dt.Columns.Add("ENGINE", typeof (string));
-            dt.Columns.Add("VERSION", typeof (long));
+            dt.Columns.Add("VERSION", typeof (ulong));
             dt.Columns.Add("ROW_FORMAT", typeof (string));
-            dt.Columns.Add("TABLE_ROWS", typeof (long));
-            dt.Columns.Add("AVG_ROW_LENGTH", typeof (long));
-            dt.Columns.Add("DATA_LENGTH", typeof (long));
-            dt.Columns.Add("MAX_DATA_LENGTH", typeof (long));
-            dt.Columns.Add("INDEX_LENGTH", typeof (long));
-            dt.Columns.Add("DATA_FREE", typeof (long));
-            dt.Columns.Add("AUTO_INCREMENT", typeof (long));
+            dt.Columns.Add("TABLE_ROWS", typeof (ulong));
+            dt.Columns.Add("AVG_ROW_LENGTH", typeof (ulong));
+            dt.Columns.Add("DATA_LENGTH", typeof (ulong));
+            dt.Columns.Add("MAX_DATA_LENGTH", typeof (ulong));
+            dt.Columns.Add("INDEX_LENGTH", typeof (ulong));
+            dt.Columns.Add("DATA_FREE", typeof (ulong));
+            dt.Columns.Add("AUTO_INCREMENT", typeof (ulong));
             dt.Columns.Add("CREATE_TIME", typeof (DateTime));
             dt.Columns.Add("UPDATE_TIME", typeof (DateTime));
             dt.Columns.Add("CHECK_TIME", typeof (DateTime));
             dt.Columns.Add("TABLE_COLLATION", typeof (string));
-            dt.Columns.Add("CHECKSUM", typeof (long));
+            dt.Columns.Add("CHECKSUM", typeof (ulong));
             dt.Columns.Add("CREATE_OPTIONS", typeof (string));
             dt.Columns.Add("TABLE_COMMENT", typeof (string));
 
@@ -147,14 +147,14 @@
             dt.Columns.Add("TABLE_SCHEMA", typeof (string));
             dt.Columns.Add("TABLE_NAME", typeof (string));
             dt.Columns.Add("COLUMN_NAME", typeof (string));
-            dt.Columns.Add("ORDINAL_POSITION", typeof (long));
+            dt.Columns.Add("ORDINAL_POSITION", typeof (ulong));
             dt.Columns.Add("COLUMN_DEFAULT", typeof (string));
             dt.Columns.Add("IS_NULLABLE", typeof (string));
             dt.Columns.Add("DATA_TYPE", typeof (string));
-            dt.Columns.Add("CHARACTER_MAXIMUM_LENGTH", typeof (long));
-            dt.Columns.Add("CHARACTER_OCTET_LENGTH", typeof (long));
-            dt.Columns.Add("NUMERIC_PRECISION", typeof (long));
-            dt.Columns.Add("NUMERIC_SCALE", typeof (long));
+            dt.Columns.Add("CHARACTER_MAXIMUM_LENGTH", typeof (ulong));
+            dt.Columns.Add("CHARACTER_OCTET_LENGTH", typeof (ulong));
+            dt.Columns.Add("NUMERIC_PRECISION", typeof (ulong));
+            dt.Columns.Add("NUMERIC_SCALE", typeof (ulong));
             dt.Columns.Add("CHARACTER_SET_NAME", typeof (string));
             dt.Columns.Add("COLLATION_NAME", typeof (string));
             dt.Columns.Add("COLUMN_TYPE", typeof (string));

Modified: trunk/MySql.Data/Tests/Source/GetSchemaTests.cs
===================================================================
--- trunk/MySql.Data/Tests/Source/GetSchemaTests.cs	2009-04-08 19:10:20 UTC (rev 1557)
+++ trunk/MySql.Data/Tests/Source/GetSchemaTests.cs	2009-04-08 20:36:25 UTC (rev 1558)
@@ -166,6 +166,15 @@
 			restrictions[1] = database0;
 			restrictions[2] = "test1";
 			DataTable dt = conn.GetSchema("Tables", restrictions);
+            Assert.IsTrue(dt.Columns["VERSION"].DataType == typeof(UInt64));
+            Assert.IsTrue(dt.Columns["TABLE_ROWS"].DataType == typeof(UInt64));
+            Assert.IsTrue(dt.Columns["AVG_ROW_LENGTH"].DataType == typeof(UInt64));
+            Assert.IsTrue(dt.Columns["DATA_LENGTH"].DataType == typeof(UInt64));
+            Assert.IsTrue(dt.Columns["MAX_DATA_LENGTH"].DataType == typeof(UInt64));
+            Assert.IsTrue(dt.Columns["INDEX_LENGTH"].DataType == typeof(UInt64));
+            Assert.IsTrue(dt.Columns["DATA_FREE"].DataType == typeof(UInt64));
+            Assert.IsTrue(dt.Columns["AUTO_INCREMENT"].DataType == typeof(UInt64));
+            Assert.IsTrue(dt.Columns["CHECKSUM"].DataType == typeof(UInt64));
 			Assert.IsTrue(dt.Rows.Count == 1);
 			Assert.AreEqual("Tables", dt.TableName);
 			Assert.AreEqual("test1", dt.Rows[0][2]);
@@ -183,6 +192,10 @@
 			DataTable dt = conn.GetSchema("Columns", restrictions);
 			Assert.AreEqual(4, dt.Rows.Count);
 			Assert.AreEqual("Columns", dt.TableName);
+            Assert.IsTrue(dt.Columns["ORDINAL_POSITION"].DataType == typeof(UInt64));
+            Assert.IsTrue(dt.Columns["CHARACTER_MAXIMUM_LENGTH"].DataType == typeof(UInt64));
+            Assert.IsTrue(dt.Columns["NUMERIC_PRECISION"].DataType == typeof(UInt64));
+            Assert.IsTrue(dt.Columns["NUMERIC_SCALE"].DataType == typeof(UInt64));
 			
 			// first column
 			Assert.AreEqual(database0.ToUpper(), dt.Rows[0]["TABLE_SCHEMA"].ToString().ToUpper());

Thread
Connector/NET commit: r1558 - in trunk: . MySql.Data/Provider/Source MySql.Data/Tests/Sourcerburnett8 Apr