今天试用一家公司的一个条码软件,
软件功能也不错,
一看他的数据库,晕了。这个软件共有2个数据库,1个是系统库,10几个表,用于存放一些系统配置、语言信息等,是一套ERP里公用的。
另外一个是条码系统的业务数据库,有224个表。关键是这些表名、都是 A01A,A02A,A03A ... ... X17A ,没有一个是正常的英文、拼音命名。
字段名都是 A01A001,A01A002.....A01A025,数据类型大多都是 nvarchar .-_-!!!
人家的存储过程都是这样的: ,
请问这里的高人,这样设置有何好处?他自己写存储过程的时候不会晕掉?
CREATE PROCEDURE [dbo].[ProduceStatBill]  
@makeno nvarchar(20),@color nvarchar(20)
AS
begin   SELECT b.R46A002,b.R46A005,b.R47A006,b.R47A002,b.R47A003,gc_BoxNo=b.R47A011,R46A025=R116A010,f_sumquan=R47a009,R116A009,C01A004=R47a009-g.R116A009,c.R111A003,c.F08B009,A21A005=R47a009-R52A007,C02A004=R47a009-F08B009,
   d.gc_Date,d.R52A007,f.R50A041,f.R111A007,R50A040=R47a009-f.R111A007  FROM
(SELECT distinct a.R46A002,a.R46A005,b.R47A006,b.R47A002,b.R47A003,b.R47A011,R46A025,R47a009
    FROM r46a a LEFT JOIN r47a b on b.R47A001=a.R46A001 WHERE R46A002=@makeno AND R47A006=@color)b LEFT JOIN
 (SELECT R50A003,R50A005,R50A007,R50A010,R50A008,R50A009,gc_BoxNo=R50A012,R111A003,F08B009=R50a033 --R50A024*e.R110A006
    FROM R50A a LEFT JOIN
   (SELECT R111A001,max(R111A003)AS R111A003 FROM R111A GROUP BY R111A001) c  on  R50A001=R111A001 WHERE R50A027='L2') c on
    b.R46A002=c.R50A003 AND  b.R47A006=c.R50A010 AND b.R47A003=c.R50A009 AND b.R47A011=c.gc_BoxNo LEFT JOIN
 (SELECT R50A003,R50A005,R50A007,R50A010,R50A008,R50A009,gc_BoxNo=R50A012,gc_Date=R111A003,R52A007=R50a033 --R50A024*e.R110A006
    FROM R50A a LEFT JOIN (SELECT R111A001,max(R111A003)AS R111A003  FROM R111A GROUP BY R111A001) c  on  R50A001=R111A001 WHERE R50A027='L3')d on
    b.R46A002=d.R50A003 AND  b.R47A006=d.R50A010 AND b.R47A003=d.R50A009 AND b.R47A011=d.gc_BoxNo LEFT JOIN
 R110A e on b.R46A005=e.R110A001 AND b.R47A006=e.R110A002 AND 1=e.R110A003 LEFT JOIN
 (SELECT R50A003,R50A005,R50A007,R50A010,R50A008,R50A009,gc_BoxNo=R50A012,R50A041=R111A003,R111A007=R50a033 FROM R50A a LEFT JOIN
   (SELECT  R111A001,max(R111A003)AS R111A003 FROM R111A GROUP BY R111A001)c on  R50A001=R111A001  WHERE R50A027='L4') f on
    b.R46A002=f.R50A003 AND  b.R47A006=f.R50A010 AND b.R47A003=f.R50A009 AND b.R47A011=f.gc_BoxNo left join
   R116A g on b.R46A002=g.R116A002 and b.R47A006=g.R116A004 AND b.R47A003=g.R116A006 AND b.R47A011=g.R116A007
endGO