发表于:2006年10月13日 13时25分33秒本文链接:http://user.qzone.qq.com/183481361/blog/14
数据库编程1
--create database
use master
if exists(select name from sysdatabases where name = 'test')
drop database test
go
create database test
on
(name='test_data',
filename='D:\Program Files\Microsoft SQL Server\MSSQL\Data\test_data.mdf',
size=1,
filegrowth=5)
log on
(name='test_log',
filename='D:\Program Files\Microsoft SQL Server\MSSQL\Data\test_log.ldf',
size=1,
filegrowth=5)
go
use test
go
select * from sysfiles1
go
--create table
use test
go
if exists (select name from sysobjects where name='t_test2')
drop table t_test2
go
if exists(select name from sysobjects where name='t_test1')
drop table t_test1
go
--on [update|delete] [cascade|no action]判断相关联的表中,父表中更新或删除是否相应的改变或不动
--FOREIGN KEY...REFERENCES
--是为列中数据提供引用完整性的约束。FOREIGN KEY 约束要求列中的每个值在被引用表的指定列中都存在
create table t_test1
(col1 int identity(1,1) constraint pk_col1 primary key clustered,
col2 varchar(20) not null default 'morle',
col3 varchar(20) check(len(col3)>5),
col4 varchar(10) constraint ck_col4 check(col4 LIKE '[0-9][0-9][0-9][0-9][0-9][0-9][0-9]')
)
go
create table t_test2
(col1 int identity(100,1),
col2 int not null constraint Fk_col2 foreign key (col2) references t_test1(col1) on update cascade on delete cascade,
col3 varchar(50),
constraint pk_col1_col2 primary key(col1,col2)
)
go
insert into t_test1(col3,col4) values('tangjimo1','0000000')
insert into t_test2(col2,col3) values(1,'hello,welcome my friends')
go
select * from t_test1
delete from t_test1
select * from t_test2
go
--修改数据表
--只有列中不包含空值时,ALTER COLUMN 中才可指定 NOT NULL。
--必须将空值更新为非空值后,才允许执行 ALTER COLUMN NOT NULL 语句,
--比如:
-- UPDATE MyTable SET NullCol = N'some_value' WHERE NullCol IS NULL
-- ALTER TABLE MyTable ALTER COLUMN NullCOl NVARCHAR(20) NOT NULL
------------------------with check|nocheck------------------------
--WITH CHECK 和 WITH NOCHECK 子句不能用于 PRIMARY KEY 和 UNIQUE 约束
--{ CHECK | NOCHECK} CONSTRAINT
--指定启用或禁用 constraint_name。如果禁用,将来插入或更新该列时将不用该约束条件进行验证。
--此选项只能与 FOREIGN KEY 和 CHECK 约束一起使用。
--ALL
--指定使用 NOCHECK 选项禁用所有约束,或者使用 CHECK 选项启用所有约束。
------------------------not for replication-----------------------
--NOT FOR REPLICATION
--指定当复制登录(如 sqlrepl)向表中插入数据时,不强制 IDENTITY 属性。也可对约束指定 NOT FOR REPLICATION。
--当复制登录向表中插入数据时,不检查约束条件。
alter table t_test2 with nocheck add
constraint pk_col1_col2 primary key clustered
(
col1,col2
)
go
alter table t_test2 add
constraint fk_col2 foreign key
(
col2
)references t_test1(
col1
)on delete cascade onupdate cascade
go
--create view
--创建视图 视图表存在information_schema.views中
if exists(select table_name from information_schema.views where table_name='view1')
drop view view1
go
create view view1(a,b,c,d,e) with encryption
as
select col1,col2,col3,col4,@@ROWCOUNT from t_test1
go
update view1 set c='tangjimo31' where a=7
select * from view1
select * from t_test1
--create the tables and insert the values
CREATE TABLE SUPPLY1 (
supplyID INT PRIMARY KEY CHECK (supplyID BETWEEN 1 and 150),
supplier CHAR(50)
)
CREATE TABLE SUPPLY2 (
supplyID INT PRIMARY KEY CHECK (supplyID BETWEEN 151 and 300),
supplier CHAR(50)
)
CREATE TABLE SUPPLY3 (
supplyID INT PRIMARY KEY CHECK (supplyID BETWEEN 301 and 450),
supplier CHAR(50)
)
CREATE TABLE SUPPLY4 (
supplyID INT PRIMARY KEY CHECK (supplyID BETWEEN 451 and 600),
supplier CHAR(50)
)
go
INSERT SUPPLY1 VALUES ('1', 'CaliforniaCorp')
INSERT SUPPLY1 VALUES ('5', 'BraziliaLtd')
INSERT SUPPLY2 VALUES ('231', 'FarEast')
INSERT SUPPLY2 VALUES ('280', 'NZ')
INSERT SUPPLY3 VALUES ('321', 'EuroGroup')
INSERT SUPPLY3 VALUES ('442', 'UKArchip')
INSERT SUPPLY4 VALUES ('475', 'India')
INSERT SUPPLY4 VALUES ('521', 'Afrique')
go
--create the view that combines all supplier tables
CREATE VIEW all_supplier_view
AS
SELECT *
FROM SUPPLY1
UNION ALL
SELECT *
FROM SUPPLY2
UNION ALL
SELECT *
FROM SUPPLY3
UNION ALL
SELECT *
FROM SUPPLY4
go
select * from all_supplier_view
go
use master
go
if exists(select * from sysdatabases where name = 'test')
drop database test
go
create database test
on
(name= 'test_dat',
filename ='d:\morle\data\test_dat.mdf',
size = 2,
filegrowth=10%)
log on
(name= 'test_log',
filename='d:\morle\data\test_log.ldf',
size=2,
filegrowth=10%)
go
分享到:
相关推荐
《PHP程序设计案例教程 第2版》课件—12PHP+MYSQL数据库编程1.pdf《PHP程序设计案例教程 第2版》课件—12PHP+MYSQL数据库编程1.pdf《PHP程序设计案例教程 第2版》课件—12PHP+MYSQL数据库编程1.pdf《PHP程序设计案例...
我从网上找到的,我做成了CHM文档,供大家阅读方便。 数据库技术初步 ... 在Visual C++中用ADO进行数据库编程1 在Visual C++中用ADO进行数据库编程2 在Visual C++中用ADO进行数据库编程3
数据库编程数据库编程数据库编程载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
java编程JDBC数据库编程1数据库基础.docx
实验四数据库编程 1、实验目的: (1)掌握基本的DBMS的使用 (2)理解JDBC的概念 (3)运用JDBC-ODBC桥开发数据库系统 2、基本要求: (1)注意自始至终贯彻课程中所绍程序设计风格,养成良好的编程习惯。 (2)独立完成所布置...
ADO数据库编程ADO数据库编程ADO数据库编程ADO数据库编程
c#操作access数据库编程1.doc
c#操作access数据库编程1.pdf
《python核心编程》第二十一章:数据库编程1
数据库原理及应用( Access2003) 第9章 VBA数据库编程 第9章 VBA数据库编程 9.1 数据库引擎及其接口 9.2 数据访问对象 9.2.1 DAO模型结构 9.2.2 主要的DAO对象 9.2.3 利用DAO访问数据库 9.3 ActiveX数据对象 9.3.1 ...
VB数据库编程 详细介绍了VB数据库编程的方方面面 VB数据库编程 详细介绍了VB数据库编程的方方面面 VB数据库编程 详细介绍了VB数据库编程的方方面面
VC数据库编程实例-ORACLE数据库VC数据库编程实例
java数据库编程java数据库编程java数据库编程java数据库编程java数据库编程java数据库编程java数据库编程java数据库编程java数据库编程
编程之道ASP数据库编程入门
第11章 网络、多媒体和数据库编程Java程序设计第11章 网络、多媒体和数据库编程• 11.1 网络编程• 11.2 多媒体编程• 11.3 数据库编程11.
第8章 数据库编程这三种方式中最简单也最常用的是ODBC,因此本章先来重点介绍MFC的ODBC编程方法和技巧,然后介绍基于OLE DB的ADO(ActiveX
DELPHI数据库编程实例DELPHI数据库编程实例DELPHI数据库编程实例DELPHI数据库编程实例
介绍如何使用vc操作数据库 第1章 数据库原理与访问 第2章 COM与数据库访问 第3篇 高级话题 第4章 VC++数据库开发基础 第5章 ODBC API编程 第6章 MFC ODBC编程 第7章 DAO数据库编程 第8章 ...
针对数据库编程始终是程序设计语言的一个重要方面的内容,也是一个难点。数据库编程的内容十分丰富,但最为基本编程的也就是那么几点,譬如:连接数据库、得到需要的数据和针对数据记录的浏览、删除、修改、插入等...