zoukankan      html  css  js  c++  java
  • ASP.NET2.0网站开发(2)数据库设置

    本节主要对数据库进行设置:

    软件中所使用的数据库为MS SqlServer2000,建立一个数据库Books,并在库中建立两个数据表:

    用户表:

    CREATE TABLE [dbo].[USERTAB] (
        
    [XH] [int] IDENTITY (11NOT NULL ,
        
    [DLMC] [nvarchar] (20) COLLATE Chinese_PRC_CI_AS NOT NULL ,
        
    [YHMC] [nvarchar] (20) COLLATE Chinese_PRC_CI_AS NULL ,
        
    [YHKL] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL 
    ON [PRIMARY]
    GO

    此表只是做为测试表,有一个主键,没有索引,字段依次为:序号、登录名称、用户名称、用户口令,在用户登录时,将在此表中查询用户的资料,如果为合法用户则登录,反之提示错误。在实际使用过程中,可以使用MD5、SHA1等方式对口令进行加密处理。

    图书资料表:

    CREATE TABLE [dbo].[BOOKS] (
        
    [ID] [int] IDENTITY (11NOT NULL ,
        
    [MC] [varchar] (20) COLLATE Chinese_PRC_CI_AS NOT NULL ,
        
    [CBS] [nvarchar] (60) COLLATE Chinese_PRC_CI_AS NULL ,
        
    [DJ] [money] NOT NULL ,
        
    [NRTY] [nvarchar] (2000) COLLATE Chinese_PRC_CI_AS NULL ,
        
    [TP] [image] NULL 
    ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
    GO

     
    CREATE  INDEX [IX_BOOKS] ON [dbo].[BOOKS]([MC]ON [PRIMARY]
    GO

    此表中存放保存的图书资料,字段依次为:序号、图书名称、出版社、定价、内容提要、图片。

    根据个人的习惯,我将数据的操作以存储过程的方式保存的数据库中,这样做可以将开发过程中易出现问题地方单独调试,在保证数据库没有错误的前提下,尽可能简单的在代码中进行开发,并且在大数据量的情况下,以存储过程的方式进行查询能获得最佳查询速度。

    CREATE PROCEDURE dbo.Books_AddValue
        
    @mc        NVARCHAR(20),
        
    @cbs    NVARCHAR(60),
        
    @dj        MONEY,
        
    @nrty    NVARCHAR(2000),
        
    @tp        IMAGE
    AS
        
    INSERT INTO dbo.BOOKS (
            MC,
            CBS,
            DJ,
            NRTY,
            TP
        ) 
    VALUES ( 
            
    @mc,
            
    @cbs,
            
    @dj,
            
    @nrty,
            
    @tp
            )
            
        
    RETURN

    GO

    CREATE PROCEDURE dbo.Books_Delete
        
    @id    INT
    AS
        
    DELETE FROM dbo.BOOKS
            
    WHERE dbo.BOOKS.ID = @id

        
    RETURN

    GO

    CREATE PROCEDURE dbo.Books_GetValue
        
    @id    INT
    AS
        
    SELECT
            dbo.BOOKS.ID,
            dbo.BOOKS.MC,
            dbo.BOOKS.CBS,
            dbo.BOOKS.DJ,
            dbo.BOOKS.NRTY,
            dbo.BOOKS.TP
        
    FROM dbo.BOOKS
        
    WHERE dbo.BOOKS.ID = @id

        
    RETURN


    GO

    CREATE PROCEDURE dbo.Books_GetValues
    AS
        
    SELECT
            dbo.BOOKS.ID,
            dbo.BOOKS.MC,
            dbo.BOOKS.CBS,
            dbo.BOOKS.DJ,
            dbo.BOOKS.NRTY
        
    FROM dbo.BOOKS
        
    ORDER BY dbo.BOOKS.ID
        
    RETURN

    GO

    CREATE PROCEDURE dbo.Books_Update
        
    @id        INT,
        
    @mc        NVARCHAR(20),
        
    @cbs    NVARCHAR(60),
        
    @dj        MONEY,
        
    @nrty    NVARCHAR(2000),
        
    @tp        IMAGE
    AS
        
    UPDATE dbo.BOOKS SET
            dbo.BOOKS.MC
    =@mc,
            dbo.BOOKS.CBS 
    = @cbs,
            dbo.BOOKS.DJ 
    = @dj,
            dbo.BOOKS.NRTY 
    = @nrty,
            dbo.BOOKS.TP 
    = @tp
        
    WHERE dbo.BOOKS.ID = @id

        
    RETURN

    GO

    CREATE PROCEDURE dbo.User_GetValue
        
    @dlmc    NVARCHAR(20)
    AS
        
    SELECT
            dbo.USERTAB.XH,
            dbo.USERTAB.DLMC,
            dbo.USERTAB.YHMC,
            dbo.USERTAB.YHKL
        
    FROM dbo.USERTAB
        
    WHERE dbo.USERTAB.DLMC = @dlmc

        
    RETURN

    GO

    在SqlServer中与Oracle相比较而言,返回数据还是很简单的,在Oracle中需要使用游标等操作方式,才能返回数据集。如果查询的数据量很大,如表中有千万级,那么在查询时,最好只返回你当前需要的数据,比如一页。当然了,合适的索引、行列分区都是不可少的。

    数据库内的代码就列出这么多,下一节开始对与数据库关联的数据类进行开发。

  • 相关阅读:
    python基础学习笔记(五)
    python进阶学习笔记(一)
    python基础学习笔记(七)
    LoadRunner 技巧之 脚本设计
    python基础学习笔记(八)
    python基础学习笔记(三)
    python基础学习笔记(十一)
    性能测试知多少性能分析与调优的原理
    python基础学习笔记(十)
    python基础学习笔记(六)
  • 原文地址:https://www.cnblogs.com/wjhx/p/1343484.html
Copyright © 2011-2022 走看看