新疆软件开发

本站首页 软件开发 成功案例 公司新闻 公司简介 客服中心 软件技术 网站建设
  您现在的位置: 大发国际老虎机官网 >> 数据库开发 >> 文章正文

利用CodeSmith生成sql

      如何能够替换数据库中所有字段的值--利用CodeSmith生成sql ,

   代码帖出来给大家看看!
<%--
Name:
Author:
Description:
--%>
<%@ CodeTemplate Language="C#" TargetLanguage="Text" Src="" Inherits="" Debug="ture" Description="Template description here." %>
<%@ Property Name="DataBase" Type="SchemaExplorer.DatabaseSchema" %>
<%@ Property Name="pre_Context" Type="System.String" %>
<%@ Property Name="edit_Context" Type="System.String" %>
<%@ Assembly Name="SchemaExplorer" %>
<%@ Import Namespace="SchemaExplorer" %>
<%@ Assembly Name="System.Data" %>
<%@ Import Namespace="System.Data" %>
<%= find()%>
<script runat="template">
string find()
{
 string result ="";
 foreach(TableSchema table in this.DataBase.Tables)
 {
 
  if(table.HasPrimaryKey)
  {
  string[] Keys = new string[table.PrimaryKey.MemberColumns.Count];
  for(int keycount = 0;keycount < table.PrimaryKey.MemberColumns.Count;keycount ++)
  {
   Keys[keycount] = table.PrimaryKey.MemberColumns[keycount].Name;
  }
  DataTable datatable = table.GetTableData();
 
  foreach(ColumnSchema column in table.Columns)
  {
   foreach(System.Data.DataRow row in datatable.Rows)
   {
    string str = row[column.Name].ToString();
   
    if(str.IndexOf(pre_Context) >= 0)
    {
     result += "update " + table.Name + "\r\n" + " set " +
     column.Name + "=" + "'" +
     str.ToString().Replace(pre_Context,edit_Context) + "'\r\n" + " where " +
     "1=1 ";
     foreach(string key in Keys)
     {
      result += "and " + key + "= '" + row[key].ToString() + "'";
     }
     result += "\r\n" + "GO" + "\r\n";
    }
   }
  }
  }
 }
 return result;
}
</script>

作者:未知 | 文章来源:未知 | 更新时间:2008-1-15 16:39:36

  • 上一篇文章:

  • 下一篇文章:

  • 相关文章:
    Domino平台的优缺点分析
    使用经验整理-TestDirector8.0数据库备份和还原
    丢失日志文件后数据库还能不能恢复了
    人工智能在数据库sql语句编写中的应用
    c#如何连接各类数据库
    基础学习:基于SQL的sysobjects系统表
    基础学习:基于SQL的sysColumns 数据库字段表
    数据库技术:基于SQL的sysUsers系统表
    数据库技术:基于SQL的sysdenpends系统表
    处理一个数据库实例在登陆时报ORA-27140错误
    软件技术
    · 开发语言
    · Java技术
    · .Net技术
    · 数据库开发
    最新文章  
    ·Domino平台的优缺点分析
    ·oracle不能连接本地库的解
    ·使用经验整理-TestDirecto
    ·学习sqlserver数据库的维度
    ·sqlserver 多用户并发中如
    ·丢失日志文件后数据库还能
    ·人工智能在数据库sql语句编
    ·数据库学习:Oracle应用程
    ·基础知识:软件测试的要点
    ·技术文章:sqlserver 2008
    ·SQL Server虚拟内存和物理
    ·在MySQL中 describe命令怎
    ·怎样解决视图刷新时出现的
    ·如果忘记了MySQL的root用户
    ·基础学习:基于SQL的sysob
    关于我们 | 软件开发 | 下载试用 | 客服中心 | 联系我们 | 友情链接 | 网站地图 | 新疆电子地图 | RSS订阅
    版权所有 © 2016 大发国际老虎机官网 www.k8w.net All Rights Reserved 新ICP备14003571号
    新疆软件开发总机:0991-4842803、4811639.
    客服QQ:596589785 ;地址:新疆乌鲁木齐北京中路华联大厦A-5C 邮编:830000