本章主要讲如何使用脚本创建数据库;如何使用脚本创建表;如何删除对象和修改对象.

CREATE 语句:CREATE <object type> <onject name>

创建数据库基本语法:CREATE DATABASE <database name> ON [PARIMARY] ( [NAME=<'logical file name'>,][FILENAME='<file name>',][SIZE=<size in kilobytes,megabytes,gigabytes,or terabayes>,][MAXSIZE=<size in kilobytes,megabytes,gigabytes,or terabayes>,][FILEGROWTH=<size in kilobytes,megabytes,gigabytes,or terabayes>])

LOG ON ( [NAME=<'logical file name'>,][FILENAME='<file name>',][SIZE=<size in kilobytes,megabytes,gigabytes,or terabayes>,][MAXSIZE=<size in kilobytes,megabytes,gigabytes,or terabayes>,][FILEGROWTH=<size in kilobytes,megabytes,gigabytes,or terabayes>])

[CONTAINMENT=OFF|PARTIAL][COLLATE<collation name>][FOR ATTACH[WITH <service broker>][FOR ATTACH_REBUILD_LOG|WITH DB_CHAINING ON|OFF|TRUSTWORTHY ON| OFF]] [AS SNAPSHOT OF< source dateabase name>][;]/*红色部分数据是可选SQLSERVER支持的数据后面不做介绍*/

在一一分析创建语法:

ON主要用于2个方面一个是定义存储数据库和日记文件位置。还可以看到primary-这意味着物理上存储数的主文件组。也可以将数据存储到所谓的附属文件组里这里超出所写范围了。

NAME 定义文件的逻辑名称-即sql内部该引用名称.

FILENAME 定义文件组的在实际的操作系统的磁盘上物理路径,本章建议数据文件mdf结尾。日记ldf结尾,附属文件ndf结果。

SIZE 数据库初始值大小,可以KB,MB,GB,TB。

MAXSIZE 数据库最大大小。比SIZE要大

FILEGROWTH 数据库快满的时候,每次自动增长的数值。可以是KB,MB,GB,TB,还有百分比。增长之后数据库最大值不会超过MAXSIZE数值。

来试一试构建数据库

CREATE DATABASE panda
ON
(
name='panda.mdf',
filename='e:\test\panda\panda.mdf',
size=100MB,
maxsize=1GB,
filegrowth=50MB
)
log on
(
name='panda_log.ldf',
filename='e:\test\panda\panda_log.ldf',
size=100MB,
maxsize=1GB,
filegrowth=50MB
)

在我们执行下 exec sp_helpdb panda (查看创建表的信息)

创建数据表的基本用法:CREATE TABLE <table name> (<column name> <data type> [[DEFAULT< constant expresstion>]|[INDENTITY[(seed,increment)[NONT FOR REPLICATION]]|[NULL|ISNULL]]][,.......]).

列太多无法可以写完,因为键和约束那些都可以写到表里面。下一篇博客就开始介绍约束和键。

试一试:

CREATE TABLE panda_test
(
ID int identity(1,1) primary key,
name nvarchar(20) not null,
age bit default(1) not null,
code int check(code>1) not null
)

运行下exec sp_help panda_test

ALTER 语句:

基本语法ALTER <object type> <object name>

alter database :

alter database panda
modify file
(
name='panda.mdf',
size=200MB,
maxSize=2GB
)

在执行一次exec sp_helpdb panda 得到下列结果,file 一定要name这个属性,告诉修改是那个文件。

Alter table:

alter table panda_test
alter column age int --修改age值(如果有键和约束是无法修改)
alter table panda_test
add test nvarchar(30) not null--添加值 alter table panda_test
drop column <column name>有约束无法删除。

运行,测试结果:exec sp_help panda_test

先写到这里,修改表还有很多。等下一篇博客在详细将修改,删除,添加表约束和键这些。

DROP: DROP <object type> <object name>删除对象,如:drop database <database name>,drop table <table name> ,drop view <view name>

SQL入门经典(四)之创建和修改数据表的更多相关文章

  1. SQL Server 创建和修改数据表

    一.CREATE语句(创建) 1.创建DataBase 1.CONTAINMENT SQL Server 2012 新功能 , 默认值是OFF .(太高级 书上也没有详细介绍). 2.ON ON用于两 ...

  2. SQL SERVER 2012 第五章 创建和修改数据表 の CREATE语句

    CREATE <object type> <object name> CREATE DATABASE <database name> 比较完整的语法列表: 日志文件 ...

  3. SQL SERVER 2012 第五章 创建和修改数据表 の SQL SERVER中的对象名

    [ServerName.[DataBaseName.[SchemeName.]]]ObjectName 服务器名,数据库名,模式名,对象名 其中模式是一个新出的坑爹的东西.

  4. sql 入门经典(第五版) Ryan Stephens 学习笔记 (第一,二,三,,四,五章)

    SQL - Structured  Query Language (结构化查询语言) 1/ SQL 命令的类型 : 数据定义语言: DDL 数据操作语言: DML 数据查询语言: DQL 数据控制语言 ...

  5. SQL入门经典(十) 之事务

    事务是什么?事务关键在与其原子性.原子性概念是指可以把一些事情当作一个执行单元来看待.从数据库角度看待.他是指应该全部执行或者全部不执行一条或多条语句的最小组合.当处理数据时候经常确保一件事发生另一件 ...

  6. 《SQL入门经典》总结

    <SQL入门经典>这本书从考试前就开了个头,一直到前两天才看完,拉的战线也够长的.放假来了,基本上什么内容都不记得了.好不容易看完了,就赶紧总结一下吧! 该书分为两大部分,第一部分是第1~ ...

  7. sql server2008中怎样用sql语句创建数据库和数据表

    这是简单用代码实现创建数据库和数据表的sql语句,如下: --调用系统数据库-- use master go /***防止你要创建的数据库同名,先把它删除掉****/ if Exists(select ...

  8. 数据库之mysql篇(3)—— mysql创建/修改数据表/操作表数据

    创建数据表:create table 数据表名 1.创建表规范 create table 表名( 列名   数据类型    是否为空   自动排序/默认值  主键/外键/唯一键, 列名   数据类型 ...

  9. 【spring boot】spring boot 2.0 项目中使用mysql驱动启动创建的mysql数据表,引擎是MyISAM,如何修改启动时创建数据表引擎为【spring boot 2.0】

    默认创建数据表使用的引擎是MyISAM 2018-05-14 14:16:37.283 INFO 7328 --- [ restartedMain] org.hibernate.dialect.Dia ...

随机推荐

  1. redis集群安装

    1.普通安装 安装环境 centos 6.8 1.安装必要包 yum install gcc yum -y install wget 2.下载解压 wget http://download.redis ...

  2. Lua 单例类

    function SingleTon:new() local store = nil return function(self) if store then return store end loca ...

  3. 整理分享C#通过user32.dll模拟物理按键操作的代码

    对系统模拟按键方面的知识和按键映射代码做了一下梳理,在这里分享出来,适用于开发自动操作工具和游戏外挂. 主代码: public const int KEYEVENTF_EXTENDEDKEY = 0x ...

  4. Linux 条件判断

    1. 按照文件类型判断 -b 文件 #判断文件是否存在,并且是设备文件 -c 文件 #判断文件是否存在,并且是字符设备文件 -d 目录 #判断目录是否存在,并且是否为目录(是目录返回真) -e 文件 ...

  5. Linux 内核通知链随笔【中】

    关于内核通知链不像Netlink那样,既可以用于内核与用户空间的通信,还能用于内核不同子系统之间的通信,通知链只能用于内核不同子系统之间的通信.那么内核通知链到底是怎么工作的?我们如何才能用好通知链? ...

  6. mysql主从不一致解决方法

    方法一:忽略错误后,继续同步 该方法适用于主从库数据相差不大,或者要求数据可以不完全统一的情况,数据要求不严格的情况 stop slave; #表示跳过一步错误,后面的数字可变 set global ...

  7. read函数返回值始终为1

    部分程序如下: while(count=read(fd_s,buf,512)>0)      printf("count=%d\n",count);      write(f ...

  8. ChartServices Dev图形封装

    .工具类ChartServices using System; using System.Data; using System.Drawing; using DevExpress.XtraCharts ...

  9. 微信公众账号开发之N个坑(二)

    上篇说到微信公众账号的几个坑,前面五个,已经说到菜单,宝宝继续往下赘述了.可惜,还不知道宝宝的宝宝到底是不是心疼宝宝呢,完了,我凌乱了... 回到正题,我们就不吐槽其他的了,上一篇说到微信的菜单了,那 ...

  10. MongoDB GridFS 对图片进行增删改

    using MongoDB.Bson; using MongoDB.Driver; using MongoDB.Driver.Builders; using MongoDB.Driver.GridFS ...