本文最重要的是使用了函数PARSENAME,关于PARSENAME函数的详细介绍请参考:http://msdn.microsoft.com/zh-cn/express/ms188006.aspx
一、创建测试表并添加测试数据:
- CREATE TABLE [WorkStation] ( [IPAddress] VARCHAR(15) )
- INSERT INTO [WorkStation] ( [IPAddress] ) VALUES ('255.255.0.0')
- INSERT INTO [WorkStation] ( [IPAddress] ) VALUES ('98.123.251.21')
- INSERT INTO [WorkStation] ( [IPAddress] ) VALUES ('192.120.40.243')
- INSERT INTO [WorkStation] ( [IPAddress] ) VALUES ('207.46.199.60')
- INSERT INTO [WorkStation] ( [IPAddress] ) VALUES ('10.0.0.1')
- INSERT INTO [WorkStation] ( [IPAddress] ) VALUES ('68.142.197.0')
- INSERT INTO [WorkStation] ( [IPAddress] ) VALUES ('255.255.255.255')
- INSERT INTO [WorkStation] ( [IPAddress] ) VALUES ('65.54.152.142')
- INSERT INTO [WorkStation] ( [IPAddress] ) VALUES ('64.233.188.15')
- INSERT INTO [WorkStation] ( [IPAddress] ) VALUES ('65.97.176.172')
随着SQL Server 2008的出现,现在你可以使用MERGE SQL命令在一个语句中执行这些操作。这个新的命令类似于Oracle的UPSERT命令(融合了单词UPDAT和INSERT);它插入原先不存在的行并更新已经存在的行。随着MERGE SQL命令的引进,开发人员可以更加有效地处理数据仓库情况,例如检查某一行是否存在,然后执行一个插入或者更新或者删除。
基本上,MERGE语句根据你指定的情况和来自源表的数据是否已经在目标表中存在把来自一个元结果集的数据合并到一个目标表中。新的SQL命令结合单个元语句中有条件的INSERT,UPDATE和DELETE命令的次序,这取决于一条记录是否存在。这个新的MERGE SQL命令类似于下面:
MERGE [AS TARGET]
USING [AS SOURCE]
ON
[WHEN MATCHED
THEN ]
[WHEN NOT MATCHED [BY TARGET]
THEN ]
[WHEN NOT MATCHED BY SOURCE
THEN ];
数据库表
一个数据库通常包含一个或多个表。每个表由一个名字标识(例如“客户”或者“订单”)。表包含带有数据的记录(行)。
下面的例子是一个名为 "Persons" 的表:
Id LastName FirstName Address City
1 Adams John Oxford Street London
2 Bush George Fifth Avenue New York
3 Carter Thomas Changan Street Beijing
上面的表包含三条记录(每一条对应一个人)和五个列(Id、姓、名、地址和城市)。
SQL 语句
您需要在数据库上执行的大部分工作都由 SQL 语句完成。
列出的部分是Mssql语句,不可以在access中使用。
SQL分类:
DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE)
DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT)
DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK)
首先,简要介绍基础语句:
1、说明:创建数据库
CREATE DATABASE database-name
2、说明:删除数据库
drop database dbname
3、说明:备份sql server
--- 创建 备份数据的 device
USE master
EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat'
--- 开始 备份
BACKUP DATABASE pubs TO testBack
4、说明:创建新表
create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)
根据已有的表创建新表:
A:create table tab_new like tab_old (使用旧表创建新表)
B:create table tab_new as select col1,col2… from tab_old definition only
导读-- 北京市公路局系统使用的是Oracle 7.3关系数据库,即RDBMS。由于我们对整个工程用了面向对象的软件工程(OOSE)开发方法学,所以数据库设计也是面向对象的。
北京市公路局系统使用的是Oracle 7.3关系数据库,即RDBMS。由于我们对整个工程用了面向对象的软件工程(OOSE)开发方法学,所以数据库设计也是面向对象的。
一、概念的区分
有些人把面向对象的数据库设计(即数据库模式)思想与面向对象数据库管理系统(OODBMS)理论混为一谈。其实前者是数据库用户定义数据库模式的思路,后者是数据库管理程序的思路。用户使用面向对象方法学可以定义任何一种DBMS数据库,即网络型、层次型、关系型、面向对象型均可,甚至文件系统设计也照样可以遵循面向对象的思路。 面向对象的思路或称规范可以用于系统分析、系统设计、程序设计,也可以用于数据 结构设计、数据库设计。OOSE自上至下、自始至终地贯彻面向对象思路,是一个一气呵成 的统一体。面向对象的数据库设计只是 OOSE 的一个环节。
文章写的很给力
搜索东西的时候无意来到了这,我刚刚也在写博客,交流下!
博主 Happy New year .
Very GOOD ,Happy New year .
谢谢,有收获,写的不错啊,不错啊
你好!!!!!
踩踩啊~~~~~~~~~~~
,zui 喜欢麦兜了
确实很强大,不错啊。