Imported Upstream version 4.0.0~alpha1

Former-commit-id: 806294f5ded97629b74c85c09952f2a74fe182d9
This commit is contained in:
Jo Shields
2015-04-07 09:35:12 +01:00
parent 283343f570
commit 3c1f479b9d
22469 changed files with 2931443 additions and 869343 deletions

View File

@@ -42,19 +42,11 @@ namespace System.Data.Odbc
/// Provides a means of automatically generating single-table commands used to reconcile changes made to a DataSet with the associated database. This class cannot be inherited.
/// </summary>
#if NET_2_0
public sealed class OdbcCommandBuilder : DbCommandBuilder
#else // 1_1
public sealed class OdbcCommandBuilder : Component
#endif // NET_2_0
{
#region Fields
private OdbcDataAdapter _adapter;
#if ONLY_1_1
private string _quotePrefix;
private string _quoteSuffix;
#endif
private DataTable _schema;
private string _tableName;
@@ -87,9 +79,7 @@ namespace System.Data.Odbc
[OdbcDescriptionAttribute ("The DataAdapter for which to automatically generate OdbcCommands")]
[DefaultValue (null)]
public
#if NET_2_0
new
#endif // NET_2_0
OdbcDataAdapter DataAdapter {
get {
return _adapter;
@@ -145,45 +135,6 @@ namespace System.Data.Odbc
}
}
#if ONLY_1_1
[BrowsableAttribute (false)]
[OdbcDescriptionAttribute ("The prefix string wrapped around sql objects")]
[DesignerSerializationVisibilityAttribute (DesignerSerializationVisibility.Hidden)]
public string QuotePrefix {
get {
if (_quotePrefix == null)
return string.Empty;
return _quotePrefix;
}
set {
if (IsCommandGenerated)
throw new InvalidOperationException (
"QuotePrefix cannot be set after " +
"an Insert, Update or Delete command " +
"has been generated.");
_quotePrefix = value;
}
}
[BrowsableAttribute (false)]
[OdbcDescriptionAttribute ("The suffix string wrapped around sql objects")]
[DesignerSerializationVisibilityAttribute (DesignerSerializationVisibility.Hidden)]
public string QuoteSuffix {
get {
if (_quoteSuffix == null)
return string.Empty;
return _quoteSuffix;
}
set {
if (IsCommandGenerated)
throw new InvalidOperationException (
"QuoteSuffix cannot be set after " +
"an Insert, Update or Delete command " +
"has been generated.");
_quoteSuffix = value;
}
}
#endif
#endregion // Properties
@@ -195,11 +146,7 @@ namespace System.Data.Odbc
throw new NotImplementedException ();
}
#if ONLY_1_1
protected override
#else
new
#endif
void Dispose (bool disposing)
{
if (_disposed)
@@ -285,11 +232,7 @@ namespace System.Data.Odbc
GetParameterName (++paramCount),
OdbcType.Int,
length,
#if NET_2_0
columnName,
#else
string.Empty,
#endif
DataRowVersion.Original);
nullParam.Value = 1;
AddParameter (command, GetParameterName (++paramCount),
@@ -353,27 +296,16 @@ namespace System.Data.Odbc
}
query = String.Format (
#if NET_2_0
"{0} ({1}) VALUES ({2})",
#else
"{0}( {1} ) VALUES ( {2} )",
#endif
query,
#if NET_2_0
String.Join (", ", columns, 0, count),
String.Join (", ", values, 0, count));
#else
String.Join (" , ", columns, 0, count),
String.Join (" , ", values, 0, count));
#endif
_insertCommand.CommandText = query;
return _insertCommand;
}
public
#if NET_2_0
new
#endif // NET_2_0
OdbcCommand GetInsertCommand ()
{
// FIXME: check validity of adapter
@@ -386,7 +318,6 @@ namespace System.Data.Odbc
return CreateInsertCommand (false);
}
#if NET_2_0
public new OdbcCommand GetInsertCommand (bool useColumnsForParameterNames)
{
// FIXME: check validity of adapter
@@ -398,7 +329,6 @@ namespace System.Data.Odbc
return CreateInsertCommand (useColumnsForParameterNames);
}
#endif // NET_2_0
private OdbcCommand CreateUpdateCommand (bool option)
{
@@ -432,26 +362,16 @@ namespace System.Data.Odbc
string whereClause = CreateOptWhereClause (_updateCommand, count);
query = String.Format (
#if NET_2_0
"{0} {1} WHERE ({2})",
#else
"{0} {1} WHERE ( {2} )",
#endif
query,
#if NET_2_0
String.Join (", ", setClause, 0, count),
#else
String.Join (" , ", setClause, 0, count),
#endif
whereClause);
_updateCommand.CommandText = query;
return _updateCommand;
}
public
#if NET_2_0
new
#endif // NET_2_0
OdbcCommand GetUpdateCommand ()
{
// FIXME: check validity of adapter
@@ -464,7 +384,6 @@ namespace System.Data.Odbc
return CreateUpdateCommand (false);
}
#if NET_2_0
public new OdbcCommand GetUpdateCommand (bool useColumnsForParameterNames)
{
// FIXME: check validity of adapter
@@ -476,27 +395,18 @@ namespace System.Data.Odbc
return CreateUpdateCommand (useColumnsForParameterNames);
}
#endif // NET_2_0
private OdbcCommand CreateDeleteCommand (bool option)
{
CreateNewCommand (ref _deleteCommand);
string query = String.Format (
#if NET_2_0
"DELETE FROM {0}",
#else
"DELETE FROM {0}",
#endif
GetQuotedString (TableName));
string whereClause = CreateOptWhereClause (_deleteCommand, 0);
query = String.Format (
#if NET_2_0
"{0} WHERE ({1})",
#else
"{0} WHERE ( {1} )",
#endif
query,
whereClause);
_deleteCommand.CommandText = query;
@@ -504,9 +414,7 @@ namespace System.Data.Odbc
}
public
#if NET_2_0
new
#endif // NET_2_0
OdbcCommand GetDeleteCommand ()
{
// FIXME: check validity of adapter
@@ -519,7 +427,6 @@ namespace System.Data.Odbc
return CreateDeleteCommand (false);
}
#if NET_2_0
public new OdbcCommand GetDeleteCommand (bool useColumnsForParameterNames)
{
// FIXME: check validity of adapter
@@ -531,13 +438,8 @@ namespace System.Data.Odbc
return CreateDeleteCommand (useColumnsForParameterNames);
}
#endif // NET_2_0
#if ONLY_1_1
public
#else
new
#endif // NET_2_0
void RefreshSchema ()
{
// creates metadata
@@ -563,20 +465,13 @@ namespace System.Data.Odbc
_tableName = String.Empty;
}
#if NET_2_0
protected override
#endif
string GetParameterName (int parameterOrdinal)
{
#if NET_2_0
return String.Format ("p{0}", parameterOrdinal);
#else
return String.Format ("@p{0}", parameterOrdinal);
#endif
}
#if NET_2_0
protected override void ApplyParameterInfo (DbParameter parameter,
DataRow datarow,
StatementType statementType,
@@ -666,7 +561,6 @@ namespace System.Data.Odbc
sb.Remove (sb.Length - QuoteSuffix.Length, QuoteSuffix.Length );
return sb.ToString ();
}
#endif
private void OnRowUpdating (object sender, OdbcRowUpdatingEventArgs args)
{
@@ -708,12 +602,10 @@ namespace System.Data.Odbc
}
}
#if NET_2_0
string GetQuoteCharacter (OdbcConnection conn)
{
return conn.GetInfo (OdbcInfo.IdentifierQuoteChar);
}
#endif
#endregion // Methods
}