zoukankan      html  css  js  c++  java
  • 从已有数据库表生成Insert语句的小工具

      有时,需要把数据从一个数据库转移到另一个数据库,如果数据不是很多,但是又不是手工可以完成那么少,就可以使用该小工具了。

    该小小工具将一个表里的所有数据生成insert into 语句。其实现方式是:将数据读入到DataTable,然后逐行生成Sql语句,主要代码如下:

     public string GetInsertSql(string tableName)
            {
                string sql = string.Empty;
                DataBase db = new DataBase();
                DataSet ds = db.GetEntity(tableName);
                foreach (DataRow item in ds.Tables[0].Rows)
                {
                    sql += this.GetSqlByDataRow(item, ds.Tables[0]);
                }
                return sql;
            }
    
            private string GetSqlByDataRow(DataRow row, DataTable dataTable)
            {
                StringBuilder sql = new StringBuilder("insert into ");
                sql.Append(dataTable.TableName);
                sql.Append("(");
                foreach (DataColumn item in dataTable.Columns)
                {
                    sql.Append(item.ColumnName);
                    sql.Append(",");
                }
                sql.Remove(sql.Length - 1, 1);
                sql.Append(")");
                sql.Append("values");
                sql.Append("(");
                foreach (DataColumn item in dataTable.Columns)
                {
                    if (row[item] == DBNull.Value)
                    {
                        sql.Append("null");
                    }
                    else
                    {
                        sql.Append("'");
                        if (item.DataType == typeof(DateTime))
                        {
                            sql.Append(Convert.ToDateTime(row[item]).ToString("yyyy-MM-dd HH:mm:ss"));
                        }
                        else
                        {
                            sql.Append((row[item]).ToString());
                        }
                        sql.Append("'");
                    }
                    sql.Append(",");
                }
                sql.Remove(sql.Length - 1, 1);
                sql.Append(");\r\n");
                return sql.ToString();
            }
    

    点击下载项目

  • 相关阅读:
    taglib
    ThinkPHP魔术方法
    给图片添加文字
    公益筹模板
    清空(数据库+文件夹)
    php——文件下载
    查询上一个tp语句
    安装wampserver 2.5的时候出现丢失MSVCR100.dll的解决办法。
    ThinkPHP3.2.3 安装教程
    java基础——File类的基本用法
  • 原文地址:https://www.cnblogs.com/zzy0471/p/1946489.html
Copyright © 2011-2022 走看看