日期:2014-05-18  浏览次数:20498 次

100分请教,你们后台管理是如何做的,各位高手谈谈经验
问题:
1.每个数据表都对应各自的添加、修改、删除操作吗?
    如:如果有100个表,就分别需要100个添加、修改、删除的操作界面和保存程序吗?
    100(添加界面)+100(保存添加)+100(修改界面)+100(保存修改)+100(删除界面)+100(保存删除)=600个程序吗?
    添加和修改的界面你们公用吗?添加和修改的保存程序你们公用吗?
    如果你的程序中有100张表,你如何做后台管理

2.如果有的表的字段特别多,如有个表有50个字段,甚至100个,你如果做添加和修改的界面和保存添加和修改的程序?

3.如果对有个50个字段的表进行数据修改,但有时就修改其中的一两个数据,你怎么作修改界面和保存程序,需要把修改和没有修改的程序都保存一遍吗?

4.如果需要记录管理员的各种操作,如:添加、修改、删除,除了记录管理员对哪个表哪条记录做了操作以外,你们还记录哪些数据,需要做详细记录吗?

5.在添加的保存程序中如何最简便地记录管理员添加了哪条记录,即:获得新添加记录的id号,需要重新读取数据表吗?

请各位高手谈谈自己的经验吗?

------解决方案--------------------
增\删\改.根据需要你可以做成通用的.

------解决方案--------------------
1.每个数据表都对应各自的添加、修改、删除操作吗?
如:如果有100个表,就分别需要100个添加、修改、删除的操作界面和保存程序吗?
100(添加界面)+100(保存添加)+100(修改界面)+100(保存修改)+100(删除界面)+100(保存删除)=600个程序吗?
添加和修改的界面你们公用吗?添加和修改的保存程序你们公用吗?
如果你的程序中有100张表,你如何做后台管理
==================================
一般每个表对应至少5个存储过程:查询全部,根据关键字查询,增,删,改
添加和修改一般都可以做在一起,保存的程序在一起(判断一下即可),个人做的时候这些功能都是在一个界面的
而且,如果使用存储过程,可以实现1个界面同时更新N个表

2.如果有的表的字段特别多,如有个表有50个字段,甚至100个,你如果做添加和修改的界面和保存添加和修改的程序?
========================
每个字段都需要更新么?

3.如果对有个50个字段的表进行数据修改,但有时就修改其中的一两个数据,你怎么作修改界面和保存程序,需要把修改和没有修改的程序都保存一遍吗?
============
视图

4.如果需要记录管理员的各种操作,如:添加、修改、删除,除了记录管理员对哪个表哪条记录做了操作以外,你们还记录哪些数据,需要做详细记录吗?
==============
没有做这么详细

5.在添加的保存程序中如何最简便地记录管理员添加了哪条记录,即:获得新添加记录的id号,需要重新读取数据表吗?
===============
存储过程返回值
------解决方案--------------------
1、理论上是这样。如果你想节省代码,可以将executenonquery写成一个函数,直接传参数,sql语句,来执行.如 delete,insert,update.还可以写一个reader的函数,传sql,参数,等返回datatable对象。
当然,如果你使用强类型的dataset,那么会比较方便。

2、你可以使用detailsview或formview来完成添、删、改
3、谈一下强类型的datarow,如果你的update方法可以接受一个强类型的datarow时,你可以不用更新每个字段值。

4、我不做这样的事情。

5、如果是自增列的话,我使用scope_identity
------解决方案--------------------
学习中
------解决方案--------------------
你自己写一个模板用来创建数据库(包括字段信息的管理) 对数据结构的管理
然后写一个公用的添加、修改、删除 对通用功能的管理
调用模板中的数据库的信息。
------解决方案--------------------
增,删,改可以做成通用的
------解决方案--------------------
2.如果有的表的字段特别多,如有个表有50个字段,甚至100个,你如果做添加和修改的界面和保存添加和修改的程序?
————————
代码生成器
------解决方案--------------------
给你提供一个公用构架SQL类 增删改查

using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.ComponentModel;
using System.Collections;

namespace DataSQLServer
{
public class CmdFactory
{
public CmdFactory()
{

}
/// <summary>
/// 绑定列表
/// </summary>
/// <param name= "tablename "> </param>
/// <returns> </returns>
public DataSet BuildSelectString(string tablename)
{
string strSQL = " ";
DataSet ds = new DataSet();
strSQL = "select * from [ "+tablename+ "] ";
ExecuteClass ec = new ExecuteClass();
ec.ExecuteSelectCmmond(strSQL, ds);
ds.Tables[0].TableName = tablename;
return ds;
}
/// <summary>