目的是将SUN等服务器产生的日志文件--文本格式,写入到SQL SERVER数据库,实现功能为: 1.修改源日志格式为以逗号分割字段,写入成一个新的日志文件。 2.程序读出新日志文件,写入到数据库(分别利用RecordSet和存储过程实现)。
由于是初学VC,不当之处请高人指正,万分感谢!
第四部分
请创建TEST数据库在SQL SERVER 2000 中,并执行以下SQL 语句,创建表和存储过程:
CREATE TABLE [dbo].[T2] ( [datetime] [datetime] NOT NULL , [name] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL , [name2] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL , [ip] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL , [explain] [varchar] (300) COLLATE Chinese_PRC_CI_AS NULL ) ON [PRIMARY] GO
CREATE TABLE [dbo].[T1] ( [datetime] [datetime] NOT NULL , [name] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL , [name2] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL , [ip] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL , [datetime2] [datetime] NULL , [name3] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL , [nameid] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL , [explain] [varchar] (100) COLLATE Chinese_PRC_CI_AS NULL ) ON [PRIMARY] GO
SET QUOTED_IDENTIFIER ON GO SET ANSI_NULLS ON GO
/****** Object: Stored Procedure dbo.insert_T2_1 Script Date: 2004-11-25 09:41:13 ******/ CREATE PROCEDURE [insert_T2_1] (@datetime_1 [datetime], @name_2 [varchar](50), @name2_3 [varchar](50), @ip_4 [varchar](50), @explain_5 [varchar](300))
AS INSERT INTO [test].[dbo].[T2] ( [datetime], [name], [name2], [ip], [explain]) VALUES ( @datetime_1, @name_2, @name2_3, @ip_4, @explain_5)
GO SET QUOTED_IDENTIFIER OFF GO SET ANSI_NULLS ON GO
SET QUOTED_IDENTIFIER OFF GO SET ANSI_NULLS ON GO
/****** Object: Stored Procedure dbo.insert_T1_1 Script Date: 2004-11-25 09:41:13 ******/ CREATE PROCEDURE [insert_T1_1] (@datetime_1 [datetime], @name_2 [varchar](50), @name2_3 [varchar](50), @ip_4 [varchar](50), @datetime2_5 [datetime], @name3_6 [varchar](50), @nameid_7 [varchar](50), @explain_8 [varchar](100))
AS INSERT INTO [test].[dbo].[T1] ( [datetime], [name], [name2], [ip], [datetime2], [name3], [nameid], [explain]) VALUES ( @datetime_1, @name_2, @name2_3, @ip_4, @datetime2_5, @name3_6, @nameid_7, @explain_8)
GO SET QUOTED_IDENTIFIER OFF GO SET ANSI_NULLS ON GO
小结:测试真正日志2594行, 1、用VB6+C写的程序,包含日志格式转换及写入中转日志文件,并从中转文件中读出并写入到数据库,总共用时间小于55秒。 2、用VC6写的程序,包含日志格式转换及写入中转日志文件,并从中转文件中读出并写入到数据库,总共用时间小于20秒,可见VC6的效率到目前为止是最高的,JAVA的程序肯定没有VC6高,因为JAVA是解释执行!不信吗?!你自己编一个JAVA程序事实现此功能,试试就知道了!
到此全文完。
YOU ARE DISMISSED!

|