DB_51Aspx/bbs_csharp.sql

(开头部分) 38KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

/*
 Navicat Premium Data Transfer

 Source Server         : MySQL5.7
 Source Server Type    : MySQL
 Source Server Version : 50739 (5.7.39)
 Source Host           : localhost:3306
 Source Schema         : bbs_csharp

 Target Server Type    : MySQL
 Target Server Version : 50739 (5.7.39)
 File Encoding         : 65001

 Date: 10/05/2023 17:09:45
*/

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------
-- Table structure for article
-- ----------------------------
DROP TABLE IF EXISTS `article`;
CREATE TABLE `article`  (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `title` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  `abstract` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
  `content` longtext CHARACTER SET utf8 COLLATE utf8_general_ci NULL,
  `create_time` datetime NULL DEFAULT NULL,
  `up_num` int(11) NULL DEFAULT 0,
  `down_num` int(11) NULL DEFAULT 0,
  `user_id` int(11) NULL DEFAULT NULL,
  `category_id` int(11) NULL DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `user_id`(`user_id`) USING BTREE,
  INDEX `category_id`(`category_id`) USING BTREE,
  CONSTRAINT `article_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `user` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
  CONSTRAINT `article_ibfk_2` FOREIGN KEY (`category_id`) REFERENCES `category` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE = InnoDB AUTO_INCREMENT = 9 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = COMPACT;

-- ----------------------------
-- Records of article
-- ----------------------------
INSERT INTO `article` VALUES (1, '第一章-绪论', '1.1 数据库系统概述: 1.1.1数据库的4个基本概念 数据库的四个基本概念 - 数据 - 数据库 - 数据库管理系统 - 数', '1.1 数据库系统概述:\r\n1.1.1数据库的4个基本概念\r\n数据库的四个基本概念 - 数据 - 数据库 - 数据库管理系统 - 数据库系统\r\n数据:数据是数据库中存储的基本对象\r\n数据是描述事物的一个符号,可以描述数字、图形、声音、语言等待,但都要经过数字化后存入计算器\r\n数据库(简称DB):数据库是长期存储在计算机内,有组织、可共享的大量数据的集合\r\n有组织:统一存放,如全部在D盘,全部在E盘\r\n可共享:可以多个程序员使用,共同使用\r\n数据库管理系统(简称DBMS):数据库管理系统的作用就是,科学地组织和存储数据,高效地获取和维护数据\r\n数据库管理系统的主要功能:\r\n数据的定义:DMBS提供数据定义语言(简称DML),用户可以通过它方便地对数据中的数据对象进行定义\r\n数据组织、存储和管理:DBMS要分类组织、存储和管理各种数据,包括数据字典、数据、数据的存储路径\r\n数据操纵功能:用户可以使用DMBS提供的DML对数据库进行增删改查等基本操作\r\n数据库的事务管理和运行管理:数据库中建立、运用和维护时由数据库管理系统统一管理、统一控制,以保证数据的安全性、完整性、多用户数据并发性以及发生故障后的系统恢复\r\n数据库的建立和维护功能:数据库初始数据输入、转换功能,数据库的存储、数据库的重组织功能和性能监视、分析功能等\r\n数据库系统(简称DBS ):数据库系统一般由于数据库,数据库管理系统、应用系统、数据库管理员构成\r\n数据库系统在计算机中属于在:基础软件普通  1.1.2数据管理技术的产生和发展 \r\n数据库管理技术经历了:人工管理、文件系统、数据库系统3个阶段\r\n为什么会有不同的数据管理阶段? 因为依据的计算机的发展阶段,从没有计算机操作系统到有文件系统在到数据库管理系统\r\n人工管理特点:\r\n数据不保存(因为当初是用纸带来表示0和1,计算机读取完就完了,怎么可能保存)\r\n应用程序管理数据(程序和数据绑定,程序没了数据就没了,不是分开执行) \r\n数据不共享(都不能保存,怎么共享)\r\n数据不具有独立性(因为数据和程序是绑定在一起的)\r\n人工管理缺点:数据的逻辑结构或管理结构发生变化后,必须对程序做向右的修改,加最了程序员的负担   \r\n文件系统特点:\r\n数据可以长期保存(可以保存到计算机的文件里面)\r\n由文件系统管理数据  \r\n文件系统缺点:\r\n数据共享差,冗余度大(如:可能一个文件系统只能一个程序员使用,文件和文件中不能共享,冗余:文件中的相同字段过度重复)\r\n数据独立性性差\r\n数据库系统特点:\r\n数据结构化(如:学生管理系统,学生的个人信息按一定的结构保存起来,学生的选课按一定的结构保存起来)\r\n数据共享性高,冗余低,易扩充\r\n数据独立性高\r\n数据由DBMS统一管理和控制  \r\n1.2数据模型\r\n      什么是数据模型?对现实世界数据特征的抽象(如:观察某个事物的特征,按照它的特征去建立一个模型,在按照整个模型去创建数据库)\r\n\r\n1.2.1两类数据模型\r\n数据库模型应满足三个方面要求:\r\n能比较真实地模拟现实世界\r\n容易为人理解(如:技术的模型的字段,要看了就知道,姓名就是姓名,不用用abc去使用)\r\n便于在计算机上实现(如:二维表就容易实现,二维表拆分了就不容易实现) \r\n根据模型应用的不同目的,可以分为两类:\r\n第一类概念模型:\r\n概念模型也称信息模型,它是按用户的观点来对数据和信息建模,主要用于数据库设计\r\n(这一阶段,就是按照用户对信息的理解来建设数据库)\r\n第二类是逻辑模型和物理模型:\r\n逻辑模型:逻辑模型保包含了层次模型(树一样的)、网状模型、关系模型、面向对象模型和对象关系模型等。它是按计算机系统的观点的数据建模,主要用于DBMS的实现\r\n物理模型:物理模型是对数据最底层的抽象,它描述数据在系内部的表示方式和采取方法,在磁盘或磁带上的存储方式和采取是面向计算机系统的\r\n1.2.2数据模型的组成要素\r\n数据模型通常由数据结构、数据操作和完整性约束三部分组成\r\n数据结构:数据结构描述数据的组成对象以及对象之间的联系,数据结构是所描述的想类型的集合,是对系统静态特征的描述\r\n数据操作:数据库主要由查询和更新(插入、删除、修改)两大类操作。数据操作是都对系统动态特征的描述\r\n完整性约束:数据的完整性约束条件是一组完整性规则\r\n例:在某表中,张三的id是001,就不能在另一个表001是李四\r\n例:在关系模型中,任何关系必须满足实体完整性和参照完整性两个条件*(实体完整性是:唯一标识(key))\r\n1.2.3概念模型\r\n概念模型是现实世界到机器世界的一个中间层,表现为:(机器世界 == 计算机)\r\n概念模式用于信息世界的建模\r\n现实世界到信息世界的第一层抽象\r\n数据库设计人员进行数据库设计的有力工具\r\n数据库设计人员和用户之间进行交流的语言\r\n概念模型要求:\r\n具有较强的语义表述能力\r\n能够方便、直接的表述应用中的各种语义知识\r\n简单、清晰、易于用户理解\r\n信息世界中的基本概念:\r\n实体:客观存在并相互区别的事物称为实体。实体可以是具体的事、物,也可以是抽象的概念或联系\r\n例:一个学生、一个部门、一门课、选择等都是实体\r\n属性:实体所具有的某一个特征称为属性,一个实体有若干个属性\r\n例:一个学生实体,它是由,学号、姓名、性别等属性组合构成\r\n码(关键字):唯一标识实体的属性集称为码\r\n例:通过该码能确定一条信息,如身份证就能确定某个人\r\n域:域是一组具有相同数据类型的值的集合。属性的取值范围来自某个域\r\n例:学号的域为8位整数,学生年龄的域为整数,性别的域是男和女\r\n实体型:具有相同属性的实体,必然具有共同的特征和性质,用实体名及其属性名集合来抽象和刻画同类实体,称为实体型\r\n例:学生都有姓名、年龄、学号,张三有李四有,把它们都有的特征归纳,为学生就是一个实体型\r\n说白了就是把公共的取出来,形成一个共同有的实体\r\n实体集:同一类型的集合称为实体集\r\n例:全体学生就是一个实体集\r\n联系:在现实世界中,事物内部以及事物之间是有联系的,这些联系在信息世界在反映为实体(型)内部的联系和实体(型)之间的联系\r\n实体内部的联系通常是指组成实体的各属性之间的联系,实体之间的联系通常是指不同实体集之间的联系\r\n例:老师教学生是一种联系(不同实体集的联系),班长管学生是一种联系(同一类的联系)\r\n两个实体型之间的联系:\r\n一对一联系:\r\n实体集(A)中每一个实体,实体集B中至多有一个(也可以没有),实体之间的联系\r\n例:一个班只有一个班长 就是一对一(实体A就是班级 实体B就是班长) \r\n一对多联系(1:n):\r\n实体集(A)中的每一个实体,和实体集(B)中的多个实体(也可以没有)与之联系\r\n例:一个班有多个学生 就是一对多(实体A就是班级 实体B就是学生)\r\n多对多联系(m:n):\r\n实体集(A)中的每一个实体,实体集(B)中有n个实体与之联系,分之实体集(B)中每一个实体和实体集(A)中有n个实体与之联系\r\n例:一门课程有若干个学生选修,而每一个学生可以同时选修多门课程 (实体A就是课程 实体B就是学生,反之)\r\n', '2022-11-16 20:38:29', 9, 1, 1, 1);
INSERT INTO `article` VALUES (2, '第二章-关系数据库', '2.1关系数据结构形式化定义: 2.1.1关系: 单一的数据结构 - 关系: 现实世界的实体以及实体间的各种联系均用关系来表示', '2.1关系数据结构形式化定义:\n2.1.1关系:\n单一的数据结构 - 关系:\n现实世界的实体以及实体间的各种联系均用关系来表示\n逻辑结构 - 二维表:\n从用户的角度,关系模型中的数据的逻辑结构是一张二维表\n关系模型是建立在集合代数的基础上\n域:域是一组具有相同数据类型的值的集合\n例:整数、实数、介于默某个取值范围的整数、指定长度的字符串集合、{“男”,“女”},大于100、小于100这些都是\n笛卡尔积:给定一组域D1,D2....Dn,这些域可以是相同的(也可以是不同),D1,D2....Dn的笛卡尔积如下:\nD1 X D2 X .... X Dn = {(d1,d2,....dn) | diEDi, i=1,2,...,n}    元组:笛卡尔积中每一个元素(d1,d2,...,dn)称为一个元组分量:笛卡尔积元素(d1,d2,...,dn)中的每一个值di称作一个分量\n例:张清玫,计算机专业,王敏,他们就都是每一个分量\n基数:一个域允许的不同取值个数称为这个域的基数,若Di(i=1,2,...,n)为有限集,基数为mi(i=1,2,...,n),则D1XD2X...XDn的基数M关系:\n\n关系:D1XD2X...XDn的子集称做在域D1,D2,...,Dn上的关系,表示为R(D1,D2,...,Dn)\n\n例:学生学习(年龄,姓名,学号)\n\n元组:关系中的每一个元素是关系中的元组,通常用t表示\n\n  当n=1时,称该关系为单元关系\n\n单n=2时,称该关系为二元关系\n\nR(D1,D2,...,Dn) 就是这里的n \n\n关系的表示:关系也就是一个二维表,表的每一行对应一个元组,表单每列对应一个域,一个属性2.1.2关系模式:\n关系模式是对关系的描述,关系模式是型,关系是值\n例:核心模式是一个模型,关系是不同的颜色,不同的颜色生成出不同的模型\n元组集合的结构:属性构成、属性来1自的域、属性域域之间的映像关系\n一个关系通常由赋值它的元组语义确定(31班是一个关系,32班是一个关系)\n现实的世界中还存在着完整性约束\n例:成绩 0 - 100 退休年龄 65\n定义关系模式:关系模式可以形式化地表示为:R(U,D,DOM,F)\nR:关系名(如:学生信息)\nU:组成该关系的属性名集合(如:学号,姓名,年龄。前面有说到的R(D1,D2,D3...)就是里面的值)\nD:属性组U中属性所来自的域(如:表示取值范围,男或女,u和D的域)                                                 \nDOM:属性向域的映像集合(如:表示取值范围的对应映像,如张三就是男的,张三在域中就是男)\nF:属性间的数据依赖关系集合(如:给一个学号就可以知道该学号的是张三还是李四) \n关系模式与关系:\n关系模式是静态的、稳定的(如:定义一个,学生信息(学号,姓名,专业),定义完了是这样就是这样了就不会动了 - 静态的)         \n关系是动态的、随时间不断变化(如:一个班里有30个人,现在加进来一个就31个,那关系就是发生了变化,注意模式是不发生变化的)\n关系是关系模式在某一时刻的状态或内容(如:一个班的30个同学8岁,到时候可能就是31个同学9岁),在实际工作中关系模式和关系往往统称为关系需要上下文加以区分。\n2.1.3关系数据库:\n关系数据库:在一个给定应用领域中,所有关系的集合构成一个关系数据库\n例:学生表,选课表,成绩表多个关系构成了一个关系数据库\n关系数据库的型与值\n关系数据库的型:关系数据库模式,对关系数据库的描述\n关系数据库模型:若干域的定义,在这些域上定义若干个关系模型\n关系数据库的值:关系模式在某一时刻对应的关系集合,简称为关系数据库', '2022-11-18 16:41:18', 6, 2, 1, 2);
INSERT INTO `article` VALUES (3, '第三章-标准SQL语句', '3.1 SQL概述: SQL:结构化查询语言,是关系数据库的标准语言,SQL是一个通用的、功能极强的关系数据库语言 结构化查询:', '3.1 SQL概述:\r\nSQL:结构化查询语言,是关系数据库的标准语言,SQL是一个通用的、功能极强的关系数据库语言\r\n结构化查询:理解:就是只要告诉数据库我要干什么,怎么干就可以了\r\n3.1.2 SQL的特点:\r\n综合统一:\r\n集数据定义语言 DDL,数据操纵语言 DML,数据控制语言 DCL功能于一体,\r\n可以独立完成数据库生命周期中的全部活动,如下:\r\n定义关系模式,插入数据,建立数据库,\r\n对数据库中的数据进行查询和更新   \r\n数据库重构和维护\r\n\r\n数据库安全性、完整性控制等\r\n\r\n嵌入式SQL和动态SQL定义\r\n用户数据库投入运行后,可根据需要随时逐步修改模式,不影响数据的运行\r\n数据操作符统一(如:查询就用select,删除就用:delete) \r\n高度非过程化:\r\n非关系数据模型的数据操纵语言“面向过程”,必须制定存取路径\r\nSQL只要提出“做什么”,无须了解存取路径\r\n存取路径的选择以及SQL的操作过程由系统自动完成\r\n面向集合的操作方式:\r\n非关系数据模型采用面向记录的操作方式,操作对象是一条记录\r\nSQL采用集合操作方式:\r\n操作对象、查找结果可以是元组的集合\r\n一次插入、删除、更新操作的对象可以是元组的集合\r\n 以同一种语法结构提供多种使用方式:\r\nSQL是独立的语言\r\n能够独立地用于联机交互的使用方式\r\nSQL又是嵌入式语言\r\nSQL能够嵌入到高级语言(例如C,C++,Java)程序中,供程序员设计程序时使用3.1.3SQL基本概念:\r\nSQL支持关系数据库三级模式结构:\r\n基本表:\r\n本身独立存在的表\r\nSQL中一个关系就对应一个基本表\r\n一个(或多个)基本表对应一个存储文件\r\n一个表可以带若干索引(索引:目的:快速查找数据,理解:相当于书中的目录,如给学号做一个目录,就可以快速查找)\r\n存储文件\r\n逻辑结构组成了关系数据库的内模式\r\n物理结构是任意的,对用户透明\r\n视图\r\n从一个或几个基本表导出的表\r\n数据库中只存放视图的定义而不存放视图对应的数据\r\n视图是一个虚表\r\n用户可以在视图上再定义视图\r\n3.2 学生-课程数据库:视图的作用:\r\n视图能够简化用户的操作\r\n\r\n如:我只看信息系的学生信息,就可以创建一个视图,不然每次要去基本表查看  \r\n视图使用用户能以多种角度看待同一数据\r\n\r\n如:理解:不同的应用可能用到同一个数据 \r\n视图对重构数据库提供了一定程度的逻辑独立性 \r\n\r\n如:就是基本表和视图是映射关系,基本表变视图就会变   \r\n\r\n视图能够对机密数据提供安全保护\r\n\r\n如:基本表中的的身份证信息是不想给别人看的,就可以把其它可以看的放到视图,然后授权给别人看  \r\n适当的利用视图可以更清晰的表达查询\r\n\r\n如:可以省略一些查询条件判断  ', '2022-11-19 20:43:10', 5, 0, 1, 3);
INSERT INTO `article` VALUES (4, '第六章-关系数据理论', '本章的目的:如何构造一个好的数据库模式 6.1 问题的提出: 关系模式的表示: 关系模式由五部分组成,是一个五元组:R(U,D,', '6.1 问题的提出:\r\n关系模式的表示:\r\n关系模式由五部分组成,是一个五元组:R(U,D,DOM,F)\r\nR表示关系模式名\r\nU表示一组属性\r\nD表示U的取值范围,如Son的取值范围是0-100\r\nDOM表示属性的域映射,如age到整数100,中的映射\r\nF为属性组U的组数据依赖,如函数依赖,多值依赖等等\r\n细节:\r\n由于D、DOM与模式设计关系不大,因此在本章把关系模式看作一个三元组:R<U,F>\r\n当且仅当 U 上的一个关系 r 满足 F 时, r 称为关系模式 R 的一个关系\r\n理解:U是一组属性(如:学生表),如果有一个表里的数据满足U这一组属性(如:学生表),那么该表就是模式里的一个关系  \r\n作为二维表,关系要符合一个最基本的条件:每个分量必须是不可分的数据项。满足了这个条件的关系模式就属于第一范式(1NF)数据依赖:\r\n\r\n一个关系内部属性与属性之间的一种约束关系,通过属性间值的相等与否体现出来的数据间相关联系      \r\n\r\n数据依赖的主要类型:\r\n函数依赖(简记:FD)\r\n理解:如:知道学生学号,推出学生姓名,知道学生选课号,推出课程名称  \r\n多值依赖(简记:MVD)\r\n理解:如:和函数一样,但它可以通过一个值推出多个数据\r\n函数依赖在现实生活中的体现:\r\n例1:描述一个学生关系,可以有学号、姓名、系名等属性 \r\n一个学号只对应一个学生,一个学生只在一个系中学习,“学号”值确定后,学生的姓名及所在系的值就被唯一确定\r\nSname=f(Sno),Sdept=f(Sno) 就即Sno函数决定Sname,Sno函数决定Sdept,记作Sno -> Sname,Sno->Sdpt \r\n例2:建立一个描述学校教务的数据库,涉及的对象包括:学生的学号(Sno)、所在系(Sdept)、系主任姓名(Mname)、课程号(Cno)、成绩(Grade)\r\n假设学校教务的数据库模式用一个单一的关系模式 Student 来表示,则该关系模式的属性集合为:U = {Sno,Sdept,Mname,Cno,Crade} \r\n现实世界的已知事实(语义):\r\n① 一个系有若干学生,但一个学生只属于一个系\r\n\r\n② 一个系只有一名(正职)负责人\r\n\r\n③ 一个学生可以选修多门课程,每门课程有若干学生选修\r\n\r\n④ 每个学生学习每一门课程有一个成绩\r\n\r\n由此可得到属性组 U 上的一组函数依赖 F :F = {Sno -> Sdept, Sdept -> Mname, (Sno,Cno) -> Grade}函数依赖存在的问题:\r\n\r\n数据冗余:上述例子中,如果一个学生选择了10本课程,那么系主任的名字就重复10次,就产生了数据冗余\r\n\r\n更新异常:数据冗余,更新数据时,维护数据完整性代价大。如,系更换系主任后,必须修改与该系学生有关的每一个元组\r\n\r\n插入异常:如果一个系刚成立,尚无学生,则无法把这个系及其系主任的信息存入数据库,因:学号是主码,课程号是主码,为空那么主任的信息就不能插入\r\n\r\n删除异常:如果某个系的学生全部毕业了,则在删除该系学生信息的同时,这个系及其系主任的信息也丢掉了,因主码不能为空,为空了信息怎么还存在\r\n\r\n说明: \r\n\r\n 上述的Student关系模式不是一个好的模式,一个“好”的模式应当不会发生插入异常、删除异常和更新异常,数据冗余应尽可能少\r\n\r\n存在以上问题的原因是这个模式中的函数依赖存在某些不好的性质\r\n\r\n解决方法:用规范化理论改造关系模式来消除其中不合适的函数依赖 \r\n\r\n函数依赖的解决方式:\r\n\r\n用规范化理论改造关系模式来消除其中不合适的函数依赖,就是尽可能的去减少一个表中的多个函数依赖\r\n\r\nS(Sno,Sdept,Sno -> Sdept)\r\n\r\nSC(Sno,Cno,Grade,(Sno,Cno) -> Grade)\r\n\r\nDEPT(Sdept,Mname,Sdept -> Mname)  \r\n\r\n这三个模式都不会发生插入异常、删除异常的问题,数据的冗余也得到了控制', '2022-11-21 17:44:55', 1, 1, 2, 4);
INSERT INTO `article` VALUES (5, '第七章-概念结构设计', '7.1 数据库设计概述: 数据库设计一般定义:数据库设计是指对于一个给定的应用环境,构造(设计)优化的数据库逻辑模式和物理结构,', '7.1 数据库设计概述:\r\n数据库设计一般定义:数据库设计是指对于一个给定的应用环境,构造(设计)优化的数据库逻辑模式和物理结构,并据此建立数据库及其应用系统,使之能够有效地存储和管理数据,满足各种用户的应用需求,包括信息管理要求和数据操作要求\r\n定的应用环境:一个数据库不可能什么数据都接收,如在学校或工厂,就要建立相当于的数据库,学校工厂就是环境 \r\n逻辑模式:如设计的一张表,表的属性设计,每个表中应该放什么数据,是第几范式,这就是在逻辑模式设计的\r\n物理结构:就是数据存储在什么地方,怎么存放\r\n信息管理要求:在数据库中应该存储和管理哪些数据对象\r\n数据操作要求:对数据对象需要进行哪些操作,如查询、增、删、 改、统计等操作\r\n数据库设计的目标:为用户和各种应用系统提供一个信息基础设施和高效的运行环境\r\n高效的运行环境:(数据库是应用程序理最底层的交互平台,所以要保证高效的操作,要求如下)\r\n数据库数据的存取效率高\r\n据库存储空间的利用率高\r\n数据库系统运行管理的效率高\r\n7.1.1 数据库设计的特点:\r\n三分技术,七分管理,十二分基础数据\r\n管理:数据库建设项目管理、企业(即应用部门)的业务管理\r\n基础数据:数据的收集、整理、组织和不断更新是数据库建设中的重要环节\r\n结构(数据)设计和行为(处理)设计相结合\r\n整个设计过程中把数据库结构设计和对数据的处理设计密切结合起来\r\n结构和行为分离的设计:(如图,数据库和软件设计分离,不好的设计)\r\n传统的软件工程:重行为设计,忽视对应用中数据语义的分析和抽象,只要有可能就尽量推迟数据结构设计的决策\r\n早期的数据库设计:重结构设计,致力于数据模型和数据库建模方法研究,忽视了行为设计对结构设计的影响7.1.2 数据库设计方法:\r\n大型数据库设计是涉及多学科的综合性技术,又是一项庞大的工程项目。它要求数据库设计人员具有多方面的知识和技术主要包括:\r\n计算机的基础知识\r\n软件工程的原理和方法\r\n程序设计的方法和技巧\r\n数据库的基本知识\r\n数据库设计技术\r\n应用领域的知识\r\n早期数据库设计:主要采用手工与经验相结合的方法:\r\n设计质量与设计人员的经验和水平有直接关系\r\n缺乏科学理论和工程方法的支持,设计质量难以保证\r\n数据库运行一段时间后又不同程度地发现各种问题,增加了系统维护的代价\r\n规范设计法基本思想:过程迭代和逐步求精,典型方法如下:\r\n新奥尔良(New Orleans)方法\r\n简介:把数据库设计分为四个间阶段,目前不同的阶段做什么事,如第一个阶段需求分析(了解用户和应用程序对数据库的要求),第二个阶段概念结构设计根据需求分析设计出数据库大致长什么样(如用E-R图),第三阶段逻辑设计根据E-R设计转为数据库中实际的表,第四阶段物理结构设计(就是数据存储在什么地方,怎么存放)  \r\n基于 E-R 模型的设计方法\r\n简介:根据需求分析得到实体与实体之间的联系,做成E-R图  \r\n3NF(第三范式)的设计方法\r\n简介:就是取消了表中的传递函数依赖  \r\n面向对象的数据库设计方法\r\n简介:和java中的面向对象一样的原理  \r\n统一建模语言(UML)方法\r\n简介:这是一种工具,和E-R图有点类似,表达出实体与实体间的联系', '2022-11-23 20:46:11', 9, 0, 2, 5);
INSERT INTO `article` VALUES (6, 'sql笔记', '--创建用户① --GRANT(授权)REVOKE(回收权限)--创建用户create user 用户名 identified', '--创建用户①\n\n--GRANT(授权)REVOKE(回收权限)\n--创建用户\ncreate user 用户名 identified by 密码\n\nGRANT CONNECT,RESOURCE TO 用户;\nGRANT CREATE VIEW TO 用户;\nGRANT CREATE SYNONYM TO 用户;\nGRANT CREATE JOB TO 用户;\nGRANT SELECT ANY TABLE TO 用户;\n--\nGRANT SELECT ON 表名/视图名 TO 用户/角色;\n--Ⅰ给用户分权限Ⅱ创建角色,给用户赋予角色,给角色分权限\n\n--创建用户②\n\nPROMPT =============================================================================================================\nPROMPT =====Step One: 定义数据文件存储路径位置(该路径需根据实际部署环境进行调整 important!!!)\nPROMPT =====可查阅select * from dba_data_files;视图查看数据文件存储路径.\nPROMPT =============================================================================================================\ndefine __DATAFILE_DESTINATION__ = \'/Oradata/wzhipdb/wzhip/\';\n--jgptf替换\n--create tablespace\nCREATE TABLESPACE tbs_hip_jgptf DATAFILE \'/Oradata/wzhipdb/wzhip/tbs_hip_jgptf.dbf\' SIZE 512M AUTOEXTEND ON NEXT 256M MAXSIZE UNLIMITED;\n--create temporary tablespace\nCREATE TEMPORARY TABLESPACE tbs_hip_jgptf_temp tempfile \'/Oradata/wzhipdb/wzhip/tbs_hip_jgptf_temp.dbf\' SIZE 256M AUTOEXTEND ON NEXT 128M MAXSIZE UNLIMITED;\n--create user CREATE USER 用户名 IDENTIFIED BY 密码\nCREATE USER yhpt_jgptf IDENTIFIED BY yhpt_jgptf_wz DEFAULT TABLESPACE tbs_hip_jgptf TEMPORARY TABLESPACE tbs_hip_jgptf_temp ACCOUNT UNLOCK;\nALTER USER yhpt_jgptf QUOTA UNLIMITED ON tbs_hip_jgptf;\n--grant privs\nGRANT CONNECT,RESOURCE TO yhpt_jgptf;\nGRANT CREATE VIEW TO yhpt_jgptf;\nGRANT CREATE SYNONYM TO yhpt_jgptf;\nGRANT CREATE JOB TO yhpt_jgptf;\nGRANT SELECT ANY TABLE TO yhpt_jgptf;\n\n \n\n--同义词\nCREATE [PUBLIC] SYNONYM 同义词名称 FOR 数据库对象;--(加public为公用,不加为私有进创建用户可见)\n\n \n\n --sql判断数字字母汉字\n\n一.包含\n1.包含中文字符\nselect * from 表名 where 列名 like \'%[吖-座]%\'\n2.包含英文字符\nselect * from 表名 where 列名 like \'%[a-z]%\'\n3.包含纯数字\nselect * from 表名 where 列名 like \'%[0-9]%\'\n二.判断\n如:判断中文\nselect * from dws_new_role where ascii(game_server) > 123\n判断数字\nselect * from dws_new_role where ascii(role_id) between 48 and 57\n三.判断sql是否为纯数字\n1:regexp_like(data,\'^[0-9]+$\')纯数字。\n2: 亦可用 regexp_like(data, \'^[[:digit:]]+$\');\n3.判断是否为3位纯数字:regexp_like(data,\'^[0-9]{3}$\')\n\n --nvl、case when\n\nnvl((case when regexp_like(h.C_OP_ID,\'^[0-9]+$\') then h.C_OP_ID else \'\' end ),(select c_emp_id from x_user where c_id=h.C_OP_ID))\n\n(case when regexp_like(h.C_OP_ID,\'^[0-9]+$\') then h.C_OP_ID else (select c_emp_id from x_user where c_id=h.C_OP_ID) end )\n\n\n \n\n--结合and、or运算符\n\nselect *\nFROM U_PAT a, U_REG b\nWHERE b.C_PAT_ID = a.C_ID\nAND (( \'1\' = \'3\' and a.c_name=\'小红\' ) or\n(\'2\' = \'3\' and a.c_name=\'小兰\' ) or\n(\'3\' = \'3\' and a.c_name=\'小绿\') )\n\n--查询字段在数据库中哪些表中存在\n\nselect c.owner, c.table_name, c.* from dba_tab_columns c where c.column_name like \'%C_UNIT_YF%\';\n\n--查询关键词/字段在数据库中哪些表中存在\n\ndeclare\n\nv_Sql varchar2(2000);\n\nv_count number;\n\nbegin\n\nfor xx in (select t.OWNER, t.TABLE_NAME, t.COLUMN_NAME\n\nfrom dba_tab_columns t\n\nwhere t.OWNER = \'密码\') loop\n\nbegin\n\nv_Sql := \'select count(1) from \' || xx.owner || \'.\' || xx.table_name ||\n\n\' where \' || xx.column_name || \' like \'\'%查询字段/关键词%\'\' \';\n\nexecute immediate v_Sql\n\ninto v_count;\n\nif (v_count >= 1) then\n\ndbms_output.put_line(xx.table_name || \':\' || xx.column_name);\n\nend if;\n\nexception\n\nwhen others then\n\nnull;\n\nend;\n\nend loop;\n\nend;', '2022-11-26 20:47:45', 1, 3, 2, 6);
INSERT INTO `article` VALUES (7, '测试文章', '这是测试文章,用于项目开发的测试、调试、修改、检验等。极具高价值性。', 'ListBox (列表框)控件\n\nListBox 控件又称列表框,它在工具箱中的图标为,它显示一个项目列表供用户选择。在列表框中,用户一次可以选择一项,也可以选择多项。\n\n1、常用属性:\n\n(1) Items 属性: 用于存放列表框中的列表项,是一个集合。通过该属性,可以添加列表项、移除列表项和获得列表项的数目。\n\n(2)MultiColumn 属性:用来获取或设置一个值,该值指示ListBox 是否支持多列。值为true 时表示支持多列,值为false 时不支持多列。当使用多列模式时,可以使控件得以显示更多可见项,如图9-19 所示。\n\n(3)ColumnWidth 属性:用来获取或设置多列ListBox 控件中列的宽度。\n\n(4)SelectionMode 属性:用来获取或设置在ListBox 控件中选择列表项的方法。当SelectionMode 属性设置为SelectionMode.MultiExtended 时,按下Shift 键的同时单击鼠标或者同时按Shift键和箭头键之一(上箭头键、下箭头键、左箭头键和右箭头键),会将选定内容从前一选定项扩展到当前项。按Ctrl 键的同时单击鼠标将选择或撤销选择列表中的某项;当该属性设置为SelectionMode.MultiSimple 时,鼠标单击或按空格键将选择或撤销选择列表中的某项;该属性的默认值为SelectionMode.One,则只能选择一项。\n\n(5)SelectedIndex 属性:用来获取或设置ListBox 控件中当前选定项的从零开始的索引。如果未选定任何项,则返回值为1。对于只能选择一项的ListBox 控件,可使用此属性确定ListBox 中选定的项的索引。如果ListBox 控件的SelectionMode 属性设置为SelectionMode.MultiSimple 或SelectionMode.MultiExtended,并在该列表中选定多个项,此时应用SelectedIndices 来获取选定项的索引。\n\n(6)SelectedIndices。该属性用来获取一个集合,该集合包含ListBox 控件中所有选定项的从零开始的索引。\n\n(7)SelectedItem 属性:获取或设置ListBox 中的当前选定项。\n\n(8)SelectedItems 属性:获取ListBox 控件中选定项的集合,通常在ListBox 控件的SelectionMode 属性值设置为SelectionMode.MultiSimple 或SelectionMode.MultiExtended(它指示多重选择ListBox)时使用。\n\n(9)Sorted 属性:获取或设置一个值,该值指示ListBox 控件中的列表项是否按字母顺序排序。如果列表项按字母排序,该属性值为true;如果列表项不按字母排序,该属性值为false。默认值为false。在向已排序的ListBox 控件中添加项时,这些项会移动到排序列表中适当的位置。\n\n(10)Text 属性:该属性用来获取或搜索ListBox 控件中当前选定项的文本。当把此属性值设置为字符串值时,ListBox 控件将在列表内搜索与指定文本匹配的项并选择该项。若在列表中选择了一项或多项,该属性将返回第一个选定项的文本。\n\n(11)ItemsCount 属性:该属性用来返回列表项的数目。', '2022-11-27 20:39:58', 666, 1, 3, 7);
INSERT INTO `article` VALUES (8, '测试文章2', '这是测试文章2。就发了麻烦了巨额附件二架飞机佛是IE金额非建安', 'hello\nnice垃圾啊了就覅非建安分发我就发了加分飞飞飞法\n接耳机佛IE附件OAVN局ioejf\n阿尔法分开飞机飞附件二覅金额法呃\n减肥哦是吕恩j就\n金佛二建法规VN好饿非建安费\n见佛诶VN奥诶分局案件 \n激发饿哦附件哦啊见发票AJFOAJFOJFEJFDJFEOFJIEF\nF JEOFJEOFJEOFJJFjfoej\nJFOJFOEJFjfjei及风机房\n激发耳机覅脑子里女哦接娃儿of就怕就反扒加分\n金额非奇偶加分怕吉尔发泡剂发泡剂副局级安抚巾f就\n\n加分哦金佛耳机佛配方鸡扒饭敬佩安家费怕二姐夫配筋啊', '2022-11-28 13:50:37', 0, 0, 3, 10);

-- ----------------------------
-- Table structure for article2tag
-- ----------------------------
DROP TABLE IF EXISTS `article2tag`;
CREATE TABLE `article2tag`  (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `article_id` int(11) NULL DEFAULT NULL,
  `tag_id` int(11) NULL DEFAULT NULL,
后面还有 95 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明

AI 解读

登录后可用,每次 10 积分,解读结果公开显示在下面。

还没有人解读过这个文件。