1.用图形化方法和CREATE DATABASE语句创建符合如下条件的数据库。 数据库的名字为students,包含的数据文件的逻辑文件名为 students_dat,物理文件名为 students.mdf,存放在D:\Test文件夹中(若D:中无此子文件夹,可先建立此文件夹,然后再创建数据库),初始大小为6MB,自动增长,每次增加1MB。日志文件的逻辑文件名为students_log,物理文件名为students.ldf,也存放在D:\Test文件夹中,初始大小为2MB,自动增长,每次增加10%。
CREATE DATABASE语句: CREATE DATABASE students ON primary (NAME= 'students_dat', FILENAME='D:\test\students_dat.mdf', SIZE=6MB, FILEGROWTH=1MB) LOG ON (NAME= 'students_log', FILENAME='D:\test\students_log.ldf', SIZE=2MB, FILEGROWTH=10%)2.用 CREATE DATABASE语句创建符合如下条件的数据库。 数据库包含两个数据文件和两个日志文件。数据库的名称为:财务信息数据库,该数据库包含两个数据文件和两个日志文件。数据文件1的逻辑文件名为财务数据1,物理文件名为财务数据1.mdf,存放在“D:\财务数据”目录下(若D:中无此文件夹,可先建立此文件夹,然后再创建数据库,初始大小为4MB,自动增长,每次增加IMB;数据文件2的逻辑文件名为财务数据2,物理文件名为财务数据2.ndf,与主要数据文件存放在相同的文件夹中,初始大小为3MB,自动增长,每次增加10%。日志文件1的逻辑文件名为财务日志1,物理文件名为财务日志1.ldf,存放在“D:\财务日志”文件夹中,初始大小为2MB,自动增长,每次增加10%;日志文件2的逻辑文件名为财务日志2,物理文件名为财务日志2ldf,存放在“D:\财务日志”文件夹中,初始大小为2MB,不自动增长。 CREATE DATABASE语句:
CREATE DATABASE 财务信息数据库 ON primary (NAME=财务数据1, FILENAME='D:\财务数据\财务数据1.mdf', SIZE=4MB, FILEGROWTH=1MB), (NAME=财务数据2, FILENAME='D:\财务数据\财务数据2.ndf', SIZE=3MB, FILEGROWTH=10%) LOG ON (NAME=财务日志1, FILENAME='D:\财务日志\财务日志1.ldf', SIZE=2MB, FILEGROWTH=10%), (NAME=财务日志2, FILENAME='D:\财务日志\财务日志2.ldf', SIZE=2MB, FILEGROWTH=0)3.删除新建立的“财务信息数据库”,观察该数据库包含的文件是否一起被删除了。 CREATE DATABASE语句: DROP DATABASE 财务信息数据库 该数据库包含的文件确实被一起删除了 4.分别用图形化方法和 Transact-SQL语句对上机练习中第1题所建立的“students”数据库空间进行如下扩展:增加一个新的数据文件,文件的逻辑名为“students_dat2”,存放在新文件组Group1中,物理文件名为 students2.ndf,存放在“D:\Test”文件夹中,文件的初始大小为2MB,不自动增长。 Transact-SQL语句:
ALTER DATABASE students ADD FILEGROUP Group1 ALTER DATABASE students ADD FILE ( NAME=students_dat2, FILENAME='D:\test\students_dat2.ndf', SIZE=2MB, FILEGROWTH=0 ) TO FILEGROUP Group15.将上机练习中第4题新添加的“students_dat2”文件的初始大小改为6MB。 Transact-SQL语句:
ALTER DATABASE students MODIFY FILE (NAME=students_dat2, SIZE=6MB)6.分别用图形化方法和Transact-sql语句对“students”数据库进行如下操作: 1)缩小“students”数据库空间,使该数据库中的空白空间为50%。 Transact-sql语句
DBCC SHRINKDATABASE(students,50)2)将数据文件“ students dat”的初始大小缩小为4MB。 Transact-sql语句
DBCC SHRINKFILE(students_dat,4)8.假设SQL Server服务已启动,并以Administrator身份登录计算机(文件名称自定);请分别使用Management界面方式和T-SQL语句实现以下操作:
要求在本地磁盘D创建一个学生-课程数据库(名称为student),只有一个数据文件和日志文件,文件名称分别为stu和stu_log,物理名称为stu_data.mdf 和stu_log.ldf,初始大小都为3MB,增长方式分别为10%和1MB,数据文件最大为500MB,日志文件大小不受限制。 CREATE DATABASE student ON primary ( NAME=stu, FILENAME='D:\stu_data.mdf', SIZE=3MB, MAXSIZE=500MB, FILEGROWTH=10% ) LOG ON ( NAME=stu_log, FILENAME='D:\stu_log.ldf', SIZE=3MB, FILEGROWTH=1MB ) 创建一个Company数据库,该数据库的主数据文件逻辑名称为Company_data,物理文件为Company.mdf,初始大小为10MB,最大尺寸为无限大,增长速度为10%;数据库的日志文件逻辑名称为Company_log,物理文件名为Company.ldf,初始大小为1MB,最大尺寸为50MB,增长速度为1MB。 CREATE DATABASE Company ON primary (NAME=Company_data, FILENAME='D:\Company.mdf', SIZE=10MB, FILEGROWTH=10%) LOG ON (NAME=Company_log, FILENAME='D:\Company.ldf', SIZE=1MB, MAXSIZE=50MB, FILEGROWTH=1MB) 创建数据库DB,具有2个数据文件,文件逻辑名分别为DB_data1和DB_data2,文件初始大小均为5MB,最大为100MB,按10%增长;只有一个日志文件,初始大小为3MB,按10%增长;所有文件都存储在D盘文件夹ceshi中。 CREATE DATABASE DB ON primary ( NAME=DB_data1, FILENAME='D:\ceshi\DB_data1.mdf', SIZE=5MB, MAXSIZE=100MB, FILEGROWTH=10% ), ( NAME=DB_data2, FILENAME='D:\ceshi\DB_data2.mdf', SIZE=5MB, MAXSIZE=100MB, FILEGROWTH=10% ) LOG ON ( NAME=DB_log, FILENAME='D:\ceshi\DB_log.ldf', SIZE=3MB, FILEGROWTH=10% ) 在数据库student中增加数据文件db2,初始大小为10MB,最大大小为50 MB,按10%增长; ALTER DATABASE student ADD FILE ( NAME=db2, FILENAME='D:\test\db2.ndf', SIZE=10MB, MAXSIZE=50MB, FILEGROWTH=10% ) 在数据库student中添加日志文件,保存在D盘中,初始大小为1MB,最大无限制,增长方式按照1MB增长; ALTER DATABASE student ADD LOG FILE ( NAME=db_log, FILENAME='D:\db_log.ldf', SIZE=1MB, FILEGROWTH=1MB) 6) 修改数据库student主数据文件的大小,将主数据文件的初始大小修改为10Mb,增长方式为20%; ALTER DATABASE student MODIFY FILE (NAME=stu, SIZE=10MB) ALTER DATABASE student MODIFY FILE (NAME=stu, FILEGROWTH=20%) 修改数据库student辅助数据文件初始大小为3MB,最大为100MB,按照10%增长,名称为db; ALTER DATABASE student MODIFY FILE (NAME=db, SIZE=3MB, MAXSIZE=100MB, FILEGROWTH=10%) 删除数据库student辅助数据文件和第二个日志文件; ALTER DATABASE student REMOVE FILE db ALTER DATABASE student REMOVE FILE db_log 删除数据库company和DB。 DROP DATABASE company,DB9.定义一个int的整形变量,并分别给其赋值67、123067。
declare @m int=67 print @m declare @m int=123067 print @m10.定义一个长度为11的可变长形字符变量,并分别给其赋值“Hello World!”和“How are you?”。
declare @z varchar(11) set @z='Hello World!' declare @z varchar(11) set @z='How are you?'11.分别将字符串“WELCOME”和“student”转换成小写、大写字母。
select LOWER ('WELCOME') select UPPER ('student')12.使用RTRIM和LTRIM函数分别去掉字符串“ 信电分院 ”右边和左边的空格,再与“学生选课”连接起来。
select rtrim (' 信电分院 ') select ltrim (' 信电分院 ') select STUFF (' 信电分院 ',6,2,'学生选课')13.使用SUBSTRING将字符串“ABCDEFG”中的“CDE”显示出来。
select SUBSTRING ('ABCDEFG',3,3)14.使用GETDATE( )函数返回系统当前日期
select GETDATE ()15.使用DAY( )函数提取当前日期的日期部分的整数。
select DAY (GETDATE())16.使用T-SQL流程控制语句求两个数的最大公约数和最小公倍数。
DECLARE @a int,@b int,@c int,@d int,@x int set @c=50 set @d=2 set @a=@c set @b=@d if @a<@b begin set @x=@b set @b=@a set @a=@x end while @b!=0 begin set @x=@a%@b set @a=@b set @b=@x end select @a select @c*@d/@a17.使用T-SQL流程控制语句求斐波那契数列中小于100的所有数。
DECLARE @Q int DECLARE @W int DECLARE @E int DECLARE @R varchar(2000) set @Q =1 set @W =1 set @R=cast(@Q as varchar(10))+','+cast(@W as varchar(10)) while (@W<100) begin set @E=@W set @W=@W+@Q set @Q=@E if(@W<100) set @R=@R+','+cast(@W as varchar (10)) end print @R