Sorry it's taken me a bit to get back to you about this but I only
downloaded the .Net binaries a few weeks ago however I don't see that
property in my version (I haven't checked the source code)
According to the VS.NET ObjectBrowser and Intellisense,
MySQL.Data.Types.MySqlDateTime only exposes the following in the version I
have (1.0.1.12619):
GetType() as System.Type
Equals(ByVal Object) as Boolean
Equals(ByVal Object, ByVal Object) as Boolean
GetHashCode() as Integer
IsNull() as Boolean
IsZero() as Boolean
New()
op_Explicit(ByVal MySQL.Data.Types.MySQLDateTime) as Date
ReferenceEquals(ByVal Object, ByVal Object) as Boolean
ToBytes() as Byte()
ToString() as String
Value() as Date
but no "IsValidDateTime". Was that something you added to 1.0.2? I should
have looked for the Value property. I am sorry I didn't check this first.
There have been several suggestions about raising exceptions for out of
bounds (OOB) values (legal for mysql/ illegal for Date). However, the
interface I have doesn't seem allow me to set a field value to something
OOB. (sorry but it's going to be a few days yet before I get to upgrade my
library) Is there an override the ToString() method to accept a value so
that you can use a string to set the internal mysql date value to
something OOB? Should I look for an exception every time I check the Value
property so that I can detect that the value won't fit in a Date object? I
am an old hat at development but new to your library. Thank you in advance
for your patience.
Shawn Green
Database Administrator
Unimin Corporation - Spruce Pine
"Reggie Burnett" <reggie@stripped> wrote on 11/17/2004 03:51:23 PM:
> Shawn
>
> Those already exist. There is an IsValidDateTime property that returns
true
> if it is a valid DateTime. Also, there is a method named GetDateTime
that
> will return a DateTime if it can.
>
> -reggie
>
> > -----Original Message-----
> > From: SGreen@stripped [mailto:SGreen@stripped]
> > Sent: Wednesday, November 17, 2004 2:25 PM
> > To: Joshua Mouch
> > Cc: dotnet@stripped
> > Subject: Re: Installer & MySqlDateTime
> >
> > (Reggie just went over this a few posts ago or I wouldn't have known
the
> > answer)
> >
> > Because MySQL allows for datetimes that are "illegal" for .Net Date
types
> > (year 0, February 31st, '0000-00-00', etc) he had to create a new
return
> > type for those fields that didn't inherit from the base Date type.
> >
> > Using toString() will probably be the most portable way of dealing
with
> > MySQL date values until we can all agree on a method of handling those
> > date values that are valid for MySQL but out-of-range for .Net.
> >
> > My idea would be to expose a .NetDate property (a read/write Date
object)
> > from his new class that will be populated with a valid .Net Date
object if
> > one could exist. It would contain nothing for out of bound values. A
> > second property (.OutOfBounds) would be true if this were an out of
bounds
> > value. You could always set the internal MySQL date value with a
string
> > value even if you couldnt use a Date object.
> >
> > Any other ideas?
> >
> > Shawn Green
> > Database Administrator
> > Unimin Corporation - Spruce Pine
> >
> >
> >
> > "Joshua Mouch" <joshua@stripped> wrote on 11/17/2004 01:56:18
PM:
> >
> > > Oh, I thought that VS.Net installed a shell extension that
automatically
> > did
> > > that when you copied via Explorer.
> > >
> > > On a different note, it seems that some code was broken from the
upgrade
> > > from 1.01 to 1.02. It appears that the connector returns a
> > MysqlDateTime
> > > type for a date column. It appears that this cannot be converted to
a
> > .Net
> > > Date type. Here's the error:
> > >
> > > "Conversion from type 'MySqlDateTime' to type 'Date' is not valid."
> > >
> > > I'm not sure the best way to approach this. I can probably convert
it
> > to a
> > > string and then parse it to a Date type.
> > >
> > > Joshua Mouch
> > > EmailScout Support Team
> > > http://www.emailscout.net
> > >
> > >
> > > -----Original Message-----
> > > From: Ben Reichelt [mailto:ben.reichelt@stripped]
> > > Sent: Wednesday, November 17, 2004 1:27 PM
> > > To: Joshua Mouch
> > > Subject: Re: Installer
> > >
> > > In order to use an assembly from the GAC, you cant just copy it
there,
> > > you need to tell the GAC that you're putting it there as well. If
you
> > > use the gacutil.exe command line utility, which is in the your .net
> > > framework directory, you can register an assembly in the GAC. here
is
> > > an example:
> > >
> > > C:\>gacutil.exe -i "C:\Program Files\MySql\MySql Connector\bin\.NET
> > > 1.1\MySql.Data.dll"
> > >
> > > the "-i" flag tells gacutil to install the assembly, you can use the
> > > "-u" flag to uninstall an assembly from the GAC.
> > >
> > > hope this helps
> > >
> > > ben
> > >
> > >
> > > On Wed, 17 Nov 2004 13:18:19 -0500, Joshua Mouch
<joshua@stripped>
> > > wrote:
> > > > It'd be nice if the installer put the connector into the GAC
> > > automatically.
> > > > Every release seems to install to a different directory, and I
have to
> > go
> > > > through all my projects to change the reference paths. :P
> > > >
> > > > Which brings me to a question...
> > > > I copied the mysql connector dll to the assembly directory under
> > Windows.
> > > > When I look in the GAC directory, I see the Mysql.Data.dll file
there,
> > but
> > > > for some reason, it doesn't show up when adding a reference to a
> > project
> > > > from within Visual Studio. All of the other GAC assemblies are
there,
> > but
> > > > not Mysql.Data.dll. Anybody else experienced this, or is my
machine
> > just
> > > > messed up? :-)
> > > >
> > > > Joshua Mouch
> > > > EmailScout Support Team
> > > > http://www.emailscout.net
> > > >
> > > > -----Original Message-----
> > > > From: Jordan Sparks [mailto:jsparks@stripped]
> > > > Sent: Wednesday, November 17, 2004 1:02 PM
> > > > To: dotnet@stripped
> > > > Subject: RE: Last insert autoincrement id value with VB.NET
> > > >
> > > > I don't know of one. But remember that you can simply build a
> > function
> > > > to encapsulate that behavior. For instance, I have:
> > > >
> > > > public int NonQ(string command){
> > > > return NonQ(command,false);
> > > > }
> > > >
> > > > public int NonQ(string command,bool getInsertID){
> > > > cmd.CommandText=command;
> > > > int rowsChanged=0;
> > > > try{
> > > > con.Open();
> > > > rowsChanged=cmd.ExecuteNonQuery();
> > > > if(getInsertID){
> > > > cmd.CommandText="SELECT
> > > > LAST_INSERT_ID()";
> > > >
> > > > dr=(MySqlDataReader)cmd.ExecuteReader();
> > > > if(dr.Read())
> > > >
> > > > InsertID=PIn.PInt(dr[0].ToString());
> > > > }
> > > > }
> > > > catch(MySqlException e){
> > > > MessageBox.Show("Error:
> > > > "+e.Message+","+cmd.CommandText);
> > > > }
> > > > //catch{
> > > > // MessageBox.Show("Error: "+);
> > > > //}
> > > > finally{
> > > > con.Close();
> > > > }
> > > > return rowsChanged;
> > > > }
> > > >
> > > > I know it's C#, but you should be able to follow it. Basically,
the
> > > > second function does all the work, but is overloaded in the first
> > > > function. So, throughout my code, I can either call
> > > > DataConnection.NonQ("some string"), or I can call
> > > > DataConnection.NonQ("some string",true). Then
DataConnection.InsertID
> > > > will contain the last increment id. I'm sure my function above
could
> > be
> > > > a little more elegant, but it get's the job done.
> > > >
> > > > Jordan Sparks
> > > >
> > > > -----Original Message-----
> > > > From: Ville Mattila [mailto:ville@stripped]
> > > > Sent: Wednesday, November 17, 2004 5:06 AM
> > > > To: dotnet@stripped
> > > > Subject: Last insert autoincrement id value with VB.NET
> > > >
> > > > Hello,
> > > >
> > > > I was wondering if there is a function on Connector/.NET to
receive
> > > > easily the value of the auto increment id from the latest inserted
> > row.
> > > > Or is the only possibility to execute another query (SELECT
> > > > LAST_INSERT_ID()) ?
> > > >
> > > > Thanks,
> > > > Ville
> > > >
> > > > --
> > > > MySQL on .NET Mailing List
> > > > For list archives: http://lists.mysql.com/dotnet
> > > > To unsubscribe:
> > > > http://lists.mysql.com/dotnet?unsub=1
> > > >
> > > > --
> > > > MySQL on .NET Mailing List
> > > > For list archives: http://lists.mysql.com/dotnet
> > > > To unsubscribe:
> > > http://lists.mysql.com/dotnet?unsub=1
> > > >
> > > > --
> > > > MySQL on .NET Mailing List
> > > > For list archives: http://lists.mysql.com/dotnet
> > > > To unsubscribe:
> > > http://lists.mysql.com/dotnet?unsub=1
> > > >
> > > >
> > >
> > >
> > > --
> > > MySQL on .NET Mailing List
> > > For list archives: http://lists.mysql.com/dotnet
> > > To unsubscribe:
http://lists.mysql.com/dotnet?unsub=1
> > >
>