C#QuotedStr方法实现,引号的处理

在Delphi中处理引号有QuotedStr函数,但C#中却没有相应的处理!所以转换了Delphi的代码为C#中来处理。。以下为代码!

        protected string QuotedStr(string S)
        {
            string vResult;
            vResult = S;
            for (int i = vResult.Length-1; i >= 0; i--)
            {
                if (vResult[i].Equals('\''))
                {
                    vResult=vResult.Insert(i, "\'");
                }
            }
            vResult = "'" + vResult + "'";
            return vResult;
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string vString,vTemp,vCondition;
            vString = "ab'cd";
            vCondition = string.Format("ProjectName= {0}", QuotedStr(vString));
            MessageBox.Show(vCondition);
        }


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
下面是一个简单的Delphi代码示例,演示了如何创建一个类似DBSync v1.0的数据同步工具: ```delphi unit DataSyncTool; interface uses // 引入所需的单元 type TDataSyncTool = class private FSourceConnection: TADOConnection; FTargetConnection: TADOConnection; procedure SyncTable(const TableName: string); public constructor Create(SourceConnection: TADOConnection; TargetConnection: TADOConnection); procedure SyncData; end; implementation constructor TDataSyncTool.Create(SourceConnection: TADOConnection; TargetConnection: TADOConnection); begin FSourceConnection := SourceConnection; FTargetConnection := TargetConnection; end; procedure TDataSyncTool.SyncTable(const TableName: string); var SourceQuery: TADOQuery; TargetQuery: TADOQuery; begin SourceQuery := TADOQuery.Create(nil); TargetQuery := TADOQuery.Create(nil); try SourceQuery.Connection := FSourceConnection; TargetQuery.Connection := FTargetConnection; // 获取源表数据 SourceQuery.SQL.Text := 'SELECT * FROM ' + TableName; SourceQuery.Open; // 删除目标表中的所有数据 TargetQuery.SQL.Text := 'DELETE FROM ' + TableName; TargetQuery.ExecSQL; // 将源表数据插入到目标表中 SourceQuery.First; while not SourceQuery.Eof do begin TargetQuery.SQL.Text := 'INSERT INTO ' + TableName + ' VALUES ('; for i := 0 to SourceQuery.FieldCount - 1 do begin if i > 0 then TargetQuery.SQL.Add(','); TargetQuery.SQL.Add(QuotedStr(SourceQuery.Fields[i].AsString)); end; TargetQuery.SQL.Add(')'); TargetQuery.ExecSQL; SourceQuery.Next; end; finally SourceQuery.Free; TargetQuery.Free; end; end; procedure TDataSyncTool.SyncData; begin // 同步需要的表格 SyncTable('Table1'); SyncTable('Table2'); // 可根据需要继续同步其他表格 end; end. ``` 上述代码演示了一个名为`TDataSyncTool`的类,它接受源数据库连接和目标数据库连接作为参数,并提供了一个`SyncData`方法来执行数据同步操作。在`SyncData`方法中,你可以根据需要调用`SyncTable`方法来同步不同的表格数据。 请注意,上述代码仅为示例,你需要根据实际需求进行适当的修改和调整。此外,还需要创建和管理数据库连接,并根据需要添加其他必要的组件和代码来实现完整的数据同步功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值