首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

AdventureWorks学习数据库建模——国际化

语言 AdventureWorks数据模型中,只有对ProductDescription进行了多语言设置。...我曾经写了一篇文章,详细介绍了多语言建模的几种方法,可以参考:http://www.cnblogs.com/studyzy/archive/2013/04/03/2998322.html 回过头来看看AdventureWorks...回过头来看AdventureWorks数据库模型,他对数据类型的使用都很准确,不存在乱用varchar类型的问题。 币种和汇率  如果在某个表单中涉及到多个币种问题,那么必须将币种属性添加到表单中。...我们再来看看AdventureWorks系统的模型: SalesOrder在录入时就已知了LocalCurrency和CurrencyRateDate(一般也就是OrderDate),而我们的本位币是固定的...AdventureWorks的模型中,只是使用UnitMeasure表存储了系统中用到的度量衡的单位名称,并没有涉及到度量衡的转换问题。假如我们要啃度量衡这块硬骨头,那我们的数据库模型该怎么设计呢?

74420

AdventureWorks学习数据库建模——保留历史数据

AdventureWorks数据库中,我们可以看到大量的这种记录关系历史的设计。比如: 员工、部门、轮班的历史记录: 这就是前面提到的一对多关系因为记录历史变为多对多关系的例子。...AdventureWorks数据库中使用了NULL值设为“结束时间”来表明这条数据是当前有效的,但是笔者并不推荐这么做,最好是把两个字段都设置为NOT NULL,在比较时可以得到统一的查询语句: where...我在AdventureWorks数据库中并没有看到关于实体的历史记录的设计,不过我们可以看SharePoint的数据库设计,就是采用我这里提到的版本设计的方法。...在AdventureWorks数据库中有一个TransactionHistory表,用于记录各个订单事务的,虽然不是记录订单变更的,但是也有和变更历史记录类似的结构。...在AdventureWorks只对TransactionHistory就建立了对应的归档表。

54710

SQL Server 2008正式发布了,示例数据库安装

SQL2008的示例数据库仍然是AdventureWorks的数据,和SQL2005是大部分是相同的,不过加了SQL2008的新特性,为了区分,所以数据库名字叫做AdventureWorks2008了。...下载了3个示例数据库: SQL2008.AdventureWorks_OLTP_DB_v2008.zip SQL2008.AdventureWorks_DW_BI_v2008.zip SQL2008.AdventureWorks_LT_DB_v2008....zip AdventureWorks2008中使用了SQL2008的新特性FILESTREAM,所以必须要启用该特性才能够还原数据库成功。...(2)在配置管理器中将SQL Server服务的FILESTREAM打开,如图: (3)重启SQL Server服务,然后再还原AdventureWorks2008数据库即可。...AdventureWorks2008与SQL2005的AdventureWorks数据库有以下特性上的不同: 1.为了使用Entity Framework,所以添加了Person.BusinessEntityAddress

87830

存储过程和用户自定义函数

一:存储过程的简单创建,修改与删除 1.创建简单的存储过程 use AdventureWorks go create proc spEmployee as select * from HumanResources.Employee...from HumanResources.Employee 3.删除存储过程 drop proc dbo.spEmployee 二:存储过程的输入参数和输出参数 1.有输入参数的存储过程 use AdventureWorks...HumanResources.Employee 查看该存储过程的结果可以用 exec spEmployee '123' 或直接exec spEmployee 存储过程的重载... 2.有输出参数的存储过程 use AdventureWorks...Accounting select * from orders where dbo.DayOnly(date1) = dbo.DayOnly(getdate()) 2.返回表的用户定义函数 先看例子 use AdventureWorks...returns table as return (select * from Person.Contact where LastName like @LastName+'%') 执行这个例子 use AdventureWorks

38020

触发器

其中inserted表是一个临时表 存储的是将要插入的信息 这个触发器的目的是检查将要插入的信息是否符合规定 (在product表里没有特殊的记录) 这个例子是check约束所不能解决的了的 use AdventureWorks...rollback tran     end 为了验证这个触发器 先给表加入一条不符合条件的记录 use AdventureWorks go update Production.Product set...三:针对触发器的操作 1.禁用触发器 use AdventureWorks go alter table Sales.SalesOrderDetail disable trigger all  --这里的...all可以是具体的触发器名 2.删除触发器 use AdventureWorks go drop trigger orderDetailNotDiscontinued 3.修改触发器 use xland...if update(title) begin     print('title1') end (这里的update()函数不懂没关系,下面会说到) 四:使用触发器记录操作情况 先看代码 use AdventureWorks

1.3K20

SQL Server 备份的备份类型探究

◆ 创建完整的 SQL Server 数据库备份到一个磁盘文件 ◆ T-SQL 这将创建 AdventureWorks 数据库的完整备份并将备份内容写入文件“C:\AdventureWorks.BAK”...BACKUP DATABASE AdventureWorks TO DISK = 'C:\AdventureWorks.BAK' GO ◆ SQL Server Management Studio 右键单击数据库名称...◆ 创建 SQL Server 事务日志备份到一个磁盘文件 ◆ T-SQL 这将创建 AdventureWorks 数据库的事务日志备份并将备份内容写入文件“C:\AdventureWorks.TRN”...BACKUP LOG AdventureWorks TO DISK = 'C:\AdventureWorks.TRN' GO ◆ SQL Server Management Studio 右键单击数据库名称...将 SQL Server 差异备份创建到一个磁盘文件 ◆ T-SQL BACKUP DATABASE AdventureWorks TO DISK = 'C:\AdventureWorks.DIF' WITH

1.3K40

使用数据库引擎优化Tuning Advistor和dta

打开该程序后输入正确的用户名密码就可以登录数据库.这里的优化是针对具体SQL语句的优化,所以要准备一个要优化的查询语句比如: USE AdventureWorks ; SELECT * FROM Production.Product...把以上语句保存为一个文件,在Tuning Advistor中输入会话名称:TestIt,然后选择"工作负荷"中的"文件",并指定刚才保存的这个文件,当然下面就是要选针对的数据库了,我们用的是测试数据库AdventureWorks...,下面还有"要优化的数据库和表"好像官方说这下面和上面只要选了一个就可以了,不过似乎不行,我们还是把这儿的AdventureWorks 也选上吧.接下来就是配置"优化选项"了,这里面的一般就用默认值....其他没有什么好说的唯一要提的就是如果不是默认端口,那么我们的连接字符串应该这样写,而且必须用双引号引起来.如下: dta -S "tcp:157.60.15.215,12345" -U sa -P 123456 -D AdventureWorks

23710
领券