SQLServer创建用户、数据库、表、约束、存储过程、视图
--创建登录账户和数据库用户
exec sp_addlogin 'sysAdmin',''
exec sp_grantdbaccess 'sysAdmin','aa'
--给数据库用户赋权限
grant select,update,insert,delete on userInfo to aa --建立数据库前的判断
Use master
GO
if exists(select * from sysdatabases where name='bankDB')
drop database bankDB
GO exec xp_cmdshell 'md d:\bank',no_output
go --建立数据库
create database bankDB
on
(
name='bankDB_data',
filename='D:\bank\bankDB.mdf',
size=3,
filegrowth=15%
)
log on
(
name='bankDB_log',
filename='D:\bank\bankDB_log.ldf',
size=3,
filegrowth=15%
)
GO use bankDB
GO --建立银行卡信息 表
if exists(select * from sysobjects where name='cardInfo')
drop table cardInfo
GO create table cardInfo
(
cardID varchar(20) not null,
curType varchar(5) not null,
savingType nvarchar(4) not null,
openDate datetime not null,
openMoney money not null,
balance money not null,
pass varchar(6) not null,
IsReportLoss bit not null, --是否挂失,1表示挂失
customerID int not null
)
go --检查约束
alter table cardInfo
add constraint CK_cardID check(cardID like '1010 3576 [0-9][0-9][0-9][0-9] [0-9][0-9][0-9][0-9]')
--主键约束
alter table cardInfo
add constraint PK_cardID primary key(cardID)
--默认约束
alter table cardInfo
add constraint DF_curType default('RMB') for curType
--创建外键约束
alter table cardInfo
add constraint FK_customerID foreign key(customerID) references userInfo(customerID)
--创建唯一约束
alter table userInfo
add constraint UK_PID unique(cardID) --创建索引
create unique nonclustered index IX_cardID on cardInfo(cardID) with fillfactor=70 --创建视图
create view v_userInfo as
select customerID 客户编号,customerName 开户用户,PID 身份证号,telephone 电话,address 地址 from userInfo
go select * from v_userInfo --创建存储过程
--产生随机号的存储过程
if exists(select * from sysobjects where name='proc_randCardID')
drop proc proc_randCardID
go create proc proc_randCardID
@i varchar(10),
@rand varchar(20) output
as
declare @b varchar(10)
declare @r numeric(15,8)
select @r=rand(datepart(mm,getdate())*100000+datepart(ss,getdate())*1000+datepart(ms,getdate()))
select @b=substring(convert(varchar(30),@r),3,4)+' '+substring(convert(varchar(30),@r),7,4)
set @rand=@i+' '+@b
go --测试获得随机数
declare @result varchar(20)
exec proc_randcardID '1524 2222',@result output
select @result
go
记录常用的一些使用方式,以备需要的时候查看!
SQLServer创建用户、数据库、表、约束、存储过程、视图的更多相关文章
- ABP框架使用Mysql数据库,以及基于SQLServer创建Mysql数据库的架构和数据
ABP默认的数据库是SQLServer,不过ABP框架底层是EF框架,因此也是很容易支持其他类型的数据库的,本篇随笔介绍在ABP框架使用Mysql数据库,以及基于SQLServer创建MySql数据库 ...
- oracle12c创建用户和表空间出现的问题
Oracle12c 中,增加了可插接数据库的概念,即PDB,允许一个数据库容器(CDB)承载多个可插拔数据库(PDB).CDB全称为 ContainerDatabase,中文翻译为数据库容器,PDB全 ...
- iOS:CoreData数据库的使用一(创建单个数据库表)
CoreData数据库框架:mac系统自带的数据库,它是苹果公司对sqlite进行封装而来的,既提供了对数据库的主要操作,也提供了具体的视图关系模型. 需要用到三个对象: 1•Managed Obje ...
- 创建ASP.NET Core MVC应用程序(3)-基于Entity Framework Core(Code First)创建MySQL数据库表
创建ASP.NET Core MVC应用程序(3)-基于Entity Framework Core(Code First)创建MySQL数据库表 创建数据模型类(POCO类) 在Models文件夹下添 ...
- Java创建Oracle数据库表
我们通常只用java执行DML(即:insert, update, delete, select)操作,很少用来执行DDL(create, drop, alert)操作.今天试了下如何用java来创建 ...
- django在admin后台注册自己创建的数据库表
django在admin后台注册自己创建的数据库表,这样我们就可以在admin后台看到表结构信息,我们就可以在admin后台快速录入表记录信息 如果没有注册,那么你在登录django自带的admin的 ...
- Oracle创建用户、表(1)
Oracle创建用户.表(1) 1. 连接 C:\Users\LEI>sqlplus / as sysdba SQL*Plus: Release 12.1.0.2.0 Production on ...
- SQLServer创建用户自定义数据库用户
创建用户自定义数据库用户注意事项 如果已忽略 FOR LOGIN,则新的数据库用户将被映射到同名的SQL Server登录名. 默认架构将是服务器为此数据库用户解析对象名时将搜索的第一个架构. 除非另 ...
- 创建oracle数据库表空间并分配用户
我们在本地的oracle上或者virtualbox的oracle上 创建新的数据库表空间操作:通过system账号来创建并授权/*--创建表空间create tablespace YUJKDATAda ...
- 用sqlplus为oracle创建用户和表空间<转>
用Oracle10g自带的企业管理器或PL/SQL图形化的方法创建表空间和用户以及分配权限是相对比较简单的,本文要介绍的是另一种方法,使用Oracle 9i所带的命令行工具:SQLPLUS来创建表空间 ...
随机推荐
- yii的url写法
Yii 各种url地址写法 echo Url::home(); 生成入口地址/yii2test/frontend/web/index.php: echo Url::base();生成入口文件夹地址: ...
- Intermediate Python for Data Science learning 3 - Customization
Customization from:https://campus.datacamp.com/courses/intermediate-python-for-data-science/matplotl ...
- (mac)阿里云ECS服务器配置过程
-----首先本人是半只脚入门的iOS开发者,弄这个只是单纯想多学点东西. -----阿里云服务器的配置选择:既然是学习用的,最最基础的配置就行了.1M带宽,1核1G...这就不详述了.没啥可选的,( ...
- JavaScript 创建动态表格
JavaScript 创建动态表格 版权声明:未经授权,严禁转载! 案例代码 <div id="data"></div> <script> va ...
- php 设置模式 单元素模式(单例模式或单件模式)
单元素模式: 某些应用程序资源是独占的,因为有且只有一个此类型的资源.应用程序每次包含且仅包含一个对象,那么这个对象就是一个单元素.指的是在应用程序的范围内只对指定的类创建一个实例.通常该模式中包含一 ...
- map set iterator not incrementable 解决办法
例子: #include <iostream> #include <map> using namespace std; int main() { map<int, int ...
- Effective TensorFlow Chapter 4: TensorFlow中的广播Broadcast机制【转】
本文转载自:https://blog.csdn.net/LoseInVain/article/details/78763303 TensorFlow支持广播机制(Broadcast),可以广播元素间操 ...
- 标准IO与文件IO 的区别【转】
本文转载自:http://blog.sina.com.cn/s/blog_63f31f3401013jrn.html 先来了解下什么是标准IO以及文件IO. 标准IO:标准I/O是ANSI C建立的一 ...
- shell编程学习笔记之特殊变量($0、$1、$2、 $?、 $# 、$@、 $*)
特殊变量($0.$1.$2. $?. $# .$@. $*) shell编程中有一些特殊的变量可以使用.这些变量在脚本中可以作为全局变量来使用. 名称 说明 $0 脚本名称 $1-9 脚本执行时的参数 ...
- BZOJ3296: [USACO2011 Open] Learning Languages 并查集
Description 农夫约翰的N(2 <= N<=10,000)头奶牛,编号为1.. N,一共会流利地使用M(1<= M <=30,000)种语言,编号从1 .. M., ...