Modified:
branches/1.0/CHANGES
branches/1.0/TestSuite/StoredProcedure.cs
branches/1.0/mysqlclient/MysqlDefs.cs
branches/1.0/mysqlclient/StoredProcedure.cs
branches/1.0/mysqlclient/Types/MySqlValue.cs
branches/1.0/mysqlclient/parameter.cs
Log:
Fixed Bug #17749 There is no char type in MySqlDbType
MySqlDefs.cs: renamed String enum to Char
Parameter.cs: switched usage of MySqlDbType.String to MySqlDbType.Char
MySqlClient/StoredProcedure.cs: added case for "char" in parameter list
MySqlValue.cs: switched usage of MySqlDbType.String to MySqlDbType.Char
TestSuit/StoredProcedure.cs: Added char to the DeriveParameters test case
Modified: branches/1.0/CHANGES
===================================================================
--- branches/1.0/CHANGES 2006-02-28 22:30:48 UTC (rev 204)
+++ branches/1.0/CHANGES 2006-02-28 22:55:05 UTC (rev 205)
@@ -1,6 +1,7 @@
Bug #16659 Can't use double quotation marks(") as password access server by Connector/NET [fixed]
Bug #17375 CommandBuilder ignores Unsigned flag at Parameter creation [fixed]
-
+ Bug #17749 There is no char type in MySqlDbType [fixed]
+
x-xx-05 - Version 1.0.7
Bugs fixed or addressed
Modified: branches/1.0/TestSuite/StoredProcedure.cs
===================================================================
--- branches/1.0/TestSuite/StoredProcedure.cs 2006-02-28 22:30:48 UTC (rev 204)
+++ branches/1.0/TestSuite/StoredProcedure.cs 2006-02-28 22:55:05 UTC (rev 205)
@@ -478,16 +478,23 @@
[Test]
public void DeriveParameters()
{
+ execSQL("DROP TABLE IF EXISTS test2");
+ execSQL("CREATE TABLE test2 (c CHAR(20))");
+ execSQL("INSERT INTO test2 values ( 'xxxx')");
+ MySqlCommand cmd2 = new MySqlCommand("SELECT * FROM test2", conn);
+ MySqlDataReader reader =cmd2.ExecuteReader();
+ reader.Close();
+
execSQL("CREATE PROCEDURE spTest(IN \r\nvalin DECIMAL(10,2), " +
"\nIN val2 INT, INOUT val3 FLOAT, OUT val4 DOUBLE, INOUT val5 BIT, " +
- "val6 VARCHAR(155), val7 SET('a','b')) BEGIN SELECT 1; END");
+ "val6 VARCHAR(155), val7 SET('a','b'), val8 CHAR) BEGIN SELECT 1; END");
MySqlCommand cmd = new MySqlCommand("spTest", conn);
cmd.CommandType = CommandType.StoredProcedure;
MySqlDataAdapter da = new MySqlDataAdapter(cmd);
MySqlCommandBuilder.DeriveParameters(cmd);
- Assert.AreEqual(7, cmd.Parameters.Count);
+ Assert.AreEqual(8, cmd.Parameters.Count);
Assert.AreEqual("valin", cmd.Parameters[0].ParameterName);
Assert.AreEqual(ParameterDirection.Input, cmd.Parameters[0].Direction);
Assert.AreEqual(MySqlDbType.NewDecimal, cmd.Parameters[0].MySqlDbType);
@@ -515,6 +522,10 @@
Assert.AreEqual("val7", cmd.Parameters[6].ParameterName);
Assert.AreEqual(ParameterDirection.Input, cmd.Parameters[6].Direction);
Assert.AreEqual(MySqlDbType.Set, cmd.Parameters[6].MySqlDbType);
+
+ Assert.AreEqual("val8", cmd.Parameters[7].ParameterName);
+ Assert.AreEqual(ParameterDirection.Input, cmd.Parameters[7].Direction);
+ Assert.AreEqual(MySqlDbType.Char, cmd.Parameters[7].MySqlDbType);
}
/// <summary>
@@ -657,5 +668,6 @@
Assert.AreEqual("First record", dt.Rows[0]["name"]);
Assert.AreEqual("Second record", dt.Rows[1]["name"]);
}
+
}
}
Modified: branches/1.0/mysqlclient/MysqlDefs.cs
===================================================================
--- branches/1.0/mysqlclient/MysqlDefs.cs 2006-02-28 22:30:48 UTC (rev 204)
+++ branches/1.0/mysqlclient/MysqlDefs.cs 2006-02-28 22:55:05 UTC (rev 205)
@@ -149,7 +149,7 @@
/// <summary>A variable-length string containing 0 to 255 characters</summary>
VarChar = 253,
/// <summary><b>Obsolete</b> Use VarChar type</summary>
- String = 254,
+ Char = 254,
/// <summary></summary>
Geometry = 255,
/// <summary></summary>
Modified: branches/1.0/mysqlclient/StoredProcedure.cs
===================================================================
--- branches/1.0/mysqlclient/StoredProcedure.cs 2006-02-28 22:30:48 UTC (rev 204)
+++ branches/1.0/mysqlclient/StoredProcedure.cs 2006-02-28 22:55:05 UTC (rev 205)
@@ -296,6 +296,7 @@
switch (typename)
{
+ case "char" : return MySqlDbType.Char;
case "varchar": return MySqlDbType.VarChar;
case "date": return MySqlDbType.Date;
case "datetime": return MySqlDbType.Datetime;
Modified: branches/1.0/mysqlclient/Types/MySqlValue.cs
===================================================================
--- branches/1.0/mysqlclient/Types/MySqlValue.cs 2006-02-28 22:30:48 UTC (rev 204)
+++ branches/1.0/mysqlclient/Types/MySqlValue.cs 2006-02-28 22:55:05 UTC (rev 205)
@@ -159,7 +159,7 @@
case MySqlDbType.Set:
case MySqlDbType.Enum:
- case MySqlDbType.String:
+ case MySqlDbType.Char:
case MySqlDbType.VarChar:
return new MySqlString(null, type);
Modified: branches/1.0/mysqlclient/parameter.cs
===================================================================
--- branches/1.0/mysqlclient/parameter.cs 2006-02-28 22:30:48 UTC (rev 204)
+++ branches/1.0/mysqlclient/parameter.cs 2006-02-28 22:55:05 UTC (rev 205)
@@ -360,7 +360,7 @@
case MySqlDbType.LongBlob:
case MySqlDbType.Blob: dbType = DbType.Object; break;
- case MySqlDbType.String: dbType = DbType.StringFixedLength; break;
+ case MySqlDbType.Char: dbType = DbType.StringFixedLength; break;
}
}
@@ -375,7 +375,7 @@
case DbType.String: mySqlDbType = MySqlDbType.VarChar; break;
case DbType.AnsiStringFixedLength:
- case DbType.StringFixedLength: mySqlDbType = MySqlDbType.String; break;
+ case DbType.StringFixedLength: mySqlDbType = MySqlDbType.Char; break;
case DbType.Boolean:
case DbType.Byte:
| Thread |
|---|
| • Connector/NET commit: r205 - in branches/1.0: . TestSuite mysqlclient mysqlclient/Types | rburnett | 28 Feb |