本文整理汇总了C#中System.Data.Common.DbConnection.CreateCommand方法的典型用法代码示例。如果您正苦于以下问题:C# DbConnection.CreateCommand方法的具体用法?C# DbConnection.CreateCommand怎么用?C# DbConnection.CreateCommand使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Data.Common.DbConnection
的用法示例。
在下文中一共展示了DbConnection.CreateCommand方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: CreateExtensionTable
private static void CreateExtensionTable(DbConnection connection, ExtendedTable extendedTable)
{
using (var queryCommand = connection.CreateCommand())
{
string primaryKeyColumn = GetPrimaryKey(connection, extendedTable.BaseTableName);
queryCommand.CommandText = string.Format(
"SELECT {0} FROM {1}",
primaryKeyColumn,
extendedTable.BaseTableName);
string dataType = null;
string properties =
string.Join(
", ",
new [] { string.Format("{0} uniqueidentifier PRIMARY KEY", primaryKeyColumn) }
.Union(
from property in extendedTable.ExtendedProperties
where TypeMapping.TryGetValue(property.PropertyType, out dataType)
select string.Format("{0} {1}", property.PropertyName, dataType)));
var creationCommand = connection.CreateCommand();
creationCommand.CommandText = string.Format(
"CREATE TABLE {0} ({1});",
extendedTable.TableName,
properties);
creationCommand.ExecuteNonQuery();
using (DbDataReader reader = queryCommand.ExecuteReader())
{
while (reader.Read())
{
object keyValue = reader[primaryKeyColumn];
creationCommand = connection.CreateCommand();
creationCommand.CommandText = string.Format(
"INSERT INTO {0} ({1}) VALUES (@value);",
extendedTable.TableName,
primaryKeyColumn);
var parameter = creationCommand.CreateParameter();
parameter.DbType = DbType.Guid;
parameter.ParameterName = "@value";
parameter.Value = keyValue;
creationCommand.Parameters.Add(parameter);
creationCommand.ExecuteNonQuery();
}
}
}
}
示例2: UpgradeDatabase
public static void UpgradeDatabase(DbConnection connection, DatabaseType databaseType)
{
// Figure out the current version of the schema
int currentVersion;
using (DbCommand cmd = connection.CreateCommand())
{
cmd.CommandText = "SELECT val FROM setup WHERE `key`='schemaVersion';";
using (DbDataReader reader = cmd.ExecuteReader())
{
if (!reader.Read())
currentVersion = 1;
else
currentVersion = int.Parse(reader.GetString(reader.GetOrdinal("val")));
}
}
// Now get the set of migrations we have avaiable
List<int> migrationVersions = GetMigrationVersions(databaseType);
foreach (int migration in migrationVersions)
{
if (currentVersion < migration)
{
PerformMigration(connection, databaseType, migration);
}
}
}
示例3: Insert
public void Insert(DbConnection con)
{
DbCommand cmd = con.CreateCommand();
cmd.CommandText = "INSERT INTO WordInstance ( InsWrdCod , InsDocCod , InsCount , InsPos ) VALUES( ? , ? , ? , ? )";
cmd.Connection = con;
DbParameter parm = cmd.CreateParameter();
parm.DbType = System.Data.DbType.Int64;
parm.Value = WordCode;
cmd.Parameters.Add(parm);
parm = cmd.CreateParameter();
parm.DbType = System.Data.DbType.Int64;
parm.Value = DocumentCode;
cmd.Parameters.Add(parm);
parm = cmd.CreateParameter();
parm.DbType = System.Data.DbType.Int64;
parm.Value = Count;
cmd.Parameters.Add(parm);
parm = cmd.CreateParameter();
parm.DbType = System.Data.DbType.Int64;
parm.Value = Positions;
cmd.Parameters.Add(parm);
if (cmd.ExecuteNonQuery() != 1)
throw new Exception("Error inserting WordInstance");
}
示例4: CreateParameter
/// <summary>
/// Create a new data parameter from the data source.
/// </summary>
/// <param name="dbConnection"> The database connection. </param>
/// <param name="dbTransaction"> An optional local database transaction. </param>
/// <param name="sourceColumn"> Specifies the source column. </param>
/// <param name="parameterDirection"> Specifies the parameter direction. </param>
/// <param name="parameterDbType"> Specifies the parameter provider-(in)dependent type. </param>
/// <param name="parameterSize"> Specifies the parameter size. </param>
/// <param name="parameterPrecision"> Specifies the parameter precision. </param>
/// <param name="parameterScale"> Specifies the parameter scale. </param>
/// <param name="parameterNullable"> Specifies the parameter nullable-ness. </param>
/// <param name="parameterName"> Specifies the parameter name. </param>
/// <param name="parameterValue"> Specifies the parameter value. </param>
/// <returns> The data parameter with the specified properties set. </returns>
public DbParameter CreateParameter(DbConnection dbConnection, DbTransaction dbTransaction, string sourceColumn, ParameterDirection parameterDirection, DbType parameterDbType, int parameterSize, byte parameterPrecision, byte parameterScale, bool parameterNullable, string parameterName, object parameterValue)
{
DbParameter dbParameter;
OnlyWhen._PROFILE_ThenPrint(string.Format("{0}::CreateParameter(...): enter", typeof(AdoNetStreamingFascade).Name));
if ((object)dbConnection == null)
throw new ArgumentNullException(nameof(dbConnection));
using (DbCommand dbCommand = dbConnection.CreateCommand())
dbParameter = dbCommand.CreateParameter();
dbParameter.ParameterName = parameterName;
dbParameter.Size = parameterSize;
dbParameter.Value = parameterValue;
dbParameter.Direction = parameterDirection;
dbParameter.DbType = parameterDbType;
this.ReflectionFascade.SetLogicalPropertyValue(dbParameter, "IsNullable", parameterNullable, true, false);
dbParameter.Precision = parameterPrecision;
dbParameter.Scale = parameterScale;
dbParameter.SourceColumn = sourceColumn;
OnlyWhen._PROFILE_ThenPrint(string.Format("{0}::CreateParameter(...): return parameter", typeof(AdoNetStreamingFascade).Name));
return dbParameter;
}
示例5: CreateCommand
public override DbCommand CreateCommand(DbConnection conn)
{
var cmd = conn.CreateCommand();
var pi = cmd.GetType().GetProperty("BindByName");
if (pi != null) pi.SetValue(cmd, true, null);
return cmd;
}
示例6: select
public void select(DbConnection conn)
{
if (conn.State != ConnectionState.Open)
conn.Open();
DataTable tb = new DataTable();
DbCommand dbCommand = conn.CreateCommand();
string selectQuery = DISCOUNTCURVESETTING_Table_DAO.SelectQuery_;
selectQuery = selectQuery.Replace("@[email protected]", this.KeyColumn_);
dbCommand.CommandText = selectQuery;
//DbDataAdapter dataAdapter = new DbDataAdapter(dbCommand, conn);
DbDataAdapter dataAdapter = DataBaseConnectManager.CreateDataAdapter(dbCommand, conn);
dataAdapter.Fill(tb);
DataRow[] dr = tb.Select();
int rowCount = dr.Length;
if (!(rowCount == 0 || rowCount == 1))
{ throw new Exception(); }
foreach (DataRow item in dr)
{
this.CURRENCY_ = item[0].ToString();
this.CURVECODE_ = item[1].ToString();
this.PROVIDER_ = item[2].ToString();
}
}
示例7: CreateSelectCommand
/// <summary>
/// Creates a select command.
/// </summary>
/// <param name="connection">The connection to create the command with.</param>
/// <param name="status">The job status to filter results on.</param>
/// <param name="count">The maximum number of results to select.</param>
/// <param name="before">The queued-after date to filter on.</param>
/// <returns>A select command.</returns>
protected override DbCommand CreateSelectCommand(DbConnection connection, JobStatus status, int count, DateTime before)
{
const string SqlStart = "SELECT{0} * FROM {1} WHERE {2} = {3} AND {4} < {5} ORDER BY {4};";
DbCommand command = connection.CreateCommand();
command.CommandType = CommandType.Text;
command.Parameters.Add(this.ParameterWithValue(this.ParameterName("Status"), status.ToString()));
command.Parameters.Add(this.ParameterWithValue(this.ParameterName("Before"), before));
string countString = String.Empty;
if (count > 0)
{
countString = String.Format(CultureInfo.InvariantCulture, " TOP ({0})", this.ParameterName("Count"));
command.Parameters.Add(this.ParameterWithValue(this.ParameterName("Count"), count));
}
command.CommandText = String.Format(
CultureInfo.InvariantCulture,
SqlStart,
countString,
this.TableName,
this.ColumnName("Status"),
this.ParameterName("Status"),
this.ColumnName("QueueDate"),
this.ParameterName("Before"));
return command;
}
示例8: CreateTable
private static void CreateTable(DbConnection connection)
{
using (var command = connection.CreateCommand())
{
command.CommandText = @"
create table Person (
PersonId integer,
Name nvarchar(100),
EMail nvarchar(100),
ZipCode nvarchar(100),
City nvarchar(100),
primary key(PersonId)
);
create table History (
PersonId integer,
HistoryNo integer,
Content nvarchar(100),
primary key(PersonId, HistoryNo)
);
create table IdManege (
TableName nvarchar(100),
Id integer,
Guid nvarchar(100),
primary key (TableName, Id)
);
";
var ret = command.ExecuteNonQuery();
}
}
示例9: FindVersion
protected override int FindVersion(DbConnection conn, string type)
{
int version = 0;
using (DbCommand cmd = conn.CreateCommand())
{
try
{
cmd.CommandText = "select top 1 version from migrations where name = '" + type + "' order by version desc"; //Must be
using (IDataReader reader = cmd.ExecuteReader())
{
if (reader.Read())
{
version = Convert.ToInt32(reader["version"]);
}
reader.Close();
}
}
catch
{
// Return -1 to indicate table does not exist
return -1;
}
}
return version;
}
示例10: DBHelper
/// <summary>
/// 构造函数
/// </summary>
/// <param name="dbConnectString">链接字符串</param>
/// <param name="dbProviderNamespace">数据提供者的命名空间,例如:"System.Data.SqlClient"</param>
public DBHelper(string dbConnectString, string dbProviderNamespace)
{
dbProviderFactory = DbProviderFactories.GetFactory(dbProviderNamespace);
dbConnection = dbProviderFactory.CreateConnection();
dbConnection.ConnectionString = dbConnectString;
dbCommand = dbConnection.CreateCommand();
}
示例11: GetForeignKeys
protected override DataTable GetForeignKeys(DbConnection connection)
{
var t = new DataTable("ForeignKeys");
using (var c = connection.CreateCommand())
{
c.CommandText = @"
SELECT
rc.CONSTRAINT_NAME AS 'CONSTRAINT_NAME',
'FOREIGN KEY' AS 'CONSTRAINT_TYPE',
rcu_from.TABLE_NAME AS 'TABLE_NAME',
rcu_from.TABLE_SCHEMA AS 'TABLE_SCHEMA',
rcu_from.COLUMN_NAME AS 'FKEY_FROM_COLUMN',
rcu_to.TABLE_SCHEMA AS 'FKEY_TO_SCHEMA',
rcu_to.TABLE_NAME AS 'FKEY_TO_TABLE',
rcu_to.COLUMN_NAME AS 'FKEY_TO_COLUMN'
FROM
INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS rc
INNER JOIN
INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE rcu_from ON
rc.CONSTRAINT_CATALOG = rcu_from.CONSTRAINT_CATALOG AND
rc.CONSTRAINT_NAME = rcu_from.CONSTRAINT_NAME
INNER JOIN
INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE rcu_to ON
rc.UNIQUE_CONSTRAINT_CATALOG = rcu_to.CONSTRAINT_CATALOG AND
rc.UNIQUE_CONSTRAINT_NAME = rcu_to.CONSTRAINT_NAME
";
using (var r = c.ExecuteReader())
t.Load(r);
}
return t;
}
示例12: CreateCreateCommand
protected virtual DbCommand CreateCreateCommand(DbConnection connection)
{
var command = connection.CreateCommand();
command.CommandType = System.Data.CommandType.Text;
command.CommandText = Settings.CreateCommandText;
return command;
}
示例13: ExecuteQuery
public static DBViewDataTable ExecuteQuery(DbConnection dbConnection, string query)
{
var dbCommand = dbConnection.CreateCommand();
dbCommand.CommandText = query;
DbDataReader reader = null;
var dbViewDataTable = new DBViewDataTable();
try
{
reader = dbCommand.ExecuteReader();
dbViewDataTable.DataTable.Load(reader, LoadOption.OverwriteChanges);
}
catch (Exception e)
{
MessageBox.Show(e.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
finally
{
if (reader != null)
{
reader.Close();
dbViewDataTable.RecordsAffected = reader.RecordsAffected;
}
}
return dbViewDataTable;
}
示例14: Insert
public void Insert(DbConnection con)
{
DbCommand cmd = con.CreateCommand();
cmd.CommandText = "INSERT INTO Document ( DocCod , DocPat , DocDes , DocLen ) VALUES( ? , ? , ? , ? )";
cmd.Connection = con;
Code = ++LastCode;
DbParameter parm = cmd.CreateParameter();
parm.DbType = System.Data.DbType.Int64;
parm.Value = Code;
cmd.Parameters.Add(parm);
parm = cmd.CreateParameter();
parm.DbType = System.Data.DbType.String;
parm.Value = Path;
cmd.Parameters.Add(parm);
parm = cmd.CreateParameter();
parm.DbType = System.Data.DbType.String;
parm.Value = Description;
cmd.Parameters.Add(parm);
parm = cmd.CreateParameter();
parm.DbType = System.Data.DbType.Int64;
parm.Value = NumberOfCharacters;
cmd.Parameters.Add(parm);
if (cmd.ExecuteNonQuery() != 1)
throw new Exception("Error inserting document");
}
示例15: DatabaseCommand
public DatabaseCommand(string query, DbConnection connection, Profiler profiler = null, params object[] arguments)
{
CommandProfiler = profiler;
Query = string.Format(query, arguments);
Command = connection.CreateCommand();
Command.CommandText = query;
}