其实都在使用,突然想应该认真学一学。以下为学习笔记。
2006年1-8日
1.SQL server 2000的工具
.service manager
servicemanger包括以下服务:
。。MSSQLServer
主要是对关系数据的实现,对数据库文件进行管理
。。SQLServerAgent
自动管理和运行 任务,将出错提交管理员
。。MSDTC
用于多个服务器上的数据同步
。。SQLMail 和SQLAgentMail
接收和发布邮件
.Enterprise manager
在运行时最小化那个,可以选择服务器和服 务内容
.Query Analyzer
是一个多文档运行程序,主要执行transact_sql语句并在结果窗口中出现
.DTS--导入/导出数据
.osql.isql
主要用于提示符下的sql命令query
.Profiler
监视 数据库和服务器活动。
.客户端网络实用工具
用不同的协议和数据库通信
2.存储过程的基本操作
(
现开始学习MSSQL2000,这是以前的产品了,虽然一直在使用,有必要重新认识数据库技术(主要是因为asp.net设计上遇到的问题):
以下都是从开始学习后的知识点滴。
怎样将NORTHWINDN导入2005个人版,安好一个2005的客户端工具,然后将Northwind数据库拷贝到2005数据库目录,然后,打开sql server managment studio通过数据库中的attach对数据库进行添加
2006年1月4日
在使用asp.net访问sql2005时,通过向导生成了一个查询的存过程getExpertdata,在程序运行中出现如下错误:
用户aspnet不能访问,用sql server managment studio2005打开数据库,发现有aspnet用户,不过它的缺省不是登陆我所要的数据库,改了缺省值后,还是不能访问,又查了查数据库用户,居然没有aspnet用户,添加后,就能访问了解,看来, sql2005数据库是以数据库所定义用户为先,就算系统有这个用户也不能对某个数据库进行使用.
)
(1月11日,用asp.net访问sqlserver 2005时,出现问题的解决.
常规网络错误。请检查您的网络文档。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.Data.SqlClient.SqlException: 常规网络错误。请检查您的网络文档。
源错误:
|
这个问题是在将ASPNE用户的server role设置为sysadmin后出现的.结果在将桌面的客户端数据库连接进行了关闭后,程序就能访问了.虽叫咱的是桌面版,只能一个用户使用呀.是不是只能一个用户问我的程序呀,这样就太不好了.
另一问题是
EXECUTE permission denied on object 'GetExpertData', database 'EXPERT', schema 'dbo'.
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.Data.SqlClient.SqlException: EXECUTE permission denied on object 'GetExpertData', database 'EXPERT', schema 'dbo'.
源错误:
|
这是将aspnet用户直接设置到数据库后,没有存储过程使用权造成了.怎样修改呢,难道还是在系统中将aspnet用户改为sysadmin吗?最后还是只好这样,不清楚为啥要这样.
关于建表的问题.
由于在建表时,字段,表常常和数据库的保留字相同,要用[ ],这给sql语句带来麻烦,所以常常是以每个表和每个字段都打上[ ],例:
-- 需要生成数据库的结构SQL语句
-- 请保证每个SQL 之后有个 GO
--
/****** Object: Table [dbo].[App] Script Date: 2003-6-26 20:25:27 ******/
CREATE TABLE [dbo].[App] (
[AppID] [uniqueidentifier] NOT NULL ,
[AppName] [nvarchar] (20) NOT NULL ,
[Description] [nvarchar] (127) NULL
) ON [PRIMARY]
GO
uniqueidentifier就是unique字段具有唯一性.
如果有多个表要创建,请先将表全部创建完后,再修改各个表的主键,