数据库基础-sql_(一)

来源:互联网 发布:淘宝客服英文怎么说 编辑:程序博客网 时间:2024/05/21 12:40

--第一章上机


--创建BBS数据库
create database 库名
on primary//建数据库文件
(
name库名_mdf,
filename='路径',
size=初始大小,
maxsize=unlimited-表示无限制增长,
filegrowth=15%-按百分比来比较
)
log on建事务日志文件
(
name=BBS_ldf,
filename='d:\BBSdatabase\BBS.ldf',
size=3mb,
maxsize=30mb,
filegrowth=5%
)
--删除数据库
drop database 库名


--第二章上机

--创建表的结构

use 库名
create table 新建表名
(
列名 int identity(1,1) not null primary key,   --标识列、自动增长
列名 varchar (16) not null default('888888'),  --不为空、默认值
列名 datetime,                                 --日期用datetime表示
列名 varchar(13) not null unique check (len(列名)=15 or len(列名)=18),
列名 varchar(50) not null check(列名 Like '表达式' or len(列名)=11)
列名 varchar(20) not null foreign key references 引用主键表(对应的列名)
)
--创建已有的表的约束
Alter table 存在的表名
    Add constraint 约束名称 check(len(UPassword)>=6),
        constraint CK_id check(UEmail like
'%@%')


--建立已有表之间的主外键关系

Alter table 表名
  add constraint 约束名称 foreign key (子表列名) references 主表名称(对应的主表列名),
      constraint FK_TUID foreign key (TUID) references BBSUsers(UID)
      ……

--创建数据库关系图

--点击数据关系图,右键创建新的关系图,按CTRL选择全部的表即可


--向表中插入数据方法一用insert向表中插入

insert into 表名(列名1,列名2,列名3,……)
values('对应列名1的值','对应列名2的值','对应列名3的值',……)


--向表中插入数据方法二用select来插入

insert into 表名(列名 1,列名2,列名3,……)
select '对应列名1的值','对应列名2的值','对应列名3的值',…… union  //插入的第一行数据
select '对应列名2的值','对应列名2的值','对应列名3的值',…… union   //插入的最后一行数据
……                                                         union
select '对应列名N的值','对应列名N的值','对应列名N的值',…… 切记住最后一行没有union

--执行更新
update <需要更新的表名> set <列名=更新值> [where <更新列名的条件>] //可以紧随多个数据列的更新值

--delete删除数据
delete from <表名> [where <删除条件>]

--Truncae Table 删除数据 用来删除所有表中的所有行
Truncate table 表名