当前位置:首页 » 编程语言 » sql目录表设计
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql目录表设计

发布时间: 2022-05-09 05:36:34

sql编程基础的目录

译者序
前言
第1章 在表中存储信息
简介
1.1 什么是SQL
1.2 什么是关系数据库?为什么要使用它
1.3 为什么学习SQL
1.4 本书内容简介表的组成部分
1.5 数据存储于表中
1.6 一行表示一个对象及其相关信息
1.7 一列表示一类信息
1.8 单元格是表的最小部分
1.9 每个单元格应该只表示一样东西
1.10 使用主键列标识每一个行
1.11 大部分表都很“瘦长”表的示例
1.12 Oracle和Access中表的示例
1.13 Lemployees表的一些设计决策
1.14 Lunches数据库
小结
第2章 从表中获取信息select语句
2.1 目标:从表中获取几个列和行
2.2 select语句概述select子句
2.3 select子句概述
2.4 使用select子句获取若干列
2.5 使用select子句获取所有的列
2.6 使用select语句获取某个列中的不同值
2.7 使用select子句获得几个列中的不同值where子句
2.8 where子句概览
2.9 在where子句中使用等于条件
2.10 在where子句中使用小于条件
2.11 在where子句中使用不等于条件
2.12 在where子句中使用in条件
2.13 在where子句中使用between条件
2.14 在where子句中使用like条件
2.15 在where子句中使用isnull条件orderby子句
2.16 orderby子句概述
2.17 通过一列升序排列行
2.18 通过若干列升序排列行
2.19 根据若干列以各种顺序排序各行
2.20 整个过程
小结
第3章 where子句中的复合条件where子句中的复合条件
3.1 在where子句中使用复合条件
3.2 将not与in.between.like和isnull条件一起使用
3.3 where子句中复杂条件的标准形式
3.4 一个常见错误常数值
3.5 在select子句中使用常数值
3.6 使用常数表标点符号问题
3.7 现在需要知道的标点符号
3.8 标点符号参考区分大小写
3.9 Oracle中的区分大小写
3.10 关于SQL中区分大小写的争论
3.11 有一个选择
3.12 在OracleSQLCommandLine环境中关闭区分大小写
3.13 Access中区分大小写三值逻辑
3.14 使用三值逻辑的SQL错误消息
3.15 错误消息常常是错的练习
3.16 练习1
3.17 练习2
3.18 练习3
小结
第4章 保存结果在新表或者视图中保存结果
4.1 从select语句的结果中创建一个新表
4.2 从select语句的结果创建一个新的视图
4.3 表和视图的相似之处
4.4 表和视图的不同之处
4.5 删除表
4.6 删除视图
4.7 一个视图可以建立在另一个视图之上
4.8 预防性删除修改表中的数据
4.9 添加新行到表中
4.10 添加若干新行到一个表中
4.11 更改已经存在于表的行中的数据
4.12 从表中删除行使用GUI修改表中的数据
4.13 使用OracleGUI来修改表中的数据
4.14 使用AccessGUI来修改表中的数据修改表中数据的限制
4.15 使用insert.update和delete的约束条件
4.16 安全限制
小结
第5章 数据字典和其他Oracle主题提交、回滚和事务
5.1 commit和rollback命令
5.2 Autocommit选项
5.3 事务通过视图修改数据
5.4 通过视图更改数据
5.5 通过视图更改数据的例子
5.6 使用WithCheckOption的视图Oracle中的SQLCommands页面
5.7 SQLCommands页面概览
5.8 Autocommit选项
5.9 Explain选项使用Oracle数据字典:第一部分
5.10 数据字典概述
5.11 如何查找所有表的名字
5.12 如何查找所有视图的名字
5.13 如何查找定义视图的select语句
5.14 如何查找表或者视图中的列名
5.15 如何查找表的主键
小结
第6章 创建自己的表创建表
6.1 createtable命令
6.2 Oracle和Access中的数据类型
6.3 文本数据类型
6.4 数字数据类型
6.5 日期/时间数据类型
6.6 其他数据类型
6.7 将数据放入新表中
6.8 在Oracle中创建Lemployees表更改表
6.9 为表添加主键
6.10 更改表的主键
6.11 向表中添加一个新列
6.12 扩展列的长度
6.13 从表中删除一个列
6.14 对表进行其他更改带有重复行的表
6.15 重复行的问题
6.16 如何删除重复行
6.17 如何区别重复行
小结
第7章 格式.序列和索引格式
7.1 日期格式
7.2 显示已经格式化的日期
7.3 输入已格式化的日期
7.4 Oracle中的其他格式
7.5 Access中的格式序列
7.6 在Oracle中创建序列
7.7 在Oracle中使用序列
7.8 在Access中使用序列索引
7.9 创建索引
7.10 优化器
7.11 索引如何工作的示例在数据字典中查找更多的信息:第二部分
7.12 如何查找有关列的数据类型的信息
7.13 如何查找有关序列的信息
7.14 如何找到有关索引的信息
7.15 如何找到所有数据库对象的相关信息
7.16 如何使用Oracle中的数据字典表
7.17 如何使用数据字典列的索引练习
7.18 创建一个想要庆祝的节日的表
小结
第8章 数据完整性表上的约束条件
8.1 约束条件使数据保持一致
8.2 check约束条件
8.3 unique约束条件
8.4 notnull约束条件
8.5 primarykey约束条件
8.6 对字段数据类型和长度的限制参照完整性
8.7 参照完整性的概念
8.8 参照完整性的示例
8.9 对RI保护的数据表使用insert和update
8.10 通过RI允许对数据表使用insert和update
8.11 RI防止对查找表使用update和delete
8.12 如何从查找表中删除编码
8.13 如何在查找表中更改编码
8.14 RI作为表之间的关系
8.15 在AccessGUI中建立RIRI的delete选项和update选项
8.16 删除和更新查找表的三个选项
8.17 删除规则:setnull
8.18 删除规则:cascade
8.19 更新规则:cascade验证参照完整性
8.20 主键的两种含义
8.21 使用两个或者更多的列作为主键
8.22 查找表和数据表可以是同一个表如何在createtable语句中编写约束条件
8.23 约束条件常常在createtable语句中编写
小结
第9章 行函数行函数简介
9.1 直接从初始表中获得数据
9.2 什么是行函数
9.3 select子句中行函数的例子
9.4 select语句的所有子句中使用行函数的例子
9.5 定义行函数作为第一步数字函数
9.6 数字函数
9.7 如何测试行函数
9.8 测试数字行函数的另一种方法文本函数
9.9 文本函数
9.10组合名和姓
9.11分隔名和姓
9.12设计电话号码的格式日期函数
9.13日期函数
9.14日期函数的一个例子
9.15从日期中删除时间
小结
第10章 使用行函数特殊行函数
10.1 其他行函数
10.2 使用函数识别用户和日期
10.3 使用函数把null改为其他值
10.4 使用函数更改数据类型使用行函数的文档
10.5 使用Oracle文档
10.6 使用Access文档
10.7 使用AccessExpressionBuilder查看行函数创建数字和日期模式
10.8 创建一个简单的数字模式
10.9 创建一个复杂的数字模式
10.10 列出一个星期的所有星期数
10.11 创建一个工作日日历
10.12 如何计算从出生到现在的天数
10.13 如何查找出生后满10000天的日期
10.14 给Oracle和Access中的报表编行号
10.15 可选内容:解代数方程的一种简单方法
小结
第11章 汇总数据列函数简介
11.1 汇总一个列中的所有数据
11.2 列函数列表最大值和最小值
11.3 找出最大值和最小值
11.4 列函数和where子句一起使用
11.5 找出拥有最大值和最小值的行计数
11.6 对行和数据计数
11.7 零计数:第一部分
11.8 对列中相异值计数
11.9 计算两个或多个列中相异值的数目求和与平均
11.10 求和函数与平均函数
11.11 加法存在的问题以及如何解决其他主题
11.12 并不总将null更改为零
11.13 计算列中null的数目
11.14 对相异值计数
小结
第12章 控制汇总级别将表划分为行的组并汇总每个组
12.1 列中数据组的汇总
12.2 groupby子句
12.3 由两个或更多列形成的组
12.4 有多个分组列时的null组
12.5 在同一条select语句中,已汇总的数据不能与没有汇总的数据混一起
12.6 解决方案1:将更多的列添加到groupby子句中
12.7 解决方案2:将查询划分为两条单独的select语句
12.8 如何创建有多个小计和一个总计的报表
12.9 零计数:第二部分
12.10 零计数:第三部分删除某些已汇总的数据
12.11 having子句
12.12 比较having子句与where子句
12.13 在一个表上使用select语句的全过程
12.14 having子句没有增加select语句的功能
12.15 使用where子句来删除原始数据
12.16 如何对一个列函数应用另一个列函数并且绕开其他限制
小结
第13章 内连接连接简介
第14章 外连接外连接简介
第15章 union和unionall union的基础知识
第16章 交叉连接和自连接交叉连接
第17章 在产品数据库中组合表连接三个或者更多表的方法
第18章 if then else 参数查询和子查询if then else逻辑
第19章 多用户环境数据库配置
第20章 SQL设计SQL的最初设计目标
附录A 获取和安装Oracle
附录B Oracle快速入门
附录C Access快速入门
附录D Lunches数据库的图

㈡ 怎么设置SQL语句中表的保存位置

表1前面加上路径。如:into table c:\aaa\表1,表示表1放到C盘aaa目录下。

㈢ sql语句创建表

创建新表的程序功能为:

create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)

具体为:

创建之前判断该数据库是否存在

if exists (select * from sysdatabases where name='databaseName')

drop database databaseName

go

Create DATABASE databasename

on primary-- 默认就属于primary文件组,可省略

/*--数据文件的具体描述--*/

name=‘databasename_data’,-- 主数据文件的逻辑名称

filename=‘'所存位置:databasename_data.mdf’, -- 主数据文件的物理名称

size=数值mb, --主数据文件的初始大小

maxsize=数值mb, -- 主数据文件增长的最大值

filegrowth=数值%--主数据文件的增长率

log on

/*--日志文件的具体描述,各参数含义同上--*/

name='databasename_log', -- 日志文件的逻辑名称

filename='所存目录:databasename_log.ldf', -- 日志文件的物理名称

size=数值mb, --日志文件的初始大小

filegrowth=数值%--日志文件的增长值

结构化查询语言(Structured Query Language)简称SQL,结构化查询语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;

sql 语句就是对数据库进行操作的一种语言。

(3)sql目录表设计扩展阅读

1、常见语句

更新:update table1 set field1=value1 where 范围

查找:select * from table1 where field1 like ’%value1%’ (所有包含‘value1’这个模式的字符串)

排序:select * from table1 order by field1,field2 [desc]

求和:select sum(field1) as sumvalue from table1

平均:select avg(field1) as avgvalue from table1

最大:select max(field1) as maxvalue from table1

最小:select min(field1) as minvalue from table1[separator]

2、高级查询

A:UNION运算符

UNION 运算符通过组合其他两个结果表(例如TABLE1 和TABLE2)并消去表中任何重复行而派生出一个结果表。当 ALL 随UNION 一起使用时(即UNION ALL),不消除重复行。两种情况下,派生表的每一行不是来自TABLE1 就是来自TABLE2。

B: EXCEPT运算符

EXCEPT 运算符通过包括所有在TABLE1 中但不在TABLE2 中的行并消除所有重复行而派生出一个结果表。当ALL 随EXCEPT 一起使用时(EXCEPT ALL),不消除重复行。

C:INTERSECT运算符

INTERSECT 运算符通过只包括TABLE1 和TABLE2 中都有的行并消除所有重复行而派生出一个结果表。当ALL 随INTERSECT 一起使用时(INTERSECT ALL),不消除重复行。

注:使用运算词的几个查询结果行必须是一致的。

㈣ sql怎么建立索引

进入查询窗口后,输入下面的语句:

CREATE INDEX mycolumn_index ON mytable (myclumn)

这个语句建立了一个名为mycolumn_index的索引。你可以给一个索引起任何名字,但你应该在索引名中包含所索引的字段名,这对你将来弄清楚建立该索引的意图是有帮助的。

注意:

在本书中你执行任何SQL语句,都会收到如下的信息:

This command did not return data,and it did not return any rows

这说明该语句执行成功了。

索引mycolumn_index对表mytable的mycolumn字段进行。这是个非聚簇索引,也是个非唯一索引。(这是一个索引的缺省属性)

如果你需要改变一个索引的类型,你必须删除原来的索引并重建 一个。建立了一个索引后,你可以用下面的SQL语句删除它:

DROP INDEX mytable.mycolumn_index

注意在DROP INDEX 语句中你要包含表的名字。在这个例子中,你删除的索引是mycolumn_index,它是表mytable的索引。

要建立一个聚簇索引,可以使用关键字CLUSTERED。)记住一个表只能有一个聚簇索引。(这里有一个如何对一个表建立聚簇索引的例子:

CREATE CLUSTERED INDEX mycolumn_clust_index ON mytable(mycolumn)

如果表中有重复的记录,当你试图用这个语句建立索引时,会出现错误。但是有重复记录的表也可以建立索引;你只要使用关键字ALLOW_DUP_ROW把这一点告诉SQL Sever即可:

CREATE CLUSTERED INDEX mycolumn_cindex ON mytable(mycolumn)

WITH ALLOW_DUP_ROW

这个语句建立了一个允许重复记录的聚簇索引。你应该尽量避免在一个表中出现重复记录,但是,如果已经出现了,你可以使用这种方法。

要对一个表建立唯一索引,可以使用关键字UNIQUE。对聚簇索引和非聚簇索引都可以使用这个关键字。这里有一个例子:

CREATE UNIQUE COUSTERED INDEX myclumn_cindex ON mytable(mycolumn)

这是你将经常使用的索引建立语句。无论何时,只要可以,你应该尽量对一个对一个表建立唯一聚簇索引来增强查询操作。

最后,要建立一个对多个字段的索引——复合索引——在索引建立语句中同时包含多个字段名。下面的例子对firstname和lastname两个字段建立索引:

CREATE INDEX name_index ON username(firstname,lastname)

这个例子对两个字段建立了单个索引。在一个复合索引中,你最多可以对16个字段进行索引。

用事务管理器建立索引

用事务管理器建立索引比用SQL语句容易的多。使用事务管理器,你可以看到已经建立的索引的列表,并可以通过图形界面选择索引选项。

使用事务管理器你可以用两种方式建立索引:使用Manage Tables窗口或使用Manage Indexes窗口。

要用Manage Tables 窗口建立一个新索引,单击按钮Advanced Options(它看起来象一个前面有一加号的表)。这样就打开了Advanced Options对话框。这个对话框有一部分标名为Primary Key(见图11.1)。

图11。1

要建立一个新索引,从下拉列表中选择你想对之建立索引的字段名。如果你想建立一个对多字段的索引,你可以选择多个字段名。你还可以选择索引是聚簇的还是非聚簇的。在保存表信息后,索引会自动被建立。在Manage Tables窗口中的字段名旁边,会出现一把钥匙。

你已经为你的表建立了“主索引”。主索引必须对不包含空值的字段建立。另外,主索引强制一个字段成为唯一值字段。

要建立没有这些限制的索引,你需要使用Manage Indexes窗口。从菜单中选择Manage|Indexes,打开Manage Indexes 窗口。在Manage Indexes 窗口中,你可以通过下拉框选择表和特定的索引。(见图11.2)。要建立一个新索引,从Index下拉框中选择New Index.,然后就可以选择要对之建立索引的字段。单击按钮Add,把字段加人到索引中。

图11。2

你可以为你的索引选择许多不同的选项。例如,你可以选择该索引是聚簇的还是非聚簇的。你还可以指定该索引为唯一索引。设计好索引后,单击按钮Build,建立该索引。

注意:

唯一索引是指该字段不能有重复的值,而不是只能建立这一个索引。

SQL核心语句

在第十章,你学会了如何用SQL SELECT 语句从一个表中取数据。但是,到现在为止,还没有讨论如何添加,修改或删除表中的数据。在这一节中,你将学习这些内容。

插入数据

向表中添加一个新记录,你要使用SQL INSERT 语句。这里有一个如何使用这种语句的例子:

INSERT mytable (mycolumn) VALUES (‘some data')

这个语句把字符串'some data'插入表mytable的mycolumn字段中。将要被插入数据的字段的名字在第一个括号中指定,实际的数据在第二个括号中给出。

INSERT 语句的完整句法如下:

INSERT [INTO] {table_name|view_name} [(column_list)] {DEFAULT VALUES |

Values_list | select_statement}

如果一个表有多个字段,通过把字段名和字段值用逗号隔开,你可以向所有的字段中插入数据。假设表mytable有三个字段first_column,second_column,和third_column。下面的INSERT语句添加了一条三个字段都有值的完整记录:

INSERT mytable (first_column,second_column,third_column)

VALUES (‘some data','some more data','yet more data')

注意:

你可以使用INSERT语句向文本型字段中插入数据。但是,如果你需要输入很长的字符串,你应该使用WRITETEXT语句。这部分内容对本书来说太高级了,因此不加讨论。要了解更多的信息,请参考Microsoft SQL Sever 的文档。

如果你在INSERT 语句中只指定两个字段和数据会怎么样呢?换句话说,你向一个表中插入一条新记录,但有一个字段没有提供数据。在这种情况下,有下面的四种可能:

如果该字段有一个缺省值,该值会被使用。例如,假设你插入新记录时没有给字段third_column提供数据,而这个字段有一个缺省值'some value'。在这种情况下,当新记录建立时会插入值'some value'。
如果该字段可以接受空值,而且没有缺省值,则会被插入空值。
如果该字段不能接受空值,而且没有缺省值,就会出现错误。你会收到错误信息:
The column in table mytable may not be null.

最后,如果该字段是一个标识字段,那么它会自动产生一个新值。当你向一个有标识字段的表中插入新记录时,只要忽略该字段,标识字段会给自己赋一个新值。
注意:

向一个有标识字段的表中插入新记录后,你可以用SQL变量@@identity来访问新记录

的标识字段的值。考虑如下的SQL语句:

INSERT mytable (first_column) VALUES(‘some value')

INSERT anothertable(another_first,another_second)

VALUES(@@identity,'some value')

如果表mytable有一个标识字段,该字段的值会被插入表anothertable的another_first字段。这是因为变量@@identity总是保存最后一次插入标识字段的值。

字段another_first应该与字段first_column有相同的数据类型。但是,字段another_first不能是应该标识字段。Another_first字段用来保存字段first_column的值。

删除记录

要从表中删除一个或多个记录,需要使用SQL DELETE语句。你可以给DELETE 语句提供WHERE 子句。WHERE子句用来选择要删除的记录。例如,下面的这个DELETE语句只删除字段first_column的值等于'Delete Me'的记录:

DELETE mytable WHERE first_column='Deltet Me'

DELETE 语句的完整句法如下:

DELETE [FROM] {table_name|view_name} [WHERE clause]

在SQL SELECT 语句中可以使用的任何条件都可以在DELECT 语句的WHERE子句中使用。例如,下面的这个DELETE语句只删除那些first_column字段的值为'goodbye'或 second_column字段的值为 'so long'的记录:

DELETE mytable WHERE first_column='goodby' OR second_column='so long'

如果你不给DELETE 语句提供WHERE 子句,表中的所有记录都将被删除。你不应该有这种想法。如果你想删除应该表中的所有记录,应使用第十章所讲的TRUNCATE TABLE语句。

注意:

为什么要用TRUNCATE TABLE 语句代替DELETE语句?当你使用TRUNCATE TABLE语句时,记录的删除是不作记录的。也就是说,这意味着TRUNCATE TABLE 要比DELETE快得多

㈤ SQL基础教程的目录

1.1运行SQL程序
1.2Microsoft Access
1.3Microsoft SQL Server
1.3.1SQL Server 2000
1.3.2SQL Server 2005/2008
1.4Oracle
1.5IBM DB2
1.6MySQL
1.7PostgreSQL 2.1表、列和行
2.1.1表
2.1.2列
2.1.3行
2.2主键
2.3外键
2.4联系
2.4.1一对一
2.4.2一对多
2.4.3多对多
2.5规范化
2.5.1第一范式
2.5.2第二范式
2.5.3第三范式
2.5.4其他范式
2.6示例数据库
2.6.1表authors
2.6.2表publishers
2.6.3表titles
2.6.4表titles_authors
2.6.5表royalties
2.7创建示例数据库 3.1SQL语法
3.2SQL标准和一致性
3.3标识符
3.4数据类型
3.5字符串类型
3.6二进制大型对象类型
3.7精确数字类型
3.8近似数字类型
3.9布尔类型
3.10日期和时间类型
3.11时间间隔类型
3.12唯一标识符
3.13其他数据类型
3.14空值 4.1使用SELECT和FROM检索列
4.2使用AS创建列的别名
4.3使用DISTINCT消除重复的行
4.4使用ORDER BY排序行
4.5使用WHERE筛选行
4.6使用AND、OR和NOT组合及求反条件
4.6.1AND操作符
4.6.2OR操作符
4.6.3NOT操作符
4.6.4AND、OR和NOT一起使用
4.7使用LIKE匹配模式
4.8使用BETWEEN进行范围筛选
4.9使用IN进行列表筛选
4.10使用IS NULL测试空值 5.1创建派生列
5.2执行算术运算
5.3确定计算的顺序
5.4使用||连接串
5.5使用SUBSTRING()提取子串
5.6使用UPPER()和LOWER()更改串的大小写
5.7使用TRIM()修整字符
5.8使用CHARACTER_LENGTH()得到串长度
5.9使用POSITION()查找子串
5.10执行日期及时间间隔运算
5.11获得当前日期和时间
5.12获得用户信息
5.13使用CAST()转换数据类型
5.14使用CASE计算条件值
5.15使用COALESCE()检查空值
5.16使用NULLIF()比较表达式 6.1使用聚合函数
6.2创建聚合表达式
6.3使用MIN()查找最小值
6.4使用MAX()查找最大值
6.5使用SUM()计算总和
6.6使用AVG()计算平均值
6.7使用COUNT()统计行数
6.8使用DISTINCT聚合不重复的值
6.9使用GROUP BY分组行
6.10使用HAVING筛选分组 7.1限定列名
7.2使用AS创建表的别名
7.3使用联结
7.4使用JOIN或WHERE创建联结
7.5使用CROSS JOIN创建交叉联结
7.6使用NATURAL JOIN创建自然联结
7.7使用INNER JOIN创建内联结
7.8使用OUTER JOIN创建外联结
7.9创建自联结 8.1理解子查询
8.2子查询语法
8.3子查询和联结
8.4简单子查询和相关子查询
8.4.1简单子查询
8.4.2相关子查询
8.5在子查询中限定列名
8.6子查询中的空值
8.7使用子查询作为列表达式
8.8使用比较操作符比较子查询的值
8.9使用IN测试集合成员资格
8.10使用ALL比较所有子查询的值
8.11使用ANY比较某些子查询的值
8.12使用EXISTS检测存在性
8.13比较等价查询 9.1使用UNION合并行
9.2使用INTERSECT查找相同行
9.3使用EXCEPT查找不同行 10.1显示表结构
10.2使用INSERT插入行
10.3使用UPDATE更新行
10.4使用DELETE删除行 11.1创建表
11.2理解约束
11.3使用CREATE TABLE创建新表
11.4使用NOT NULL禁止空值
11.5使用DEFAULT确定默认值
11.6使用PRIMARY KEY指定主键
11.7使用FOREIGN KEY指定外键
11.8使用UNIQUE确保值唯一
11.9使用CHECK创建检查约束
11.10使用CREATE TEMPORARY TABLE创建临时表
11.11使用CREATE TABLE AS利用已存在表创建新表
11.12使用ALTER TABLE修改表
11.13使用DROP TABLE删除表 12.1使用CREATE INDEX创建索引
12.2使用DROP INDEX删除索引 13.1使用CREATE VIEW创建视图
13.2通过视图检索数据
13.3通过视图修改数据
13.3.1通过视图插入行
13.3.2通过视图更新行
13.3.3通过视图删除行
13.4使用DROP VIEW删除视图 15.1动态统计
15.2产生序列
15.3发现等差数列、递增数列和等值数列
15.4限定返回行的数量
15.4.1Microsoft Access
15.4.2Microsoft SQL Server
15.4.3Oracle
15.4.4IBM DB2
15.4.5MySQL
15.4.6PostgreSQL
15.5分配排名
15.6计算修整均值
15.7随机选取行
15.8处理重复值
15.9创建电话列表
15.10检索元数据
15.10.1Microsoft Access
15.10.2Microsoft SQL Server
15.10.3Oracle
15.10.4IBM DB2
15.10.5MySQL
15.10.6PostgreSQL
15.11处理日期
15.11.1Microsoft Access
15.11.2Microsoft SQL Server
15.11.3Oracle
15.11.4IBM DB2
15.11.5MySQL
15.11.6PostgreSQL
15.12计算中值
15.13查询极值
15.14改变动态统计的中流
15.15旋转结果
15.16处理层次结构
索引

㈥ sql数据库课程设计怎么做啊

静轩图书信息管理系统---摘 要
图书管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。其能够完成对图书的添加、删除、借阅、归还和对读者的管理等功能的操作。经过分析,使用 Microsoft�0�8
Visual Basic 6.0为开发工具,利用其提供的各种面向对象的可视化开发平台作为开发工具,采用面向对象技术,图形化的应用开发环境,尤其是它有一个功能极其强大的集成环境提供给开发人员,使得开发人员可通过菜单、界面、图形浏览工具、对话框以及嵌入的各种生成器来轻松地完成各种复杂的操作。并且,方便的界面制作,可以节省更多的时间来研发后台的程序代码及数据库。数据库选用Access,其存储方式单一,都存放在后缀为(.mdb)的数据库文件中,界面友好易于操作管理。开发过程中不断修正和改进,直到形成满意的可行系统。
关键词: VB程序设计、图书管理系统、信息管理系统(MIS)、数据库、Visual Basic6.0、面向对象(Object)、图书管理。

㈦ 怎样设计树形目录的数据库用SQL

create table catelog(
id int identity(1,1) not null primary key,
description nvarchar(50),
parent_id int -- 存放父节点的ID
)
go
-- 建索引提高查询性能。
create index ix_catelog_parent on catelog(parent_id)
go

㈧ 求解,关于SQL给表创建索引和视图的问题,各位帮帮忙

索引的使用是数据库自动完成的,不需要特别调用!使用索引可以加快查询速度,可以参考以下的网络说明:

使用索引可快速访问表中的特定信息。索引是对数据库表中一列或多列的值进行排序的一种结构,例如 employee 表的姓(name)列。如果要按姓查找特定职员,与必须搜索表中的所有行相比,索引会帮助您更快地获得该信息。
在关系数据库中,索引是一种与表有关的数据库结构,它可以使对应于表的SQL语句执行得更快。索引的作用相当于图书的目录,可以根据目录中的页码快速找到所需的内容。当表中有大量记录时,若要对表进行查询,第一种搜索信息方式是全表搜索,是将所有记录一一取出,和查询条件进行一一对比,然后返回满足条件的记录,这样做会消耗大量数据库系统时间,并造成大量磁盘I/O操作;第二种就是在表中建立索引,然后在索引中找到符合查询条件的索引值,最后通过保存在索引中的ROWID(相当于页码)快速找到表中对应的记录。
索引是一个单独的、物理的数据库结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。
索引提供指向存储在表的指定列中的数据值的指针,然后根据您指定的排序顺序对这些指针排序。数据库使用索引的方式与您使用书籍中的索引的方式很相似:它搜索索引以找到特定值,然后顺指针找到包含该值的行。
在数据库关系图中,您可以在选定表的“索引/键”属性页中创建、编辑或删除每个索引类型。当保存索引所附加到的表,或保存该表所在的关系图时,索引将保存在数据库中。

一般数据库在建立时的默认索引是主键,但是在使用查询过程中有些字段往往作为经常的检索条件,比方说入库时间、姓名、种类等。如果不基于主键的查询经常发生的话,在这些查询字段上建立索引可以加快查询速度,提交程序的反应性能!

对于视图,一个是简单方便查询,同时也提高安全性,可参考网络介绍
* 简单性。看到的就是需要的。视图不仅可以简化用户对数据的理解,也可以简化他们的操作。那些被经常使用的查询可以被定义为视图,从而使得用户不必为以后的操作每次指定全部的条件。

* 安全性。通过视图用户只能查询和修改他们所能见到的数据。数据库中的其它数据则既看不见也取不到。数据库授权命令可以使每个用户对数据库的检索限制到特定的数据库对象上,但不能授权到数据库特定行和特定的列上。通过视图,用户可以被限制在数据的不同子集上:

使用权限可被限制在另一视图的一个子集上,或是一些视图和基表合并后的子集上。

* 逻辑数据独立性。视图可帮助用户屏蔽真实表结构变化带来的影响。

㈨ pl/sql如何现实像sqlserver中的树形结构目录界面,就是能查看表视图那样的界面。

可以按如下方法查看:

1、用指定用户登录pl/sql。

㈩ 深入浅出SQL的作品目录


这本书适合谁?
我们知道你在想什么
元认知
让你的大脑顺从你的方法
读我
技术审阅团队
致谢
1 数据和表:保存所有东西的地方
定义数据
从分类的角度看数据
什么是数据库?
戴上X光眼镜,看穿数据库……
数据库包含关联数据
放大表
接受命令!
设定表:CREATE TABLE语句
创建更复杂的表
看,设计SQL是多么简单
创建my—contacts表(终于!)
您的表已经准备好了
认识一下其他数据类型
请看您的表
不可以重建已存在的表或数据库!
辞旧迎新
为了把数据添加进表里,您需要INSERT语句
各种INSERT语句
没有值的列
以SELECT语句窥探表
SQL真情指数:NULL的真情告白
控制内心的NULL
NOT NULL出现在DESC的结果中
用DEFAULT填补空白
你的SQL工具包
2 SELECT语句:取得精美包装里的数据
要约会吗?
更好的SELECT
究竟是什么?
如何查询数据类型
更多标点问题
不成对的单引号
单引号是特殊字符
INSERT包含单引号的数据
SELECT特定列来限制结果数量
SELECT特定列以加快结果呈现
结合查询
查找数值
顺利运用比较运算符
利用比较运算符取得数字数据
对文本数据套用比较运算符