创建数据库和表的SQL语句

Posted BrokenIce

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了创建数据库和表的SQL语句相关的知识,希望对你有一定的参考价值。

 创建数据库的SQL语句:

复制代码
 1 create database stuDB 
2 on primary -- 默认就属于primary文件组,可省略
3 (
4 /*--数据文件的具体描述--*/
5 name=\'stuDB_data\', -- 主数据文件的逻辑名称
6 filename=\'D:\\stuDB_data.mdf\', -- 主数据文件的物理名称
7 size=5mb, --主数据文件的初始大小
8 maxsize=100mb, -- 主数据文件增长的最大值
9 filegrowth=15%--主数据文件的增长率
10 )
11 log on
12 (
13 /*--日志文件的具体描述,各参数含义同上--*/
14 name=\'stuDB_log\',
15 filename=\'D:\\stuDB_log.ldf\',
16 size=2mb,
17 filegrowth=1mb
18 )
复制代码

 那么如何删除这个数据库呢,SQL Server将数据库的清单存放在master系统数据库的sysdatabases表中,只需要查看该表是否存在于该数据库中就可以

了,语句如下:

use master -- 设置当前数据库为master,以便访问sysdatabases表
go
if exists(select * from sysdatabases where name=\'stuDB\')
drop database stuDB
go

  创建表和删除表的SQL语句如下:

复制代码
use StuDB
go
if exists(select * from sysobjects where name=\'stuMarks\')
drop table stuMarks
create table stuMarks
(
ExamNo int identity(1,1) primary key,
stuNo char(6) not null,
writtenExam int not null,
LabExam int not null
)
go

-- 其中,列属性"identity(起始值,递增量)" 表示"ExamNo"列为自动编号, 也称为标识列
alter table 表名
add constraint 约束名 约束类型 具体的约束说明
alter table 表名
drop constraint 约束名
alter table stuMarks
add constraint UQ_stuNo Unique(stuNo)
alter table stuMarks
drop constraint UQ_stuNo
/*--添加SQL登录账户--*/
exec sp_addlogin \'xie\', \'123456\'  -- 账户名为xie,密码为123456
--删除xie账户名
exec sp_droplogin \'xie\'
/*--在stuDB数据库中添加两个用户(必须存在)--*/
use stuDB
go
  exec sp_grantdbaccess \'xie\',\'123456\'
go
-- 提示:SQL Server 中的dbo用户是具有在数据库中执行所有活动权限的用户,表示数据库的所有者(owner),一般来说,
-- 如果创建了某个数据库,就是该数据库的所有者,即dbo用户,dbo用户是一个比较特殊的数据库用户,无法删除,且此用
-- 户始终出现在每个数据库中
/* --给数据库用户授权-- */
-- 授权的语法如下
-- grant 权限 [on 表名] to 数据库用户
use stuDB
go
  grant select,update,insert on stuMarks to xie
  grant create table to xie
go

 

 

以上是关于创建数据库和表的SQL语句的主要内容,如果未能解决你的问题,请参考以下文章

ACCESS里如何用SQL语句创建数据库和表

java编写创建数据库和表的程序

SQL知识点详细总结(附操作图解)

SQL知识点详细总结(附操作图解)

数据库实验1---创建数据库和表

SQL Server复制表结构和表数据生成新表的语句