发布网友 发布时间:2022-04-26 09:08
共3个回答
懂视网 时间:2022-04-29 21:16
".(本台)","lacal(本地)"登陆 点击电脑开始→ 运行→ cmd→ net start mssqlserver 服务器的启动 net stop mssqlserver 服务器的停止 .mdf 数据库文件,有且只有一个!(一般复制就复制mdf) .ldf 表示产生 日志并记录 ,至少有一个! Create database 数据库名 创建数据库名 注意:不能出现同名数据库 首字母不能为数字 use 数据库名 使用某个数据库 常用的数据类型 int:整形类型 varchar(50):字符串类型 decimal(18,2):小数类型 18:小数点后可以写18位 2:取小数点后俩位 datetime:时间类型 image:图片 create table 表名 --创建数据库表名 注意:不能出现同名表 对表进行:添加,修改,删除,查询 ( 列名 数据类型 列名 数据类型 not null, --not null列可否为空 列名 数据类型 primary key identity(1,1)not null, --设置主键自增长 ) 设置主键外键格式 设置主键的列的不能为空 不能重复 create table 表名1 ( 列名 数据类型 , 列名1 数据类型 primary key not null, ) create table 表名2 ( 列名1 数据类型 , foreign key (列名1) references 表名1 (列名1 ) , 列名 数据类型, ) go go可写可不写 insert into 表名 values() --括号里面的写的一定要跟你创建表时写的一一对应 values值的意思 uptade 表名 set 你要改为的内容 where 条件 delete from 表名 where 条件 truncate table 表名 --去除表中的内容 不删除表 数据库最重要的就是查询 投影 select * from 表名 select 列1,列2... from 表名 select distinct 列名 from 表名 --去重 筛选 select top 数字 列|* from 表名 (一)等值与不等值 select * from 表名 where 列名=值 select * from 表名 where 列名!=值 select * from 表名 where 列名>值 select * from 表名 where 列名<值 select * from 表名 where 列名>=值 select * from 表名 where 列名<=值 (二)多条件与范围 select * from 表名 where 条件1 and||or 条件2 ... select * from 表名 where between ... and ... select * from 表名 where 列 in (值列表) (三)模糊查询 like % _ select * from 表名 where 列 like ‘%_....‘ 排序 select * from 表名 where 条件 order by 列名 ASC||DESC,列名 ASC||DESC 连接查询: 把多个表的列合在一个界面视图查看 第一种方法 第一步 :生成笛卡尔积 select*from 表1,表2 第二步: 对笛卡尔积进行筛选 select*from 表1,表2 where 表1.相关联列=表2.相关联列 第三步: 对你所需要的列进行显示 select 表1.列1,表1.列2,表2.列1...... from 表1,表2 where 表1.相关联列=表2.相关联列 --你所取得列一定要区分是那个表的 第二种方法 --后台运行速度比第一种方法快 建议使用 select *from 表1 join 表2 on 表1.相关联列=表2.相关联列 join 表3 on 表2.相关联列=表3.相关联列 join前 修饰符 默认inner left join左链接以左表为主 左表的信息全部显现出来 右表根据左表的需要显现 right join右链接以右表为主 右表的信息全部显现出来 左表根据右表的需要显现 子查询(嵌套查询) 必要因素:多个表一定是有相关联列的 至少俩层查询 先查询外层的再查询里层的 里层的查询外层的查询提供查询的结果 联合查询: 把多个表的行合在一个界面视图查看 -- 针对多个表的时候 一个表的时候用or就可以了 select 列1,列2 from 表1 where 条件 union select 列1,列2 from 表2 where 条件 分组查询:group...by...having... 统计函数(聚合函数) count(), max(), min(), sum(), avg() count(*)得到所有的行数 count(列)得到该列中所有非null个数。 max(列) 这一列的最大,min(列)这一列的最小 sum(列)这一列的和,avg(列)这一列的平均 select 列名,COUNT(*) from 表名 group by 列名 having 条件 .一旦使用group by分组了,则select和from中间就不能用*,只能包含两类东西一类是:group by 后面的列名,另一类是统计函数 having后面一般跟得是统计函数。它用来对分组后的数据进一步筛选。 对于统计函数生成的列,默认是无列名,可以通过下面的方法指定列名。 select 列名1 ,COUNT(*) as 起的列名1,avg(列名2) 起的列名2 from 表名 group by 列名1 转换函数 print cast (‘123‘as int)+10 --cast先写变量再写类型 字符串转换为整数型 print convert (int,‘123‘)+12 --convert先写类型再写变量 字符串转换为整数型 select YEAR(‘1993-03-09‘) --取年份 select DATEADD(DAY,1,‘1993-03-09‘) --加1天 select datediff(day,‘1993-03-09‘,‘2015-04-25‘)--计算你到今天活了多少天 print getdate() --获取当前电脑时间 print isdate(‘2015-04-25‘) --判断时间格式是否正确 正确返回1 否则0 print datename (weekday,‘2015-04-25‘) --datename返回的是一个字符串类型的值 今天周几 print datepart (weekday,‘2015-04-25‘) --datepart返回的是一个int类型的值 今天是这周的第几天 select YEAR(getdate())-year(‘1993-03-09‘)as 年龄 --获取你的年龄 select left(‘ASDFGH‘,3) --从左往右获取固定长度 right反之 select upper(‘AsdFgH‘) --转换成大写 lower 反之 select LEN(‘iubfbjnboidnslk‘) --len返回值int类型 返回总长度 print ltrim(‘ UYH‘) --去掉左边的空格 rtrim反之 print substring(‘JHHGUUILIUI‘,6,3) --截取从3个长度从6开始 索引从1开始 print replace(‘2B2B2B2B2B2B‘,‘2B‘,‘HB‘) --替换字符串2B换成HB print replicate (‘你好‘,5) -- 复制你好5次显示 print reverse(‘就是这样子‘) --反转
数据库总结
标签:
热心网友 时间:2022-04-29 18:24
这个主要要着重写几个方面,你一定要多写,写的详细一点。
1,管理系统的数据库需求【这个算是概况】
2,数据库对象模型设计 【设计核心部分】
3,数据库的创建以及表间关系,存储过程,视图,触发器的设计和定义。【标准定义部分】
4,数据库的优化设计,【这个你要是没有经验,就多测试,多写测试结果】
【着重在测试上多写点啊,比如,20万数据和100万数据的时候,你是如何优化查询的】
少说这里能写个几千字。
5,数据访问组件的代码结构,既然是管理系统,肯定要涉及数据访问。你把这个多写一点,比如不同组件之间的数据访问的差异,优势,弊端,你是如何改进的之类的。
7,BUG调试日志,开发这么个系统,肯定是中途经历了不少的错误和修改,你把这个过程写一点。
8,记录下你对于这个系统从设计到开发的经验,总结。
这么下来,怎么着也得1万字吧,要是再把参考的资料加上,恐怕能打印一小本了。
热心网友 时间:2022-04-29 19:42
SQL
Server2000是RM-Ralation
Model数据库,是集合的操作方式,即操作的对象和结果都是集合。数据存储的逻辑结构是二维表,即数据是以表的形式存在的。
数据库是一个存储数据的大仓库,它不但包括数据,还包括数据间的各种关系,以及各种操作。
要用数据库,我们首先要创建一个数据库,让后往里面放东西(数据库文件和事物日志文件等),数据库里的东西不是一成不变的,这就要求对数据库进行管理,比如数据的结构、文件和文件组修改、数据库的删除等,对这些操作可使用两种方式:利用企业管理器和用T-SQL语言。
数据是以表的形式存在的数据库中,表其实就是一种关系,处理数据往往就是对表的一些操作,包括对表的增删改查。在数据库操作中,有很多时候不是对某一个表进行数据库操作,通常还会把其他表的字段的值也传递过来。不过这连个表不是没有关系的,通常通过索引或者健关联起来,通过查询语句,我们得到一个结果集,因为关系型数据中是以集合的形式对数据进行处理,当对单条记录进行操作时就不太方便了,这时就用到了游标,它包含一个结果集和一个指针,可以从包含多个数据记录的结果集中每次提取一条记录进行操作。当用户只需要从表中提取部分内容时,可以通过创建视图,视图也是一个类似于表的对象,但它与表有着本质的区别:视图是在引用存储在数据库中的查询语句时动态创建的,是从一个或多个数据表中派生出来的虚拟表,视图本身不存储数据。
查询是数据库中最常见的操作,使用索引可以大大提高数据库的检索速度,使用索引不仅可以检索出一个表中的记录,还可以通过约束字段,检索出相关联表中需要的记录。
在数据库管理系统中,维护数据完整性是非常重要的,数据库中通过事务机制、创建约束、缺省值和规则及使用触发器等来实现,触发器是一种特殊的存储过程,但它是当用户修改表中的数据时自动执行的,而存储过程须通过调用机制,这样当对一个表进行某种操作时,便可以同时对级联的表做相关操作,保证数据同步更改,实现数据的完整性。
对数据库的安全性管理是非常重要的,首先,要备份。为避免意外事故发生造成数据库破坏,就需要对数据库进行备份,备份分为静态备份和动态备份,以及四种备份方式,权衡备份所占空间和时间选择不同的备份策略。再一个,就是对数据库的访问权限进行设置,这里设置的对象包括两种,登陆对象和数据库用户对象,或者说是面向应用程序的用户和管理数据库服务器的成员。