分享
 
 
 

查询分析器创建数据库

王朝百科·作者佚名  2011-05-03
窄屏简体版  字體: |||超大  

如下:

单击工具栏的“新建查询(N)”,启动查询分析器。

管理工作室的新建数据库GUI

(2)利用查询分析器,可以直接使用语句创建数据库、数据表和视图等。其具体方法如下:

◆在查询分析器中,直接输入SQL语句;

◆单击语句语法分析按钮“√”,检查分析SQL语句是否正确;

◆单击执行按钮“!执行(X)”,运行查询分析器中的语句序列。

创建数据库的语句格式:

CREATE DATABASE <数据库名>

[ON

( NAME = <数据表名>,

FILENAME = <盘符路径数据库存储名称>)

[LOG ON

( NAME = <日志文件名>,

FILENAME = <盘符路径日志文件存储名称>)]]

创建数据库Student的语句:

CREATE DATABASE Student

ON

( NAME = 'Student_dat',

FILENAME = 'D:dataStudent_dat.mdf')

LOG ON

( NAME = 'Student_Log',

FILENAME = 'D:dataStudent_Log.ldf ') 或者

CREATE DATABASE Student

ON

( NAME = 'Student_dat',

FILENAME = 'D:dataStudent_dat.mdf') 或者

CREATE DATABASE Student

在默认存储设备的默认路径上,创建默认的逻辑数据库名称(Student.MDF)和逻辑日志名称(Student_LOG.LDF)的数据库Student。其默认路径如下:

C:Program FilesMicrosoft SQL ServerMSSQLDataStudent.mdf

C:Program FilesMicrosoft SQL ServerMSSQLDataStudent_log.ldf

注意:上述三个格式中,第一种格式,(C:Program FilesMicrosoft SQL ServerMSSQLData)上创建数据库。

删除数据库的语句格式:

DROP DATABASE <数据库名>[,<数据库名>,…]

例如:建立数据库MyTestStudent,如果该数据库存在,则先删除,然后建立。

IF OBJECT_ID ('MyTestStudent') IS NOT NULL

SELECT OBJECT_NAME(OBJECT_ID('MyTestStudent')) '对象名称',

OBJECT_ID('MyTestStudent') '对象ID'

DROP DATABASE MyTestStudent

GO

CREATE DATABASE MyTestStudent

说明:OBJECT_ID()函数用于返回对象的ID,若存在,则返回值为一个整数,否则为空值(NULL)。OBJECT_NAME()函数用于返回对象的名称,若存在,则返回值为一个名称字符串,否则为空串(“”)。输出对象的Id和名称可以使用如下SELECT语句:

SELECT <表达式>[,…,<表达式>]

创建数据表的语句格式:

CREATE TABLE <数据表名>

(<列名> <数据类型>[ <列级完整性约束条件> ]

[,<列名> <数据类型>[ <列级完整性约束条件>] ] …

[,<表级完整性约束条件> ])

说明:

<数据表名>:所要定义的数据表的名称;

<列名>:组成数据表的各个数据项的名称;

<列级完整性约束条件>:数据项的完整性约束条件;

<表级完整性约束条件>:数据表的完整性约束条件;

<数据类型>:数据项的数据类型。常用的数据类型如表8.1所示。

表8.1 SQL Server 2008常用数据类型

BIT, SMALLINT, INT, BIGINT

整型

MONEY, SMALLMONEY

货币型

FLOAT,REAL

浮点型

DATETIME, SMALLDATETIME

日期时间型

IMAGE

二进制图像型

CHAR(n)

长度为n的字符型

创建数据库Student的相应数据表Student、Course和StudentCourse的语句如下:

CREATE TABLE Student(

SNo CHAR(10) PRIMARY KEY NOT NULL,

SName CHAR(20) NOT NULL,

SSex CHAR(2),

SAge INT) 或者

CREATE TABLE Student(

SNo CHAR(10) PRIMARY KEY NOT NULL,

SName CHAR(20) NOT NULL,

SSex CHAR(2),

SAge INT CHECK (SAge>1 and SAge<100)) 或者

CREATE TABLE Student(

SNo CHAR(10) PRIMARY KEY NOT NULL,

SName CHAR(20) NOT NULL,

SSex CHAR(2),

SAge INT,

CONSTRAINT SAge1_100 CHECK (SAge>1 and SAge<100)) 或者

CREATE TABLE Student(

SNo CHAR(10) NOT NULL,

SName CHAR(20) CONSTRAINT SName_NotNull NOT NULL,

SSex CHAR(2),

SAge INT,

CONSTRAINT SNo_PK PRIMARY KEY(SNo),

CONSTRAINT SName_Unique UNIQUE(sname),

CONSTRAINT SAge1_100 CHECK (sage>1 and sage<100)) 或者

CREATE TABLE Course(

CNo CHAR(10) PRIMARY KEY NOT NULL,

CName CHAR(20) NOT NULL,

CCredit INT) 或者

CREATE TABLE StudentCourse(

SNo CHAR(10) NOT NULL,

CNo CHAR(10) NOT NULL,

Grade FLOAT,

PRIMARY KEY (SNo, CNo),

FOREIGN KEY (SNo) REFERENCES Student(SNo),

FOREIGN KEY (CNo) REFERENCES Course(CNo))

注意:在创建数据表之前,先使用USE语句打开相应的数据库。或者在SQL Server的管理工作室的工具栏的“可用数据库”下拉列表框中,选择相应的数据库。

例如:打开数据库Student的语句为:USE Student

技巧:在创建数据表之前,如果该数据表已经存在,可以先使用OBJECT_ID检测其存在性,若非空,则可以先删除该数据表,然后再建立。具体实现方法如下:

例如:建立一个数据表MyTestStudent,即使该表存在,也可以建立。

-- 测试数据表是否存在,如果若存在,则删除

IF OBJECT_ID ('MyTestStudent') IS NOT NULL

DROP TABLE MyTestStudent

GO

CREATE TABLE MyTestStudent(

SNo CHAR(10) PRIMARY KEY NOT NULL,

SName CHAR(20) NOT NULL,

SSex CHAR(2),

SAge INT)

向数据表添加新数据项的语句格式:

ALTER TABLE <表名>

ADD <新列名> <数据类型> [ 完整性约束 ]

例如:向Student增加“注册时间”列,其数据类型为日期型。

ALTER TABLE Student ADD SEnrollment DATETIME

例如:向Student的SName增加唯一性约束。

ALTER TABLE Student ADD UNIQUE(SName) 或者

ALTER TABLE Student ADD CONSTRAINT Un_SName UNIQUE(SName)

修改数据表的数据项的语句格式:

ALTER TABLE <表名>

ALTER COLUMN <列名> <数据类型>

例如:修改Student的SAge的类型为SMALLINT。

ALTER TABLE Student ALTER COLUMN Sage SMALLINT

删除数据表的数据项的语句格式:

ALTER TABLE <表名>

DROP COLUMN <列名> | CONSTRAINT <约束名称>

例如:删除Student的数据项Senrollment。

ALTER TABLE Student DROP COLUMN Senrollment

删除数据表的数据项约束的语句格式:

ALTER TABLE <表名>

DROP CONSTRAINT <约束名称>

例如:删除Student的SName的唯一性约束。

ALTER TABLE Student DROP CONSTRAINT Un_SName

删除数据表的语句格式:

DROP TABLE <数据表名称>

例如:删除数据表Student。

DROP TABLE Student

删除数据库的语句格式:

DROP DATABASE <数据库名称>

例如:删除数据库Student。

DROP DATABASE Student

注意:在删除数据库之前,先关闭要删除的数据库。方法是使用USE打开另外一个数据库。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有