insert语句太长用StringBuilder优化一下

 private void btnSave_Click(object sender, RoutedEventArgs e)
    {
      if (IsInsert)
      {
        //如果日历控件没有选日期,那帮它赋一个当前日期。下面有三个日历控件中,我只为其中一个日历控件做了赋值。
        DateTime time1 = dpEditTime.SelectedDate == null ? DateTime.Now : dpEditTime.SelectedDate.Value; 

        DataUpdate updata = new DataUpdate();
        string sql = "insert into T_SITE (SITE_ID,SITE_NAME,SITE_TITLE,SITE_DIR,SITE_ORDER,SITE_KEYS,SITE_NOTE,SITE_LOGO,SITE_PUBLISH,SITE_PUBLISH_TIME,SITE_LOG_CLEAR,SITE_UPLOAD_SIZE,SITE_ADD_TIME,SITE_UPDATE_TIME,SITE_UPLOAD_FILE_TYPE) values('" + txtSiteID.Text + "','" + txtSiteName.Text + "','" + txtSiteTitle.Text + "','" + txtSitePath.Text + "','" + txtSiteNumber.Text + "','" + txtKeyword.Text + "','" + txtWebDescription.Text + "','" + txtSiteLogo.Text + "','" + txtYesNORelease.Text + "',to_date('" +txtReleaseTime.SelectedDate.Value.ToString("yyyy-MM-dd hh:mm:ss") + "','YYYY-MM-DD hh24:mi:ss'),'" + txtDiaryEDay.Text + "','" + txtUpFileSize.Text + "',to_date('" +dpAddTime.SelectedDate.Value.ToString("yyyy-MM-dd hh:mm:ss") + "','YYYY-MM-DD hh24:mi:ss'),to_date('" + time1.ToString("yyy-MM-dd hh:mm:ss") + "','YYYY-MM-DD hh24:mi:ss'),'" + txtUpFileTypeLimit.Text + "')"; 

        //insert语句太长,有StringBuilder优化一下
        StringBuilder sql1 = new StringBuilder(); 

        sql1.Append(@"insert into T_SITE (SITE_ID,SITE_NAME,SITE_TITLE,SITE_DIR,SITE_ORDER,SITE_KEYS,SITE_NOTE,SITE_LOGO,SITE_PUBLISH,SITE_PUBLISH_TIME,SITE_LOG_CLEAR,SITE_UPLOAD_SIZE,SITE_ADD_TIME,SITE_UPDATE_TIME,SITE_UPLOAD_FILE_TYPE) values('");
        sql1.Append(txtSiteID.Text); sql1.Append("','");
        sql1.Append(txtSiteName.Text); sql1.Append("','");
        sql1.Append(txtSiteTitle.Text); sql1.Append("','");
        sql1.Append(txtSitePath.Text); sql1.Append("','");
        sql1.Append(txtSiteNumber.Text); sql1.Append("','");
        sql1.Append(txtKeyword.Text); sql1.Append("','");
        sql1.Append(txtWebDescription.Text); sql1.Append("','");
        sql1.Append(txtSiteLogo.Text); sql1.Append("','");
        sql1.Append(txtYesNORelease.Text);
        sql1.Append("',to_date('");
        sql1.Append(txtReleaseTime.SelectedDate.Value.ToString("yyyy-MM-dd hh:mm:ss"));
        sql1.Append("','YYYY-MM-DD hh24:mi:ss'),'");
        sql1.Append(txtDiaryEDay.Text); sql1.Append("','");
        sql1.Append(txtUpFileSize.Text);
        sql1.Append("',to_date('");
        sql1.Append(dpAddTime.SelectedDate.Value.ToString("yyyy-MM-dd hh:mm:ss"));
        sql1.Append("','YYYY-MM-DD hh24:mi:ss'),to_date('");
        sql1.Append(time1.ToString("yyy-MM-dd hh:mm:ss"));
        sql1.Append("','YYYY-MM-DD hh24:mi:ss'),'");
        sql1.Append(txtUpFileTypeLimit.Text);
        sql1.Append("')"); 

        MessageBox.Show(sql1.ToString()); 

        updata.DataObjects.Add(sql1.ToString()); 

        updata.DataObjects.Add(sql);
        updata = m_IDataProvider.Execute(updata);
        if (updata.ExecuteState)
        {
          MessageBox.Show("插入成功");
        }
      }
      else
      {  

      } 

    }
  }
}
(0)

相关推荐

  • insert语句太长用StringBuilder优化一下

    private void btnSave_Click(object sender, RoutedEventArgs e) { if (IsInsert) { //如果日历控件没有选日期,那帮它赋一个当前日期.下面有三个日历控件中,我只为其中一个日历控件做了赋值. DateTime time1 = dpEditTime.SelectedDate == null ? DateTime.Now : dpEditTime.SelectedDate.Value; DataUpdate updata = n

  • MySQL中insert语句的使用与优化教程

    MySQL 表中使用 INSERT INTO SQL语句来插入数据. 你可以通过 mysql> 命令提示窗口中向数据表中插入数据,或者通过PHP脚本来插入数据. 语法 以下为向MySQL数据表插入数据通用的 INSERT INTO SQL语法: INSERT INTO table_name ( field1, field2,...fieldN ) VALUES ( value1, value2,...valueN ); 如果数据是字符型,必须使用单引号或者双引号,如:"value"

  • MySQL实战之Insert语句的使用心得

    一.Insert的几种语法 1-1.普通插入语句 INSERT INTO table (`a`, `b`, `c`, --) VALUES ('a', 'b', 'c', --); 这里不再赘述,注意顺序即可,不建议小伙伴们去掉前面括号的内容,别问为什么,容易被同事骂. 1-2.插入或更新 如果我们希望插入一条新记录(INSERT),但如果记录已经存在,就更新该记录,此时,可以使用"INSERT INTO - ON DUPLICATE KEY UPDATE -"语句: 情景示例:这张表

  • python一行sql太长折成多行并且有多个参数的方法

    sql语句 有一个非常长的sql,用编辑器打开编写的时候太长了导致编写非常吃力,而且容易错乱,我想做的是把A,B,C三个变量赋值到sql中的字段中去 A=1 B=2 C=3 sql = "update student t set t.name = '',t.sex = '',t.age = '',t.height = '',t.weight = '',t.class = '',t.stuid = '',t.xxx = '' where t.stuid= '' and t.xxx = '';&qu

  • 使用Python构造hive insert语句说明

    mysql可以使用nevicat导出insert语句用于数据构造,但是hive无法直接导出insert语句.我们可以先打印在hive命令行,然后使用脚本拼装成insert语句,进行数据构造. 手动copy到python脚本进行sql语句构造: def transformString(s): list_s = s.split('\t') print(len(list_s)) s_new = '' for item in list_s: s_new += '\"' + item.strip(' ')

  • 使用python批量生成insert语句的方法

    1.建表语句 2.目标insert语句 INSERT INTO `bidprcu_dic_a`( `DIC_ID`, `DIC_TYPE_CODE`, `DIC_TYPE_NAME`, `DATA_DIC_CODE`, `DATA_DIC_NAME`, `PRNT_CODE`, `SRT`, `MEMO`, `DATA_SOUC`, `RID`, `CRTER_ID`, `CRTER_NAME`, `CRTE_OPTINS_NO`, `CRTE_TIME`, `OPT_TIME`, `OPTER

  • java如何导出insert语句并生成sql脚本

    看代码吧~ package com.mtpc.admin.controller.exportSql; import ch.qos.logback.classic.db.names.ColumnName; import java.io.BufferedWriter; import java.io.File; import java.io.FileWriter; import java.io.IOException; import java.sql.*; import java.util.Array

  • Laravel 5.4因特殊字段太长导致migrations报错的解决

    前言 本文主要介绍了关于Laravel 5.4因特殊字段太长导致migrations报错的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍: laravel 5.4 改变了默认的数据库字符集,现在utf8mb4包括存储emojis支持.MySQL 需要v5.7.7或者更高版本,当你试着在一些MariaDB或者一些老版本的的MySQL上运行 migrations 命令时,你会碰到下面这个错误: [Illuminate\Database\QueryException] SQLS

  • mysql insert语句操作实例讲解

    insert的语法 复制代码 代码如下: INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE]     [INTO] tbl_name [(col_name,...)]     VALUES ({expr | DEFAULT},...),(...),...     [ ON DUPLICATE KEY UPDATE col_name=expr, ... ] 或: INSERT [LOW_PRIORITY | DELAYED | HIGH

  • 将表里的数据批量生成INSERT语句的存储过程 增强版

    有时候,我们需要将某个表里的数据全部或者根据查询条件导出来,迁移到另一个相同结构的库中 目前SQL Server里面是没有相关的工具根据查询条件来生成INSERT语句的,只有借助第三方工具(third party tools) 这种脚本网上也有很多,但是网上的脚本还是欠缺一些规范和功能,例如:我只想导出特定查询条件的数据,网上的脚本都是导出全表数据 如果表很大,对性能会有很大影响 这里有一个存储过程(适用于SQLServer2005 或以上版本) -- Author: <桦仔> -- Blog

随机推荐