"Only byte arrays can be serialized by MySqlBinary"
Okay - Without delving too deep into the code yet (I've simply dropped the
new Mysql.Data.Dll into our existing package and tried a few things) I'm
getting this error when attempting to .Update a datatable.
Some sample code as follows:
Public Function Save(ByVal spec As Spec) As Boolean
Dim sSql As String
sSql = "SELECT * FROM S_SPEC WHERE EN_NO=" & spec.ENNO
Dim conn As New
MySqlConnection(APDApp.MySql.ConnectionString)
conn.Open()
Dim comm As New MySqlCommand(sSql, conn)
Dim rs As New MySqlDataAdapter(comm)
Dim cb As New MySqlCommandBuilder(rs)
Dim dt As New DataTable
rs.Fill(dt)
Dim bIsNew As Boolean = False
Dim row As DataRow
If dt.Rows.Count = 0 Then
' does not exist, so create
row = dt.NewRow
bIsNew = True
Else
row = dt.Rows(0)
bIsNew = False
End If
row("C_NO") = spec.CNO
row("B_MAT") = spec.BMat
row("CUSTOMER") = spec.Customer
row("CUSTREF1") = spec.CustRef1
row("CUSTREF2") = spec.CustRef2
row("DEPTH") = spec.Depth
row("EN_DATE") = spec.ENDate
row("FEFCO") = spec.Fefco
row("JOINTYPE") = spec.Join
row("LENGTH") = spec.Length
row("S_MEMO") = spec.Memo
row("PRINT") = spec.Print
row("QUALITY") = spec.Quality
row("STYLE") = spec.Style
row("WIDTH") = spec.Width
row("DELNOTE") = spec.DelNote
If bIsNew Then
dt.Rows.Add(row)
End If
rs.Update(dt)
dt.Dispose()
rs.Dispose()
cb.Dispose()
comm.Dispose()
conn.Close()
conn.Dispose()
End Function
--- Table Structure ---
CREATE TABLE `apdwin`.`s_spec` (
`ID` int( 11 ) NOT NULL AUTO_INCREMENT ,
`EN_NO` int( 6 ) NOT NULL default '0',
`CLEAN` double NOT NULL default '0',
`C_NO` smallint( 6 ) NOT NULL default '0',
`CUSTOMER` varchar( 50 ) NOT NULL default '',
`EN_DATE` date default NULL ,
`CUSTREF1` varchar( 30 ) NOT NULL default '',
`CUSTREF2` varchar( 30 ) NOT NULL default '',
`B_MAT` char( 3 ) NOT NULL default '',
`QUALITY` varchar( 30 ) NOT NULL default '',
`FEFCO` varchar( 6 ) NOT NULL default '',
`STYLE` varchar( 30 ) NOT NULL default '',
`JOINTYPE` char( 1 ) NOT NULL default '',
`LENGTH` smallint( 6 ) NOT NULL default '0',
`WIDTH` smallint( 6 ) NOT NULL default '0',
`DEPTH` smallint( 6 ) NOT NULL default '0',
`STOCK` double NOT NULL default '0',
`GRAMS` double NOT NULL default '0',
`BAND` char( 1 ) NOT NULL default '',
`PRINT` char( 2 ) NOT NULL default '',
`EQPAL` double NOT NULL default '0',
`PREV_ENNO` double NOT NULL default '0',
`DELNOTE` varchar( 255 ) NOT NULL default '',
`S_MEMO` mediumtext NOT NULL ,
`DEL_ADD_ID` int( 11 ) NOT NULL default '0',
PRIMARY KEY ( `ID` ) ,
UNIQUE KEY `en_no` ( `EN_NO` ) ,
KEY `c_no` ( `C_NO` ) ,
KEY `clean` ( `CLEAN` ) ,
KEY `customer` ( `CUSTOMER` ) ,
KEY `custref1` ( `CUSTREF1` ) ,
) TYPE = InnoDB PACK_KEYS =1;
Any ideas, off the top of your head Reggie?
B.
-----Original Message-----
From: Barry Zubel [mailto:barry@stripped]
Sent: 28 October 2004 14:52
To: dotnet@stripped
Subject: RE: MySQL Connector/Net 1.0.1 beta 2 has been released.
For those of you slowly working through the mirror sites to find one that
works, this one appears to:
http://dev.mysql.com/get/Downloads/Connector-Net/mysql-connector-net-1.0.1-b
eta.zip/from/http://mysql.mirrors.pair.com/
Off to unzip and try it!
Thanks Reggie! :D
B.
-----Original Message-----
From: Reggie Burnett [mailto:reggie@stripped]
Sent: 28 October 2004 14:28
To: announce@stripped; dotnet@stripped
Subject: MySQL Connector/Net 1.0.1 beta 2 has been released.
Hi,
MySQL Connector/Net 1.0.1, a new version of the fully-managed, ADO.Net
provider for the popular MySQL database system.
Version 1.0.1 is the second beta release of the original ByteFX MySQL
provider acquired earlier this year. This release is suitable for use with
any MySQL version including MySQL-4.1 or MySQL-5.0.
It is now available in source and binary form from the Connector/Net
download pages at http://dev.mysql.com/downloads/connector/net/1.0.html
and mirror sites (note that not all mirror sites may be up to date at this
point of time - if you can't find this version on some mirror, please try
again later or choose another download site.)
========================= Attention ======================================
During the final QA process for 1.0.1, a problem was discovered where data
packets larger than 16M are not handled properly when the connection is
using compression. There is no need to file bug reports on this issue as
the test suite already identifies this as a problem.
==========================================================================
-Reggie
- From the changelog:
10-25-04 - Version 1.0.1-beta
- Fixed BUG #5602 Possible bug in MySqlParameter(string, object)
constructor
- Fixed BUG #5458 Calling GetChars on a longtext column throws an
exception
- Fixed BUG #5474 cannot run a stored procedure populating
mysqlcommand.parameters
- Fixed BUG #5469 Setting DbType throws NullReferenceException
- Fixed problem where connector was not issuing a CMD_QUIT before
closing the socket
- Fixed BUG #5392 MySqlCommand sees "?" as parameters in string
literals
- Fixed problem with ConnectionInternal where a key might be added more
than once
- CP1252 is now used for Latin1 only when the server is 4.1.2 and later
- Fixed BUG #5388 DataReader reports all rows as NULL if one row is NULL
- Virtualized driver subsystem so future releases could easily
support client or embedded server support
- Field buffers being reused to decrease memory allocations and
increase speed
- Fixed problem where using old syntax while using the interfaces
caused problems
- Using PacketWriter instead of Packet for writing to streams
- Refactored compression code into CompressedStream to clean up
NativeDriver
- Added test case for resetting the command text on a prepared
command
- Fixed problem where MySqlParameterCollection.Add() would throw
unclear exception when given a null value (Bug #5621)
- Fixed construtor initialize problems in MySqlCommand() (Bug
#5613)
- Fixed Parsing the ';' char (Bug #5876)
- Fixed missing Reference in DbType setter (Bug #5897)
- Fixed System.OverflowException when using YEAR datatype (Bug
#6036)
- Added Aggregate function test (wasn't really a bug)
- Fixed serializing of floating point parameters (double, numeric,
single, decimal) (Bug #5900)
- IsNullable error (Bug #5796)
- Fixed problem where connection lifetime on the connect string was
not being respected
- Fixed problem where Min Pool Size was not being respected
- Fixed MySqlDataReader and 'show tables from ...' behaviour (Bug
#5256)
- Implemented SequentialAccess
- Fixed MySqlDateTime sets IsZero property on all subseq.records
after first zero found (Bug #6006)
- Fixed Can't display Chinese correctly (Bug #5288)
- Fixed Russian character support as well
- Fixed Method TokenizeSql() uses only a limited set of valid
characters for parameters (Bug #6217)
- Fixed NET Connector source missing resx files (Bug #6216)
- Fixed DBNull Values causing problems with retrieving/updating
queries. (Bug #5798)
- Fixed Yet Another "object reference not set to an instance of an
object" (Bug #5496)
- Fixed problem in PacketReader where it could try to allocate the
wrong buffer size in EnsureCapacity
- Fixed GetBoolean returns wrong values (Bug #6227)
- Fixed IndexOutOfBounds when reading BLOB with DataReader with
GetString(index) (Bug #6230)
Reggie Burnett, Software Developer
MySQL Inc, http://www.mysql.com
--
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