当前位置: 首页>>代码示例>>C#>>正文


C# FirebirdClient.FbCommandBuilder类代码示例

本文整理汇总了C#中FirebirdSql.Data.FirebirdClient.FbCommandBuilder的典型用法代码示例。如果您正苦于以下问题:C# FbCommandBuilder类的具体用法?C# FbCommandBuilder怎么用?C# FbCommandBuilder使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


FbCommandBuilder类属于FirebirdSql.Data.FirebirdClient命名空间,在下文中一共展示了FbCommandBuilder类的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: DeleteTest

        public void DeleteTest()
        {
            string sql = "select * from TEST where int_field = @int_field";
            FbTransaction transaction = this.Connection.BeginTransaction();
            FbCommand command = new FbCommand(sql, Connection, transaction);
            FbDataAdapter adapter = new FbDataAdapter(command);
            adapter.MissingSchemaAction = MissingSchemaAction.AddWithKey;

            adapter.SelectCommand.Parameters.Add("@int_field", FbDbType.Integer).Value = 10;

            FbCommandBuilder builder = new FbCommandBuilder(adapter);

            DataSet ds = new DataSet();
            adapter.Fill(ds, "TEST");

            Assert.AreEqual(1, ds.Tables["TEST"].Rows.Count, "Incorrect row count");

            ds.Tables["TEST"].Rows[0].Delete();

            adapter.Update(ds, "TEST");

            adapter.Dispose();
            builder.Dispose();
            command.Dispose();
            transaction.Commit();
        }
开发者ID:kingpong,项目名称:NETProvider,代码行数:26,代码来源:FbDataAdapterTests.cs

示例2: GetUpdateCommandTest

		public void GetUpdateCommandTest()
		{
			FbCommandBuilder builder = new FbCommandBuilder(adapter);

			Console.WriteLine();
			Console.WriteLine("CommandBuilder -	GetUpdateCommand Method	Test");

			Console.WriteLine(builder.GetUpdateCommand().CommandText);

			builder.Dispose();
		}
开发者ID:cafee,项目名称:NETProvider,代码行数:11,代码来源:FbCommandBuilderTests.cs

示例3: UpdateTable

 public int UpdateTable(DataSet dataSet)
 {
     DbCommand sQLStringCommand = db.GetSQLStringCommand("SELECT * FROM " + dataSet.Tables[0].TableName);
     sQLStringCommand.Connection = db.OpenConnection();
     FbDataAdapter adapter = new FbDataAdapter();
     FbCommandBuilder builder = new FbCommandBuilder(adapter);
     adapter.SelectCommand = (FbCommand)sQLStringCommand;
     adapter.DeleteCommand = builder.GetDeleteCommand();
     adapter.UpdateCommand = builder.GetUpdateCommand();
     adapter.RowUpdated += new FbRowUpdatedEventHandler(adapter_RowUpdated);
     return adapter.Update(dataSet.Tables[0]);
 }
开发者ID:khanhdtn,项目名称:my-fw-win,代码行数:12,代码来源:frmImportFirebird.cs

示例4: CommandBuilderWithExpressionFieldTest

        public void CommandBuilderWithExpressionFieldTest()
        {
            adapter.SelectCommand.CommandText = "select	TEST.*,	0 AS VALOR from	TEST";

            FbCommandBuilder builder = new FbCommandBuilder(adapter);

            Console.WriteLine();
            Console.WriteLine("CommandBuilder -	GetUpdateCommand Method	Test");

            Console.WriteLine(builder.GetUpdateCommand().CommandText);

            builder.Dispose();
        }
开发者ID:kingpong,项目名称:NETProvider,代码行数:13,代码来源:FbCommandBuilderTests.cs

示例5: FillTest

		public void FillTest()
		{
			FbTransaction transaction = this.Connection.BeginTransaction();
			FbCommand command = new FbCommand("select * from TEST", Connection, transaction);
			FbDataAdapter adapter = new FbDataAdapter(command);
            adapter.MissingSchemaAction = MissingSchemaAction.AddWithKey;

			FbCommandBuilder builder = new FbCommandBuilder(adapter);

			DataSet ds = new DataSet();
			adapter.Fill(ds, "TEST");

			Assert.AreEqual(100, ds.Tables["TEST"].Rows.Count, "Incorrect row count");

			Console.WriteLine();
			Console.WriteLine("DataAdapter - Fill Method - Test");

			foreach (DataTable table in ds.Tables)
			{
				foreach (DataColumn col in table.Columns)
				{
					Console.Write(col.ColumnName + "\t\t");
				}

				Console.WriteLine();

				foreach (DataRow row in table.Rows)
				{
					for (int i = 0; i < table.Columns.Count; i++)
					{
						Console.Write(row[i] + "\t\t");
					}

					Console.WriteLine("");
				}
			}

			adapter.Dispose();
			builder.Dispose();
			command.Dispose();
			transaction.Commit();
		}
开发者ID:masroore,项目名称:Firebird-NETProvider,代码行数:42,代码来源:FbDataAdapterTests.cs

示例6: DataAdapterFillTest

		public void DataAdapterFillTest()
		{
			FbCommand command = new FbCommand("select * from TEST where DATE_FIELD = ?", Connection);
			FbDataAdapter adapter = new FbDataAdapter(command);

			adapter.SelectCommand.Parameters.Add("@DATE_FIELD", FbDbType.Date, 4, "DATE_FIELD").Value = new DateTime(2003, 1, 5);

			FbCommandBuilder builder = new FbCommandBuilder(adapter);

			DataSet ds = new DataSet();
			adapter.Fill(ds, "TEST");

			Console.WriteLine();
			Console.WriteLine("Implicit transactions - DataAdapter Fill Method - Test");

			foreach (DataTable table in ds.Tables)
			{
				foreach (DataColumn col in table.Columns)
				{
					Console.Write(col.ColumnName + "\t\t");
				}

				Console.WriteLine();

				foreach (DataRow row in table.Rows)
				{
					for (int i = 0; i < table.Columns.Count; i++)
					{
						Console.Write(row[i] + "\t\t");
					}

					Console.WriteLine("");
				}
			}

			adapter.Dispose();
			builder.Dispose();
			command.Dispose();
		}
开发者ID:Outlivier,项目名称:FirebirdSql.Data.FirebirdClient,代码行数:39,代码来源:FbImplicitTransactionTests.cs

示例7: FillMultipleTest

        public void FillMultipleTest()
        {
            FbTransaction transaction = this.Connection.BeginTransaction();
            FbCommand command = new FbCommand("select * from TEST", Connection, transaction);
            FbDataAdapter adapter = new FbDataAdapter(command);
            adapter.MissingSchemaAction = MissingSchemaAction.AddWithKey;

            FbCommandBuilder builder = new FbCommandBuilder(adapter);

            DataSet ds1 = new DataSet();
            DataSet ds2 = new DataSet();

            adapter.Fill(ds1, "TEST");
            adapter.Fill(ds2, "TEST");

            Assert.AreEqual(100, ds1.Tables["TEST"].Rows.Count, "Incorrect row count (ds1)");
            Assert.AreEqual(100, ds2.Tables["TEST"].Rows.Count, "Incorrect row count (ds2)");

            adapter.Dispose();
            builder.Dispose();
            command.Dispose();
            transaction.Commit();
        }
开发者ID:kingpong,项目名称:NETProvider,代码行数:23,代码来源:FbDataAdapterTests.cs

示例8: TestWithClosedConnection

        public void TestWithClosedConnection()
        {
            Connection.Close();

            FbCommandBuilder builder = new FbCommandBuilder(adapter);

            Console.WriteLine();
            Console.WriteLine("CommandBuilder -	RefreshSchema Method Test -	Commands for original SQL statement: ");

            Console.WriteLine(builder.GetInsertCommand().CommandText);
            Console.WriteLine(builder.GetUpdateCommand().CommandText);
            Console.WriteLine(builder.GetDeleteCommand().CommandText);

            adapter.SelectCommand.CommandText = "select	* from TEST	where BIGINT_FIELD = ?";

            builder.RefreshSchema();

            Console.WriteLine();
            Console.WriteLine("CommandBuilder -	RefreshSchema Method Test -	Commands for new SQL statement:	");

            Console.WriteLine(builder.GetInsertCommand().CommandText);
            Console.WriteLine(builder.GetUpdateCommand().CommandText);
            Console.WriteLine(builder.GetDeleteCommand().CommandText);

            builder.Dispose();
        }
开发者ID:kingpong,项目名称:NETProvider,代码行数:26,代码来源:FbCommandBuilderTests.cs

示例9: UpdateTimeStampTest

		public void UpdateTimeStampTest()
		{
			string sql = "select * from TEST where int_field = @int_field";
			FbTransaction transaction = this.Connection.BeginTransaction();
			FbCommand command = new FbCommand(sql, Connection, transaction);
			FbDataAdapter adapter = new FbDataAdapter(command);
            adapter.MissingSchemaAction = MissingSchemaAction.AddWithKey;

			adapter.SelectCommand.Parameters.Add("@int_field", FbDbType.Integer).Value = 1;

			FbCommandBuilder builder = new FbCommandBuilder(adapter);

			DataSet ds = new DataSet();
			adapter.Fill(ds, "TEST");

			Assert.AreEqual(1, ds.Tables["TEST"].Rows.Count, "Incorrect row count");

			DateTime dtValue = DateTime.Now;

			ds.Tables["TEST"].Rows[0]["TIMESTAMP_FIELD"] = dtValue;

			adapter.Update(ds, "TEST");

			adapter.Dispose();
			builder.Dispose();
			command.Dispose();

			transaction.Commit();

			transaction = Connection.BeginTransaction();

			sql = "SELECT timestamp_field FROM TEST WHERE int_field = @int_field";
			command = new FbCommand(sql, Connection, transaction);
			command.Parameters.Add("@int_field", FbDbType.Integer).Value = 1;

			DateTime val = (DateTime)command.ExecuteScalar();

			transaction.Commit();

			Assert.AreEqual(dtValue.Day, val.Day, "timestamp_field has not correct day");
			Assert.AreEqual(dtValue.Month, val.Month, "timestamp_field has not correct month");
			Assert.AreEqual(dtValue.Year, val.Year, "timestamp_field has not correct year");
			Assert.AreEqual(dtValue.Hour, val.Hour, "timestamp_field has not correct hour");
			Assert.AreEqual(dtValue.Minute, val.Minute, "timestamp_field has not correct minute");
			Assert.AreEqual(dtValue.Second, val.Second, "timestamp_field has not correct second");
		}
开发者ID:masroore,项目名称:Firebird-NETProvider,代码行数:46,代码来源:FbDataAdapterTests.cs

示例10: UpdateDecimalTest

		public void UpdateDecimalTest()
		{
			string sql = "select * from TEST where int_field = @int_field";
			FbTransaction transaction = this.Connection.BeginTransaction();
			FbCommand command = new FbCommand(sql, Connection, transaction);
			FbDataAdapter adapter = new FbDataAdapter(command);
            adapter.MissingSchemaAction = MissingSchemaAction.AddWithKey;

			adapter.SelectCommand.Parameters.Add("@int_field", FbDbType.Integer).Value = 1;

			FbCommandBuilder builder = new FbCommandBuilder(adapter);

			DataSet ds = new DataSet();
			adapter.Fill(ds, "TEST");

			Assert.AreEqual(1, ds.Tables["TEST"].Rows.Count, "Incorrect row count");

			ds.Tables["TEST"].Rows[0]["DECIMAL_FIELD"] = System.Int32.MaxValue;

			adapter.Update(ds, "TEST");

			adapter.Dispose();
			builder.Dispose();
			command.Dispose();

			transaction.Commit();

			transaction = Connection.BeginTransaction();

			sql = "SELECT decimal_field FROM TEST WHERE int_field = @int_field";
			command = new FbCommand(sql, Connection, transaction);
			command.Parameters.Add("@int_field", FbDbType.Integer).Value = 1;

			decimal val = (decimal)command.ExecuteScalar();

			transaction.Commit();

			Assert.AreEqual(System.Int32.MaxValue, val, "decimal_field has not correct value");
		}
开发者ID:masroore,项目名称:Firebird-NETProvider,代码行数:39,代码来源:FbDataAdapterTests.cs

示例11: UpdateVarCharTest

		public void UpdateVarCharTest()
		{
			string sql = "select * from TEST where int_field = @int_field";
			FbTransaction transaction = this.Connection.BeginTransaction();
			FbCommand command = new FbCommand(sql, Connection, transaction);
			FbDataAdapter adapter = new FbDataAdapter(command);
            adapter.MissingSchemaAction = MissingSchemaAction.AddWithKey;

			adapter.SelectCommand.Parameters.Add("@int_field", FbDbType.Integer).Value = 1;

			FbCommandBuilder builder = new FbCommandBuilder(adapter);

			DataSet ds = new DataSet();
			adapter.Fill(ds, "TEST");

			Assert.AreEqual(1, ds.Tables["TEST"].Rows.Count, "Incorrect row count");

			ds.Tables["TEST"].Rows[0]["VARCHAR_FIELD"] = "ONE VAR THOUSAND";

			adapter.Update(ds, "TEST");

			adapter.Dispose();
			builder.Dispose();
			command.Dispose();

			transaction.Commit();

			transaction = Connection.BeginTransaction();

			sql = "SELECT varchar_field FROM TEST WHERE int_field = @int_field";
			command = new FbCommand(sql, Connection, transaction);
			command.Parameters.Add("@int_field", FbDbType.Integer).Value = 1;

			string val = (string)command.ExecuteScalar();

			transaction.Commit();

			Assert.AreEqual("ONE VAR THOUSAND", val.Trim(), "varchar_field has not correct value");
		}
开发者ID:masroore,项目名称:Firebird-NETProvider,代码行数:39,代码来源:FbDataAdapterTests.cs

示例12: InsertTest

		public void InsertTest()
		{
			FbTransaction transaction = this.Connection.BeginTransaction();
			FbCommand command = new FbCommand("select * from TEST", Connection, transaction);
			FbDataAdapter adapter = new FbDataAdapter(command);
            adapter.MissingSchemaAction = MissingSchemaAction.AddWithKey;

			FbCommandBuilder builder = new FbCommandBuilder(adapter);

			DataSet ds = new DataSet();
			adapter.Fill(ds, "TEST");

			Assert.AreEqual(100, ds.Tables["TEST"].Rows.Count, "Incorrect row count");

			DataRow newRow = ds.Tables["TEST"].NewRow();

			newRow["int_field"] = 101;
			newRow["CHAR_FIELD"] = "ONE THOUSAND";
			newRow["VARCHAR_FIELD"] = ":;,.{}`+^*[]\\!|@#$%&/()?_-<>";
			newRow["BIGint_field"] = 100000;
			newRow["SMALLint_field"] = 100;
			newRow["DOUBLE_FIELD"] = 100.01;
			newRow["NUMERIC_FIELD"] = 100.01;
			newRow["DECIMAL_FIELD"] = 100.01;
			newRow["DATE_FIELD"] = new DateTime(100, 10, 10);
			newRow["TIME_FIELD"] = new TimeSpan(10, 10, 10);
			newRow["TIMESTAMP_FIELD"] = new DateTime(100, 10, 10, 10, 10, 10, 10);
			newRow["CLOB_FIELD"] = "ONE THOUSAND";

			ds.Tables["TEST"].Rows.Add(newRow);

			adapter.Update(ds, "TEST");

			adapter.Dispose();
			builder.Dispose();
			command.Dispose();
			transaction.Commit();
		}
开发者ID:masroore,项目名称:Firebird-NETProvider,代码行数:38,代码来源:FbDataAdapterTests.cs

示例13: SaveDataTableSetRowState

        /// <summary>
        /// Saves a dataset's datatable to the database using the values
        /// specified when db provider was created
        /// </summary>
        /// <param name="tableName"></param>
        /// <param name="dataTable"></param>
        public int SaveDataTableSetRowState(string tableName, DataTable dataTable)
        {
            CheckDisposedState();
            int recordsAffected = 0;
            //Create a data adapter to read Firebird schema for the table.
            this.NewDataAdapterWithSelect(tableName);

            this.DataAdapater.FillLoadOption = LoadOption.OverwriteChanges;
            FbCommandBuilder cmdBuilder = new FbCommandBuilder(this.DataAdapater);

            DataTable table = new DataTable();
            this.DataAdapater.Fill(table);

            cmdBuilder.RefreshSchema();
            table.TableName = dataTable.TableName;
            foreach (DataRow row in dataTable.Rows)
            {
                if (row.RowState == DataRowState.Unchanged) row.SetAdded();
                table.ImportRow(row);
            }
            try
            {
                recordsAffected = this.DataAdapater.Update(table);
            }
            catch
            {
                throw new Exception();
            }

            return recordsAffected;
        }
开发者ID:Tech-Giant,项目名称:ExpenseManagement,代码行数:37,代码来源:FirebirdDBProvider.cs


注:本文中的FirebirdSql.Data.FirebirdClient.FbCommandBuilder类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。